IV (Initialization Vector)
IV(初始化向量)是分组密码模式中引入随机性的输入,使相同明文在不同加密中产生不同密文。
用途
防止相同明文块模式泄露,提供语义安全(semantic security)。
机制
IV 长度通常等于分组大小(如 AES 用 128 位 IV)。CBC 要求 IV 不可预测(随机);CTR/GCM 要求 IV 唯一(可用计数器)。IV 无需保密,随密文传输。GCM 的 IV 常称 nonce。
用例
- AES-CBC 随机 IV
- AES-GCM 唯一 nonce
- 磁盘加密 IV 存储
- 密文标识与去重
示例
- 输入
AES-CBC IV=random 128 bits输出different result on every encryptionThe IV is transmitted with the ciphertext
常见错误
- A fixed or predictable IV enables chosen-plaintext attacks
- Use a random IV for CBC and a unique nonce for CTR/GCM
相关词条
Nonce
Nonce(number used once)是加密中仅使用一次的值,与 IV 类似但强调唯一性而非随机性,常用于流密码与 AEAD。 词汇表
CBC (Cipher Block Chaining)
CBC 模式将前块密文与当前明文异或后再加密,使相同明文块产生不同密文,需随机 IV,但不提供完整性认证。 词汇表
GCM (Galois/Counter Mode)
GCM 是结合 CTR 加密与 GHASH 认证的 AEAD 模式,同时提供机密性与完整性,是 TLS 1.2/1.3 的首选模式。 词汇表
Mode of Operation
工作模式是分组密码处理任意长度数据的方案,定义如何将多块明文链接加密,常见有 ECB、CBC、CTR、GCM 等。 词汇表