【发布时间】:2017-02-04 04:05:00
【问题描述】:
我正在尝试加密 string 并使用 AES 对其进行解密。加密工作正常,但解密时出现The input data is not a complete block 错误。我的填充有问题吗?
var aes = System.Security.Cryptography.Aes.Create();
aes.GenerateKey();
aes.GenerateIV();
aes.Mode = CipherMode.CBC;
aes.Padding = PaddingMode.PKCS7;
var desEncrypter = aes.CreateEncryptor();
var buffer = System.Text.ASCIIEncoding.ASCII.GetBytes(text);
finalV = Convert.ToBase64String(desEncrypter.TransformFinalBlock(buffer, 0, buffer.Length));
var desDecrypter = aes.CreateDecryptor();
var buff = System.Text.Encoding.ASCII.GetBytes(finalV);
var origValue = desDecrypter.TransformFinalBlock(buff , 0, buff .Length);
【问题讨论】:
标签: c# encryption aes