2

我使用带有Rijndael类的 AES 加密来加密密码,然后将其存储在配置文件中。

我知道什么是初始化向量。我已经阅读了关于 SO 的主题(例如我应该使用初始化向量 (IV) 和我的加密吗?)和wikipedia上的文章。

但是,有一点我不明白:由于您需要在解密中使用的 IV 与在加密期间使用的 IV 相同,因此您被迫将 IV 与加密文本一起存储。那么为每个加密使用唯一的 IV 有什么好处呢?如果攻击者获得加密文本,他也将获得 IV。

4

1 回答 1

7

假设您在两个地方有相同的消息,都使用相同的密钥加密。

攻击者(不知何故)找出其中一条消息的明文是什么。如果您在两种情况下都使用了相同的 IV,则攻击者也知道另一条消息的明文,因为密文将是相同的。如果您使用了不同的 IV(并且攻击者没有密钥),那么第二条消息的内容仍然是安全的。

于 2011-11-02T15:58:33.547 回答