0
在我的程序中,我使用三重DES算法加密和解密.PNG文件。它加密和解密,但.PNG中的一些字符被這些字符替換: ï奇怪的字符使用加密
我認爲這是一個Unicode錯誤,但我不知道發生了什麼。代碼如下:
byte[] encrypted_data = UTF8Encoding.UTF8.GetBytes(file_data);
TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
tdes.Key = key;
tdes.Mode = CipherMode.ECB;
tdes.Padding = PaddingMode.PKCS7;
ICryptoTransform cTransform = tdes.CreateEncryptor();
byte[] resultArray =
cTransform.TransformFinalBlock(encrypted_data, 0, encrypted_data.Length);
tdes.Clear();
return Convert.ToBase64String(resultArray, 0, resultArray.Length);
你爲什麼要用文本方法處理二進制數據? –
爲什麼你閱讀PNG數據爲UTF-8?它是二元的。 – Lazarus