2009-08-04 93 views
10

我觉得区别因素是什么时候我会选择通过AesManaged或RijndaelManaged的AesCryptoServiceProvider?

  • AesCryptoServiceProvider是符合FIPS
  • AesManaged是跨平台的,需要.NET 3.0
  • RijndaelManaged的基于.NET 2.0运行时,需要限制块大小

是对的吗?

+0

[为什么RijndaelManaged的和AesCryptoServiceProvider返回不同的结果?](http://stackoverflow.com/questions/957388/why-are-rijndaelmanaged-and-aescryptoserviceprovider-returning-different-results) – 2015-05-12 14:04:24

回答

2

AesManaged documentation指出

“AES算法在本质上是Rijndael的对称算法以固定的块大小和迭代计数,这个类的功能相同的方式RijndaelManaged类但限制块为128位和不允许反馈模式

这将暗示其使用ECB(电子密码本)模式。这可能是加密数据的一个重大弱点,因为它意味着相同的纯文本数据块将导致相同的密码输出块。


编辑:(作为校正)
文档为Mode属性指示模式INFACT默认为CBC(其容易混淆的是反馈模式),但不能设置到CFB或OFB(密码反馈/输出反馈)

+2

否可能重复 - 这并不意味着它只对欧洲央行有用。知道微软文档风格,如果实际上AES只能用于ECBB,则文档会明确声明。 (这不是“食谱”,它的“码本”)。 AES还支持其他模式,包括CBC。 – Cheeso 2009-08-04 17:20:24

相关问题