RFC 8463 DKIM 的 ed25519 签名:更短密钥、更强抗量子前景

译自 IETF RFC 8463《A New Cryptographic Signature Method for DKIM》· 面向邮件安全与密钥管理

概述

DKIM(RFC 6376)长期以 RSA 为唯一签名算法。随着 RSA 1024 位被认定不安全、2048 位密钥体积与签名开销变大,IETF 在 RFC 8463 中引入 Ed25519 作为第二种 DKIM 签名算法。Ed25519 是 Edwards 曲线上的 Edwards-curve Digital Signature Algorithm(EdDSA),以"小、快、强"著称。

背景:密钥强度的演进

RFC 8301 已禁止 DKIM 使用 SHA-1、并要求 RSA 密钥不少于 1024 位(推荐 2048)。但 RSA 2048 的公钥约 270 字节、签名慢,对大规模出站签名是负担。Ed25519 用 256 位公钥(仅 32 字节)、签名验证极快,且基于被广泛审计算法的曲线,天然具备更好的"抗量子"前景(相比 RSA)。

机制

在 DKIM 公钥记录(TXT selector._domainkey)中,用 k=ed25519 声明算法;签名头 bh/b 的计算方式与 RSA 相同,只是底层原语换成 Ed25519。哈希仍为 SHA-256。实际部署推荐双签名:同一邮件同时附 RSA 与 Ed25519 两段 DKIM-Signature,确保老验证器(只认 RSA)与新验证器(认 Ed25519)都能通过。

兼容性与迁移

与密钥轮换管理的衔接

无论 RSA 还是 Ed25519,DKIM 都依赖"选择器(selector)轮换"来控制泄露影响半径。建议为每个算法单独选择器、定期滚动、旧密钥保留一个轮换周期(见 DKIM 密钥轮换管理实践)。昆仑邮件系统在签名策略上同时支持 RSA 与 Ed25519,便于平滑升级。

参考文献

  1. RFC 8463 — A New Cryptographic Signature Method for DKIM
  2. RFC 8301 — Cryptographic Algorithm and Key Size Updates to DKIM
  3. RFC 6376 — DomainKeys Identified Mail (DKIM) Signatures
  4. RFC 8032 — Edwards-Curve Digital Signature Algorithm (EdDSA)