Let's Encrypt 迈向后量子加密未来
速览
数字证书权威机构 Let's Encrypt 正在积极规划向抗量子密码算法的迁移路径。这一举措旨在确保互联网基础设施在量子计算机具备足够算力后,仍能维持数据通信的安全性与完整性。此举标志着全球网络安全防御体系向应对量子威胁迈出了关键一步。
AI 深度解读
Let's Encrypt 的后量子未来:Merkle Tree Certificates 的深度解读
背景
长期以来,关于后量子密码学(Post-Quantum Cryptography, PQC)的讨论主要集中在加密(Encryption)领域。其逻辑很直接:攻击者今天截获的加密流量,可能在几年后量子计算机成熟时被解密。相比之下,TLS 中用于验证服务器身份的认证(Authentication)部分曾被视为紧迫性较低的问题。因为量子计算机需要实时伪造签名,而非事后解密,所以认证安全的威胁主要取决于是否存在“密码学相关量子计算机”(CRQC)。
然而,这种安全感正在逐渐消退。全球主要机构和科技巨头正在加速向后量子算法过渡:
- 美国:NSA 的 CNSA 2.0 套件自 2022 年起指导国家安全系统在 2030-2035 年间转向后量子算法;NIST 的过渡指南草案规定,2030 年后弃用 RSA-2048 和 P-256,2035 年后禁止使用。
- 欧盟:路线图目标是在 2030 年底前覆盖高风险系统,2035 年实现广泛迁移。
- 科技巨头:Google 宣布将在 2029 年前完成服务迁移,Cloudflare 也做出了类似承诺。
- 基础设施:Go 1.27 标准库已加入 NIST 标准化的后量子签名方案 ML-DSA,表明后量子签名正在成为实用基础设施。
对于 Web PKI(公钥基础设施)而言,长期密钥(如根证书颁发机构、代码签名密钥)是极具价值的目标,且新技术的大规模采用需要数年甚至更长时间,因此必须尽早开始工作。
核心内容
Let's Encrypt 宣布致力于构建一个后量子安全的 Web PKI,其规划的核心路径是 Merkle Tree Certificates(MTCs,默克尔树证书)。这是一种新方法,旨在不牺牲 TLS 速度和可靠性的前提下,为 Web 添加后量子认证能力。
为什么现有的后量子方案行不通?
Web PKI 是部署后量子签名最棘手的地方,核心障碍在于数据大小。
- 签名体积巨大:NIST 标准化的较小后量子签名方案 ML-DSA-44,其签名长度约为 2,420 字节。相比之下,现有的 RSA-2048 签名仅为 256 字节,ECDSA-P256 仅为 64 字节。
- 公钥体积巨大:ML-DSA-44 的公钥为 1,312 字节,而 RSA-2048 为 256 字节,ECDSA-P256 为 64 字节。
- 握手开销爆炸:典型的 Web PKI 握手包含 5 个签名和 2 个公钥。如果全部替换为 ML-DSA 等效方案,单次 TLS 握手的数据量将轻松超过 10 KB。
Cloudflare 的研究表明,在这个规模下,相当一部分 TLS 连接会在现实网络中失败,其余连接也会变慢。更大的握手不仅影响失败的连接,还会导致带宽受限、连接变慢,损害用户体验。以默认方式启用这种高成本方案是不现实的,而默认设置才是推动 Web 规模安全的关键。
MTCs:一种更优的设计
Merkle Tree Certificates(MTCs)在过去一年中逐渐浮现,被认为是后量子 Web PKI 的有力路径。其核心机制如下:
- 批量签发:MTC 证书颁发机构(CA)不再逐个签发证书并单独签名,而是以批次形式签发证书,整个批次仅由一个签名覆盖。
- 分离更新:浏览器通过独立于 TLS 握手的机制来更新这些批次签名(称为“地标”,Landmarks)。
- 握手优化:
- 常见情况:MTC 握手中的整个认证路径仅包含一个签名、一个公钥和一个包含性证明(inclusion proof)。即使使用后量子算法,其体积也小于当前的 Web PKI 握手。
- 备用情况:如果客户端的地标过期,会使用稍大的“独立”形式作为回退机制。
MTCs 的额外优势:内置透明度
MTCs 不仅仅是体积优化。由于每个证书都是已发布的默克尔树的一部分,透明度(Transparency)成为了签发过程本身的属性。
- 当前现状:证书透明度(Certificate Transparency, CT)是事后附加的。CA 签发证书后,单独记录日志,额外的签名随 TLS 握手一起传输以证明日志记录。
- MTCs 机制:证书无法存在于默克尔树之外。CT 是内置的,无需额外的握手开销。
Let's Encrypt 并非在这一领域毫无经验。自 2019 年以来,Let's Encrypt 一直运营着 CT 日志,这些日志本身就是只追加的默克尔树,与 MTCs 构建的核心数据结构相同,且已在生产环境中大规模运行多年。
行业进展与 Let's Encrypt 的计划
- 实验与标准化:Cloudflare 和 Chrome 已在真实互联网流量上运行 MTCs 的可行性实验。IETF 的 PLANTS 工作组正在致力于标准化该设计。Chrome 已宣布 MTCs 是其向公共 Web 添加后量子证书的首选路径。
- Let's Encrypt 路线图:
- 2026 年底:部署签发 MTCs 的预发布环境(Staging environment)。
- 2027 年:部署生产就绪环境。
- 工程挑战:在 Let's Encrypt 的规模上签发 MTCs 需要对其整个技术栈进行重大修改,包括签发基础设施、ACME 协议、吊销机制、操作工具以及被 MTCs 取代的透明度日志基础设施。
- 并行工作:Let's Encrypt 同时跟踪 ML-DSA 在 X.509 (RFC 9881) 和 TLS (draft-ietf-tls-mldsa) 中的标准化工作,以及 Go 标准库等生态系统支持。无论最终交付的是 MTCs 还是 ML-DSA 签名的 X.509 证书,都需要浏览器、库和 ACME 客户端的支持。
对用户的影响
- 现状不变:当前的 Let's Encrypt 证书签发和续期方式完全不受影响。
- 未来获取:当后量子证书可用时,它们将以 Let's Encrypt 一贯的方式提供:免费、自动化,任何拥有 ACME 客户端的用户均可获取。
- 过渡期:标准化仍在进行中,根计划仍在定义要求,工程工作需落地到更广泛的生态系统中。Let's Encrypt 将持续向社区通报进展。
关键要点
- 认证紧迫性提升:随着 NSA、NIST 及科技巨头设定 2030-2035 年的过渡时间表,后量子认证已不再是可推迟的问题,长期密钥面临高风险。
- 直接替换不可行:直接将现有的后量子签名(如 ML-DSA)替换现有 RSA/ECDSA 会导致 TLS 握手体积爆炸(超过 10KB),引发连接失败和性能下降。
- MTCs 是核心解决方案:通过批量签发证书和分离地标更新,MTCs 能在保持后量子安全性的同时,使握手体积小于当前标准。
- 透明度内置化:MTCs 将证书透明度(CT)内建于默克尔树结构中,消除了额外的握手开销。
- Let's Encrypt 时间表:计划于 2026 年底推出 MTCs 预发布环境,2027 年推出生产环境。
- 生态系统协作:IETF PLANTS 工作组和 Chrome 团队正在推进标准化和实验,Go 语言等基础设施也在同步适配。
- 对服务器管理员的建议:虽然 MTCs 解决认证问题,但后量子加密(密钥交换)更为紧迫。建议服务器管理员立即启用混合后量子密钥交换(如 X2551
