是否应该要求初始化向量能够解密我的数据?

时间:2011-10-06 15:20:28

标签: encryption cryptography rijndaelmanaged

我正在使用RijndaelManaged来加密和解密数据。我可能误解了初始化向量的问题,但我发现如果在解密数据时将其设置为不同的值,除了前16个字符之外的所有字符仍然正确解密。这是预期的行为吗?

1 个答案:

答案 0 :(得分:3)

是。在CBC模式中,每个密文块用作下一个密文块的IV。使用有故障的IV将使第一个16字节块陷入混乱,但后续块将不受影响。这可能是一个有用的属性,因为它允许在故障块之后进行错误恢复,这在某些情况下很重要。它还说明了为什么没有必要保持IV秘密(与密钥不同!)。