2

我正在尝试使用 AES 进行加密/解密,然后我尝试了 CBC 和 ECB 模式,我从这三个模式中得到了相同的加密输出!这是怎么回事?
这可能没有错,但我只是不知道会发生什么。如果它们都产生相同的密码,那么拥有模式有什么意义?是时间复杂度还是性能复杂度?

你能解释一下 AES 和它的密码模式之间的区别吗?什么是默认密码模式?或者如果你能给我任何参考因为 MSDN 不够清楚

谢谢你

4

1 回答 1

5

当您加密大于一个块(AES 中为 128 位)的数据时,CBC 和 ECB 模式是使用对称加密算法的方法。因此,如果您要加密适合一个块的数据,那么 CBC 和 ECB 模式将产生相同的密文(假设您在使用 CBC 模式时使用空 IV)。如果您加密的数据大于一个块,或者您使用的 IV 不为空,并且您看到相同数据的 CBC 和 ECB 加密结果相同,那么您的代码做错了。

这在 Wikipedia 条目中得到了很好的解释。

http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation

于 2011-12-02T14:29:01.087 回答