Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 29167-14 规定了在输出反馈(OFB)模式下使用高级加密标准作为 RFID 安全服务的密码套件。29167-10(AES-128)在认证时使用 CBC 模式,在加密时使用 CFB 模式,而 29167-14 采用 AES OFB 模式,将 AES 分组密码转换为同步流密码。在 OFB 模式下,密钥流通过重复加密前一次加密输出生成:KSi = EK(KSi-1),其中 EK 是密钥 K 下的 AES-128 加密,KS0 是初始化向量(IV)。然后明文与密钥流进行异或以产生密文。
该标准规定了两种密钥大小:AES-128(推荐)和 AES-256(可选,用于更高安全性的应用)。两者都操作 128 位数据块,但 AES-256 变体使用 14 轮而非 10 轮。密钥流从初始 IV 开始连续生成,在单个(密钥,IV)对下可加密的最大块数为 2^32 块,超过此限制必须建立新的 IV。此限制防止密钥流因 128 位分组密码输出的生日界限而进入危害安全的状态。
29167-14 中定义的 OFB 模式认证协议建立在与 29167-10 相同的三次传递 SMP 结构上,但在密钥流管理方面存在重要差异。在 Authenticate 命令期间,读写器向标签发送 128 位 IV。标签使用此 IV 结合其存储的密钥来计算初始密钥流块。通过交换加密的挑战值实现双向认证:标签使用第一个密钥流块加密其随机挑战,读写器验证该挑战并使用第二个密钥流块响应其自己的加密挑战。
| 特性 | 29167-10(AES CFB) | 29167-14(AES OFB) | 影响 |
|---|---|---|---|
| 模式类型 | 分组密码反馈(CFB) | 流密码(OFB) | OFB 可预计算密钥流 |
| 错误传播 | 1 位错误 → 128 位块错误 + 下个块中的位错误 | 1 位错误 → 仅 1 位错误 | OFB 更适合噪声信道 |
| 预计算 | 不可行(需要密文输入) | 完全可预计算密钥流 | OFB 实现更低延迟 |
| IV 要求 | 每会话唯一 IV | 每会话唯一 IV(严格) | 实践中要求相同 |
| 每(密钥,IV)块限制 | 2^32 块 | 2^32 块 | 相同的生日界限适用 |
密钥流同步通过 IV 计数器机制进行管理。读写器和标签都维护一个 32 位块计数器,附加到 IV 以生成唯一的密钥流段。每次加密事务后,计数器递增。如果计数器回绕(经过 2^32 个块,约 68 GB 加密数据后),则需要新的 IV 交换。对于每次事务加密 16–128 字节的典型 RFID 应用,该计数器在需要重新密钥前可在最大数据速率下提供超过 1700 万次事务。
OFB 模式的安全性关键依赖于 IV 的唯一性。如果两个消息在相同的(密钥,IV)对下加密,密钥流相同,可以通过对两个密文进行异或来抵消密钥流,从而揭示明文的异或结果。该标准通过要求读写器使用单调计数器或至少 128 位熵的硬件随机数生成器生成 IV 来解决此问题。标签应将最后使用的 IV 存储到非易失性存储器中,并拒绝具有重复 IV 的 Authenticate 命令。
在无源标签上的 AES OFB 硬件实现与其在 29167-10 中规定的 AES-128 核心共享大多数数据路径。唯一额外需要的逻辑是一个 128 位寄存器用于保存反馈状态和一个多路选择器用于在 IV(初始化)和先前输出(后续块)之间选择。相比独立 AES-128 加密,OFB 模式的总面积开销约为 150 GE(用于反馈寄存器和控制逻辑),使其成为现有 AES 核心的低成本附加功能。