某系统使用同一把 AES 密钥以 CBC 模式加密多条结构相近的业务报文,但为了便于实现,每次都使用相同的初始化向量 IV。攻击者即使不知道密钥,也可能观察到()。
CBC 的首个密文分组可写成 C1=E(K, P1⊕IV)。同一密钥下重复使用固定 IV 时,只要两条报文的首个明文分组相同,送入分组密码的输入也相同,因此首个密文分组会相同,报文模式和重复关系可能泄露。固定 IV 不等于立即泄露密钥,但会破坏 CBC 加密所需的随机化效果。
选项分析
正确。同一密钥、同一 IV、相同首个明文分组会得到相同首个密文分组,从而泄露重复模式。
错误。重复 IV 是严重的使用方式错误,但不能据此断言攻击者可直接恢复 AES 密钥。
错误。传统 CBC 加密本身不提供完整性保护,但固定 IV 不会让算法自动拒绝解密;完整性通常还需认证机制保障。
错误。密文长度由分组大小、填充和封装格式等决定,不会因固定 IV 缩短一半。
本题为什么容易错
容易错在把“泄露明文模式”夸大成“密钥立刻泄露”。安全题常考影响边界:配置错误可能削弱机密性,但不能把后果无限放大。
简短答案
AES-CBC 使用固定 IV 会带来什么安全问题,正确答案是 A(相同的首个明文分组会产生相同的首个密文分组)。CBC 的首个密文分组可写成 C1=E(K, P1⊕IV)。同一密钥下重复使用固定 IV 时,只要两条报文的首个明文分组相同,送入分组密码的输入也相同,因此首个密文分组会相同,报文模式和重复关系可能泄露。固定 IV 不等于立即泄露密钥,但会破坏 CBC 加密所需的随机化效果。
易混淆概念对比表
| 概念 | 本题判断 | 区别要点 | 记忆提示 |
|---|---|---|---|
| 相同的首个明文分组会产生相同的首个密文分组 | 本题正确答案 | 正确。同一密钥、同一 IV、相同首个明文分组会得到相同首个密文分组,从而泄露重复模式。 | 看到题干核心场景时优先联想到它 |
| 仅凭任意一段密文就能直接还原 AES 密钥 | 本题干扰项 | 错误。重复 IV 是严重的使用方式错误,但不能据此断言攻击者可直接恢复 AES 密钥。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
| CBC 模式自动失去全部完整性校验能力并拒绝解密 | 本题干扰项 | 错误。传统 CBC 加密本身不提供完整性保护,但固定 IV 不会让算法自动拒绝解密;完整性通常还需认证机制保障。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
| 密文长度一定缩短为原明文的一半 | 本题干扰项 | 错误。密文长度由分组大小、填充和封装格式等决定,不会因固定 IV 缩短一半。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
本题易混淆选项怎么区分
- 仅凭任意一段密文就能直接还原 AES 密钥:错误。重复 IV 是严重的使用方式错误,但不能据此断言攻击者可直接恢复 AES 密钥。
- CBC 模式自动失去全部完整性校验能力并拒绝解密:错误。传统 CBC 加密本身不提供完整性保护,但固定 IV 不会让算法自动拒绝解密;完整性通常还需认证机制保障。
- 密文长度一定缩短为原明文的一半:错误。密文长度由分组大小、填充和封装格式等决定,不会因固定 IV 缩短一半。
知识点详解
CBC 加密第一个分组时,会先将首个明文分组与 IV 异或,再进行分组加密。IV 的作用之一是让相同明文在不同加密操作中产生不同密文。IV 通常可以随密文公开传输,但必须按所用协议和密码库的要求生成;对 CBC 而言,重复或可预测的 IV 都可能带来风险。另一方面,CBC 只解决加密变换问题,并不天然提供消息完整性。现代系统通常优先选用 AES-GCM 等认证加密模式,同时严格遵守 nonce 不重复等使用约束。
备考速记
IV 可以公开,但不能随便固定;同钥同 IV,相同开头会留下相同痕迹。
AES-CBC 在分组密码模式场景中的作用
AES-CBC在本题中的核心价值,是解决“某系统使用同一把 AES 密钥以 CBC 模式加密多条结构相近的业务报文,但为了便于实现,每次都使用相同的初始化向量 IV。攻击者即使不知道密钥,也可能观察到()”这个场景问题。复习时不要只背选项名称,还要理解它为什么适用于该场景,以及它能解决哪类安全、流程或管理问题。
同类题怎么考
- 判断 CBC 固定 IV 会泄露哪类信息。
- 区分 IV、nonce、盐值和密钥各自解决的问题。
- 在机密性、完整性、认证性几种安全属性中判断某项措施的作用。
AES-CBC 在信息安全工程师软考中的考法
软考选择题通常不会只考概念定义,还会把AES-CBC放到分组密码模式场景中,要求判断它的作用、适用范围或与相近概念的区别。遇到这类题时,先抓住题干中的业务场景,再看哪个选项最能解决该场景下的核心问题。
解题思路
判断这类题,别先盯着“AES 是否被破解”,先看加密模式怎样处理第一个分组。CBC 在首块明文前异或 IV;IV 固定以后,相同开头就会留下相同密文开头。攻击者未必看得懂内容,却能看出两条报文可能采用了相同模板。
考点定位
CBC 模式下的 IV 不要求保密,但同一密钥加密多条消息时应避免重复,并按方案要求生成不可预测的 IV。
易错提醒
- 把 IV 当成必须长期保密的第二把密钥。
- 认为只要算法名称是 AES,IV 如何生成都不影响安全性。
- 把加密与完整性认证混为一谈,误以为 CBC 会自动发现密文被篡改。
备考提示
- 复习分组密码模式时,分别记住 ECB、CBC、CTR/GCM 对随机数或 nonce 的要求。
- 工程中优先使用经过审查的认证加密方案和库,不要自行拼接加密、填充与完整性校验流程。
你可能还想了解
- AES-CBC 的 IV 为什么不能固定使用?
- 初始化向量 IV 需要保密吗?
- IV、nonce 和密码盐值有什么区别?
- CBC 模式为什么还需要完整性保护?
本文小结
CBC 用 IV 随机化首个明文分组。同一密钥反复使用固定 IV 时,相同的明文开头会产生相同的密文开头,攻击者因此能观察到重复模式。IV 不必作为秘密保存,但生成与唯一性要求不能省略。