Skip to content

模型Model

认证加密

Authenticated encryption · AE

同时提供机密性与密文完整性的对称加密接口和安全目标。

形式陈述 ​

本页固定 nonce-respecting AEAD 模型。对密钥 K,接口为

C←EncK(N,A,M),M′←DecK(N,A,C)∈M∪{⊥}.

这里的接口是对称加密的 nonce 与关联数据扩展;定义要求保密和密文完整性两个实验成立,并不要求内部另有一个独立 MAC 模块。消息认证码是下面 Encrypt-then-MAC 构造实际使用的工具。

公开 nonce N 标识同一密钥下的一次加密调用;关联数据 A 不加密,却和正文一起受认证。正确性要求每个合法 (N,A,M) 经诚实加密后都解出 M,或只以规范明确允许的可忽略概率失败。任何标签、格式或字段验证失败都返回 ⊥,未经认证的候选明文不得交给调用方。

机密性采用 nonce-respecting left-or-right 实验。挑战者采样 K 和 bit b,允许 PPT 对手自适应查询等长消息对 (Ni,Ai,Mi,0,Mi,1),并返回

Ci←EncK(Ni,Ai,Mi,b).

对手必须保证所有加密查询的 Ni 两两不同;Ai 可以重复,也可以由先前密文决定。它最后输出 b′,安全性要求 |2Pr[b′=b]−1| 可忽略。等长限制只排除长度这一显然泄漏;nonce、关联数据、密文长度以及查询次数仍是实验可见信息。

密文完整性实验重新采样 K,给对手同一个 nonce-respecting 加密 oracle,并记录返回集合

T={(Ni,Ai,Ci)}.

对手输出 (N∗,A∗,C∗)。仅当该三元组不在 T 中且 DecK(N∗,A∗,C∗)≠⊥ 时,才算一次新鲜伪造。把 A 或 N 改为新值也会形成新三元组,所以完整性必须检测正文密文与这些公开字段之间的绑定。若允许多次验证尝试,应改用相应多尝试游戏并把查询次数写入优势,而不能把这里的一次输出定义无声复用。

上述结论以同一密钥下 nonce 不重复为前提。nonce-misuse resistance 明确允许重复 nonce,并接受另一种泄漏与安全界;它不是普通 AEAD 定义的别名。重放防护也不由 INT-CTXT 自动提供,因为原样重送 T 中的旧元组不算新鲜伪造,协议仍需序号和接收状态。把 AEAD 用作DEM 时,还要固定会话密钥只保护一条正文还是多条记录。

直觉

认证加密把机密性与完整性绑定为一个接口:接收方既要让窃听者看不懂内容,也要拒绝任何未经授权的修改;解密要么返回唯一明文,要么明确失败,不应把未经验证的明文交给上层。associated data 不加密,却纳入认证,适合把协议版本、序号和路由头等公开头部绑定到密文。nonce 通常无需保密,但其唯一性或不可重复条件是方案安全假设的一部分,尤其对 GCM、ChaCha20–Poly1305 等常见 AEAD。

认证加密的恢复与拒绝分支
例子与边界

Encrypt-then-MAC 的典型流程是先加密明文,再对 nonce、associated data 与密文整体计算标签;接收端先验证标签,成功后才解密。TLS 记录可把头部作为 associated data,使攻击者不能在不被检测的情况下改长度或类型。混合加密还应把 KEM 封装、算法套件和协议上下文纳入 associated data,防止正文被重新绑定到另一封装或协议阶段。

先加密后 MAC 只有在使用独立密钥并正确覆盖所需字段时才可证明安全,任意“加密+校验和”并不等价;仅“加密后再做普通哈希”没有密钥,攻击者可重算标签。AES-GCM 在同一密钥下重复 nonce 会复用计数器流、泄露明文异或并可能破坏认证,ChaCha20-Poly1305 同样要求正确管理 nonce。AEAD 本身也不阻止重放,协议仍需用序号或状态拒绝旧记录。

Encrypt-then-MAC 的标签条件 ​

一个充分条件是:底层加密满足相应 nonce-respecting 机密性,MAC 满足强不可伪造,两个密钥独立生成,并对 Encode(N,A,c) 的无歧义完整编码认证;密文输出为 (c,τ)。新鲜且被接受的 (N,A,c,τ) 必须对应 MAC 从未返回过的新消息—标签对,因而直接给出强 MAC 伪造。采用每条消息只有一个有效标签的确定性 MAC 时,普通 EUF-CMA 已足以排除这种新对。Boneh–Shoup 定理9.2使用的 MAC 游戏正是新消息—标签对意义下的强定义。

普通 EUF-CMA 单独不够。由安全 MAC 的标签 τ 构造新标签 (τ,b),诚实生成时总取 b=0,验证时忽略 b。为新消息伪造仍需破解原 MAC;但攻击者把一份 EtM 密文的标签末位从 0 改为 1,就得到一个不同且仍被接受的完整密文元组,以概率 1 破坏 INT-CTXT。这个反例没有解出明文,也没有伪造新 MAC 消息,缺失的恰是强新鲜性条件。

推论与应用

AEAD 组合 对称加密 与 消息认证码 的目标,比仅满足 选择明文安全 的加密多提供主动篡改保护,是 TLS、VPN、磁盘和消息协议的默认对称保护接口。KEM–DEM 混合加密通常选择 AEAD 作为 DEM,并把封装与上下文一起认证;nonce 管理、密钥使用次数与轮换都属于组合条件,而不是 KEM 自动提供的性质。

多记录会话需要在本页游戏之外兑现状态前提。AEAD记录层固定方向、会话、版本和交付门;nonce预留与重启证明同密钥调用不重复nonce;认证重放窗在认证后提交接收位图。它们保留并使用本页的nonce-respecting与新鲜伪造定义,不把原样重放重新解释为INT-CTXT攻击。

参考资料
  • David McGrew, RFC 5116: An Interface and Algorithms for Authenticated Encryption, 2008,AEAD 输入、输出、nonce 与 associated data 的规范接口。
  • Phillip Rogaway, “Authenticated-Encryption with Associated-Data,” ACM CCS, 2002,AEAD 安全目标与 associated data 的原始形式化来源。
  • Phillip Rogaway, “Nonce-Based Symmetric Encryption,” FSE, 2004,nonce-respecting 对手与 nonce-based encryption 定义。
  • Dan Boneh and Victor Shoup, A Graduate Course in Applied Cryptography, version 0.6, 2023,Attack Game6.1、Theorem9.2与§9.4.1:强 MAC 新鲜性与 Encrypt-then-MAC 组合;nonce/关联数据仍按上面的明确接口处理。
关系图谱12 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
分类位置

上位 / 更一般

下位 / 直接特例

暂未标注直接特例。

类型化关系

使用的工具

被这些条目使用