文章探讨了量子计算对现有PKI的挑战,指出后量子数字签名标准将导致证书增大。为应对此,文章介绍了Google Chrome提出的基于Merkle树的无证书PKI方案,该方案通过Merkle根哈希实现证书验证与撤销,是未来PKI发展的重要方向。

嗯,PKI(公钥基础设施)已经运行良好,但随着我们的量子迁移,我们的数字证书将变得更大。这涉及 X.509 证书包含多个公钥(经典的公钥和量子健壮的公钥),并且还可能需要对证书进行双重签名。但是,谷歌浏览器有一个新计划,它将完全取消证书,并基本上发布一个默克尔根哈希。这个哈希值将涵盖所有已发布的现有证书。
我们现有的 X.509 证书包含 RSA 或 ECC 公钥,并使用这些方法进行签名。不幸的是,使用 Shor 算法,量子计算机将能够破解这些方法。为此,NIST 已经定义了一系列新的数字签名标准,包括 ML-DSA、FN-DSA 和 SLH-DSA (SPHINCS+)。对于密钥大小,我们通常会获得与 128 位安全(级别 1)、192 位安全(级别 3)和 256 位安全(级别 5)相当的级别。不幸的是,ML-DSA 的公钥和签名大小比 RSA 和 ECC 大得多,其中 ML-DSA-65 的公钥大小为 1,592 字节,签名大小为 3,293 字节。这比公钥和签名大小为 256 字节的 RSA,以及公钥为 64 字节的 ECC 大得多:
Method Public key size Private key size Signature size Security level
------------------------------------------------------------------------------------------------------
ML-DSA-44 1,312 2,528 2,420 1 (128-bit) Lattice
ML-DSA-65 1,952 4,000 3,293 3 (192-bit) Lattice
ML-DSA-87 2,592 4,864 4,595 5 (256-bit) Lattice
Falcon 512 (Lattice) 897 1,281 690 1 (128-bit) Lattice
Falcon 1024 1,793 2,305 1,330 5 (256-bit) Lattice
Sphincs SHA256-128f Simple 32 64 17,088 1 (128-bit) Hash-based
Sphincs SHA256-192f Simple 48 96 35,664 3 (192-bit) Hash-based
Sphincs SHA256-256f Simple 64 128 49,856 5 (256-bit) Hash-based
RSA-2048 256 256 256
ECC 256-bit 64 32 256
基于哈希的方法的根源在于默克尔树,它是一种哈希方式,广泛应用于许多应用程序中,包括比特币、以太坊、Git 分布式系统、NoSQL 以及许多 P2P 应用程序。通过默克尔树,我们获取数据元素,然后对它们进行哈希,并成对地选取这些哈希来创建新的哈希,从而构建一个表。树的顶部是根元素(在本例中是 Hash1234):

图1:默克尔树
通过这种方式,我们可以使用树来查看系统上是否有匹配的数据。
对于 X.509 证书,证书由受信任的证书颁发机构 (CA) 签名,并且该机构受到根 CA 的信任。通往根 CA 的路径可以在证书中追溯。对于默克尔树,不需要证书,因为每个证书都是树中的一个叶子,并且两个证书成为分支,然后通向根。
注意:我知道树的根在地下,但计算机科学家认为树的根在顶部。
然后,我们只需要树顶的一个哈希值就可以提供树中的所有证书。这类似于区块链哈希,我们可以对每笔交易进行哈希,最终创建一个根哈希。
为了证明一个证书,依赖方可以对该证书进行哈希,然后与其他哈希结合起来,展示到根哈希的证明。在图2中,Bob 可以通过提供到其证书哈希的哈希路径来证明他的证书。在这种情况下,他将提供 H2、H5 和 H6,并显示到根的路径。

默克尔树证书的哈希值和三个签名;
这将导致哈希值大小与我们现有的 ECC 方法大致相同,并且小于 RSA-2048 签名,并且 TLS 交换的签名更少。
数字证书的一个重要元素是撤销实体的公钥——通常是私钥被泄露的情况。为此,我们可以使用稀疏默克尔树或有序默克尔树。对于稀疏默克尔树,每个证书都定义了一个位置,并且有效位置填充为零值(以及到根的路径)。被撤销的证书会删除零值。在有序默克尔树中,每个证书都根据其证书 ID 以给定的序列顺序进行排序。缺少撤销证明了目标证书 ID 正上方和正下方的有效 ID 的正确序列。
嗯,这将带来重大影响,因为它将需要一种完全不同的生成和验证证书的方式,并且每个现有证书都必须升级到新方法。迁移正在进行中,无论喜欢与否,PKI 正在发生变化。
- 原文链接: billatnapier.medium.com/...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!