乱码说明:
aes在解密后,用byte[]进行接收,需要使用new String();进行转换为字符。只需要指定new String()编码格式便可以解决解密时乱码问题。
接下来我们看下2块解密时部分代码:
1.将aes得到结果转变为字符,不设置编码格式
new String(aesDecrypt(Base64.decode(ciphertext),Base64.decode(key)))
2.将aes得到结果转变为字符,设置编码格式
new String(aesDecrypt(Base64.decode(ciphertext),Base64.decode(key)),"UTF-8");
以上2块代码,在控制台显示都正常。但在tomcat的不同版本或tomcat不同的设置,代码1会出现乱码,代码2没有遇到乱码。所以要习惯性使用代码2,进行编码,防止乱码。
原文链接:https://blog.youkuaiyun.com/u012012240/article/details/54090958
补充说明:
使用CryptoJS中的AES实现加解密(前端后端)这篇问中有关乱码问题处理的,非常简单
本文阐述了在AES解密过程中出现乱码的原因,并提供了解决方案。通过对比两种不同的字符转换方式,强调了在解密后指定正确的编码格式(如UTF-8)的重要性,以避免不同环境下出现乱码的问题。

被折叠的 条评论
为什么被折叠?



