Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
ISO/IEC 29167-16 定义了椭圆曲线 Diffie-Hellman(ECDH)密钥协商协议,作为符合 ISO/IEC 18000 系列空中接口标准的 RFID 系统的一个密码套件。ECDH 使两方——RFID 读写器和标签——能够在不安全的信道上建立共享密钥,而无需交换各自的私钥。每一方生成一个临时或静态密钥对,交换公钥,然后使用自己的私钥和对方的公钥独立计算相同的共享密钥。
该标准区分了临时-临时(EE)模式和静态-静态(SS)模式。在 EE 模式下,双方每次会话都生成全新的密钥对,提供完美前向保密性(PFS):即使长期密钥被泄露,过去的会话密钥仍然安全。SS 模式牺牲了 PFS,但由于密钥生成仅在个性化期间发生一次,因此计算开销更低。
ISO/IEC 29167-16 规定的 ECDH 协议遵循三方消息交换。读写器首先发送”密钥协商请求”,其中包含其支持的曲线标识符及其临时公钥(或指示将使用静态密钥)。标签以其选择的曲线标识符及其临时公钥作为响应。双方然后计算共享密钥——即各自私钥与对方公钥点进行标量乘法所得点的 x 坐标。
从 ECDH 派生的原始共享密钥不会直接用作会话密钥。相反,标准指定了一个基于 HMAC-SHA-256 的密钥派生函数(KDF),该函数将共享密钥与交换的随机数和公钥一起处理,生成最终的会话密钥。这个 KDF 步骤确保即使意外生成了相同的 ECDH 共享密钥,每个会话也能产生唯一的密钥。
| 参数 | ECDHE-256 | ECDHE-384 | ECDHE-521 |
|---|---|---|---|
| 交换消息数 | 3(请求/响应/确认) | 3 | 3 |
| KDF 算法 | HMAC-SHA-256 | HMAC-SHA-384 | HMAC-SHA-512 |
| 会话密钥大小 | 128 位 | 192 位 | 256 位 |
| 完美前向保密 | 是(临时模式) | 是 | 是 |
| 标签端计算 | ~25 ms @ 1 MHz | ~60 ms @ 1 MHz | ~180 ms @ 1 MHz |
| 空中传输负载 | ~96 字节 | ~128 字节 | ~196 字节 |
在无源 RFID 标签上实现 ECDH 需要精心管理标签有限的计算资源。标量乘法运算主导了执行时间和功耗。硬件架构师通常实现一个专用的 ECC 加速器,使用在素域上运行的流水线 Montgomery 乘法器,并配备专用双端口 RAM 来存储中间投影坐标。
一个关键的实现细节是临时密钥的随机数生成。标准要求每个临时密钥对使用密码学质量的随机数生成器(RNG)生成。在 RFID 标签上这带来了挑战,因为传统的模拟熵源(环形振荡器、热噪声)在加电瞬态期间可能不可用。许多标签设计包含一个专用 RNG,该 RNG 在标签响应任何命令之前的初始功率稳定窗口期间进行种子植入。