1

我正在使用System.Security.Cryptography.RijndaelManagedC#(.NET 3.5) 中的类通过设置进行加密:

RijndaelManaged AesCrypto = new RijndaelManaged();
AesCrypto.BlockSize = 128;
AesCrypto.Mode = CipherMode.CBC;
CryptoStream CryptStream = new CryptoStream(memStream1,
    AesCrypto.CreateEncryptor(EncryptionKey1, EncryptionIV1),
                    CryptoStreamMode.Write);

并带有 256 位密钥和 IV。我相信这会导致 AES256。我对吗?

如果我使用System.Security.Cryptography.AesManaged类,会有什么不同吗?

另外,我在想,我们信任微软的 AES 实现,这可以验证,还是应该编写自己的 AES 实现?

4

1 回答 1

1

AesManaged关于和之间的区别RijndaelManaged

AES 算法本质上是具有固定块大小和迭代次数的 Rijndael 对称算法。此类的功能与 RijndaelManaged 类相同,但将块限制为 128 位并且不允许反馈模式。

取自 MSDN,这里是http://msdn.microsoft.com/en-us/library/system.security.cryptography.aesmanaged.aspx

于 2013-04-07T15:28:19.337 回答