系统使用 AES-GCM 保护接口报文。接收方拥有正确密钥和 Nonce,但解密时认证标签校验失败。安全的处理方式是()。
GCM 属于认证加密模式,认证标签用于校验密文及附加认证数据是否被篡改。标签验证失败时,接收方不能信任解密结果,应当把整个报文视为认证失败并丢弃。
选项分析
错误。可读不代表真实,攻击者可能通过篡改诱导出具有业务含义的数据。
正确。标签失败说明报文未通过完整性和真实性校验,应拒绝其明文。
错误。认证标签不是密钥,不能用于再次解密。
错误。仅告警但继续处理,会绕过认证加密提供的核心保护。
本题为什么容易错
有些实现先得到一段临时明文再报告标签失败,于是容易误以为“明文已经解出来,可以凑合用”。安全接口必须把标签成功视为释放明文的前置条件。
简短答案
AES-GCM 解密时认证标签校验失败意味着什么,正确答案是 B(把报文判为未通过认证并拒绝使用其明文)。GCM 属于认证加密模式,认证标签用于校验密文及附加认证数据是否被篡改。标签验证失败时,接收方不能信任解密结果,应当把整个报文视为认证失败并丢弃。
易混淆概念对比表
| 概念 | 本题判断 | 区别要点 | 记忆提示 |
|---|---|---|---|
| 忽略标签,只要能解出可读文本就继续处理 | 本题干扰项 | 错误。可读不代表真实,攻击者可能通过篡改诱导出具有业务含义的数据。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
| 把报文判为未通过认证并拒绝使用其明文 | 本题正确答案 | 正确。标签失败说明报文未通过完整性和真实性校验,应拒绝其明文。 | 看到题干核心场景时优先联想到它 |
| 把认证标签作为新的密钥再次解密 | 本题干扰项 | 错误。认证标签不是密钥,不能用于再次解密。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
| 仅记录告警,仍把明文交给业务系统 | 本题干扰项 | 错误。仅告警但继续处理,会绕过认证加密提供的核心保护。 | 看到该词不要急着选,先判断是否真正解决题干问题 |
本题易混淆选项怎么区分
- 忽略标签,只要能解出可读文本就继续处理:错误。可读不代表真实,攻击者可能通过篡改诱导出具有业务含义的数据。
- 把认证标签作为新的密钥再次解密:错误。认证标签不是密钥,不能用于再次解密。
- 仅记录告警,仍把明文交给业务系统:错误。仅告警但继续处理,会绕过认证加密提供的核心保护。
知识点详解
AES-GCM 把计数器模式加密与基于有限域运算的认证机制结合起来,可同时保护密文和不加密但需要防篡改的 AAD。接收方必须使用相同密钥、Nonce 和 AAD 验证标签。尤其要避免在同一密钥下重复 Nonce,否则不仅可能泄露明文关系,还可能危及认证能力。
备考速记
GCM 标签不过,明文一律不用。
AES-GCM 在数据完整性场景中的作用
AES-GCM在本题中的核心价值,是解决“系统使用 AES-GCM 保护接口报文。接收方拥有正确密钥和 Nonce,但解密时认证标签校验失败。安全的处理方式是()”这个场景问题。复习时不要只背选项名称,还要理解它为什么适用于该场景,以及它能解决哪类安全、流程或管理问题。
同类题怎么考
- 判断认证标签失败后的正确处理。
- 区分加密、MAC 与认证加密分别提供哪些安全属性。
AES-GCM 在信息安全工程师软考中的考法
软考选择题通常不会只考概念定义,还会把AES-GCM放到数据完整性场景中,要求判断它的作用、适用范围或与相近概念的区别。遇到这类题时,先抓住题干中的业务场景,再看哪个选项最能解决该场景下的核心问题。
解题思路
这道题抓住一句工程原则就够了:先认证,再使用。AES-GCM 不只是把内容变得看不懂,还会给报文附上一枚与密文、Nonce 和附加数据有关的认证标签。标签对不上,可能是传输损坏、密文被改、附加数据不一致,也可能是密钥或 Nonce 用错。无论是哪一种,都没有理由让业务继续消费这段数据。
考点定位
只会“解密”不等于报文可信。AEAD 模式必须先通过认证标签校验,失败时不得向业务层释放明文。
易错提醒
- 把 GCM 当成只提供机密性的普通加密模式。
- 认为标签失败只代表网络偶发错误,与安全无关。
- 重复使用同一密钥下的 Nonce,破坏 GCM 的安全前提。
备考提示
- 把 AES-GCM、ChaCha20-Poly1305 统一归到 AEAD:加密和认证一起完成。
- 复习时同时记住 Nonce 唯一性、认证标签和 AAD 三个关键词。
你可能还想了解
- AES-GCM 和 AES-CBC 有什么区别?
- GCM 的 Nonce 为什么不能重复?
- AAD 不加密为什么还能被认证?
本文小结
AES-GCM的标签用于确认密文和附加数据未被篡改。标签校验失败时,即使程序内部产生了临时明文,也必须整体拒绝,不能把未经认证的数据交给业务。