DES加密 中文乱码

Python018

DES加密 中文乱码,第1张

读取的时候使用字节流,加密之后保存到另一个文件也使用字节写进去,解密的时候字节流出来解了之后然后将字节数组使用new String(byte[])来生成String应该就不会出问题了。

一般情况下,加密结果可以用二进制,

十六进制

字符三种形式反映。

你所说的

乱码

就是字符这种形式。

你的明文应该是中文字符吧?

你可以简单想象一下,一个文字是由两个字符组成的,对应ASCII码,加密后生成明文同样也是ASCII码转化成字符。因此两个字符有可能构成非中文的情况,也就是你所说的乱码

如果密钥一样的密文却不一样,那感觉可能是编码问题。

你 Java 编码的是 GB2312、C# 编码用的 Encoding.Default,不知道这个 Default 究竟是 UTF-8 啊 ASCII 啊 Unicode 啊还是 GB2312 啊,编码不一致得到的密文肯定不一样。