尝试使用AES加密/解密。进度== null;

时间:2011-11-03 18:29:33

标签: c# encryption aes

编辑。

我想我在加密/解密方法中创建正确的输入时遇到了问题:这些代码行可以解决这个问题:

        string encrypted = en.Encrypt(stringBuilder.ToString(), "username", "password");
        string decrypted = en.Decrypt(encrypted, "username", "password");

        mainWindow.ChangeTextBox = encrypted + Environment.NewLine + decrypted;

我正在玩弄并试图弄清楚使用AES如何加密/解密。我指的是article(非常复制和粘贴:(试图学习)。

他们给了我完整的加密/解密方法,我试图修改它们。我试图传递一个由ArrayList创建的条目列表,然后与字符串构建器绑定。看起来我能够加密数据,但解密会导致错误:

Length of the data to decrypt is invalid.

与代码一致:

ByteCount = CryptoStream.Read(PlainTextBytes, 0, PlainTextBytes.Length);

如何实现此代码对我的程序有用并正常工作?

问候。

2 个答案:

答案 0 :(得分:1)

我是否正确它导致空字符串或空字符串作为明文? ;-)
"lol1"无法解密,因为它不是有效的密文长度(填充!) 并不是说没有任何意义。

答案 1 :(得分:1)

我没有仔细查看代码,但似乎调用EncryptDecrypt的参数顺序与方法的定义不匹配。在对这些方法的调用中,您似乎有用户名,密码,plain / cyphertext ;而这些方法的签名是 plain / cyphertext,password,username