Vitalik: 以太坊量子抵抗路线图

本文详细阐述了以太坊应对量子计算威胁的策略,聚焦于共识层签名、数据可用性、EOA签名和零知识证明的量子脆弱性。文章提出了基于哈希签名的替代方案、STARKs的应用、原生账户抽象以及通过EIP-8141实现的协议层递归聚合等核心解决方案,并分析了其技术挑战和成本考量。

现在,量子抵抗路线图。今天,以太坊中有四件事容易受到量子攻击:

  • 共识层 BLS 签名
  • 数据可用性 (KZG 承诺+证明)
  • EOA 签名 (ECDSA)
  • 应用层 ZK 证明 (KZG 或 Groth16) 我们可以逐步解决这些问题:

共识层签名

精简共识包括完全用基于哈希的签名(Winternitz 的某种变体)替换 BLS 签名,并使用 STARKs 来进行聚合。在精简最终性之前,我们很有可能获得精简可用链。这也涉及基于哈希的签名,但签名数量要少得多(例如,每个Slot 256-1024 个),因此我们不需要 STARKs 用于聚合。

在此之上一个重要的事是选择哈希函数。这可能是“以太坊的最后一个哈希函数”,因此明智地选择很重要。传统哈希太慢,而 Poseidon 最激进的形式最近在安全分析中受到了打击。可能的选项是:

  • Poseidon2 加上额外的轮次,可能混入非算术层(例如 Monolith)
  • Poseidon1(Poseidon 的旧版本,不受近期对 Poseidon2 的任何攻击影响,但速度慢 2 倍)
  • BLAKE3 或类似算法(采用我们所知的最有效的传统哈希)

数据可用性

今天,我们严重依赖 KZG 进行擦除码。我们可以转向 STARKs,但这有两个问题:

  1. 如果我们想做 2D DAS,那么我们目前的设置依赖于 KZG 承诺的“线性”特性;使用 STARKs 我们没有这一点。然而,我们目前的想法是,鉴于我们的规模目标,最大化 1D DAS(即 PeerDAS)应该足够了。以太坊采取了更保守的姿态,它不打算成为全球高规模的数据层。
  2. 我们需要证明擦除编码的 Blob 已正确构建。KZG “免费”完成这一点。STARKs 可以替代,但一个 STARK ……比一个 Blob 更大。所以你需要递归 STARKs(尽管也有其他技术,它们有自己的权衡)。这没问题,但如果你想支持分布式 Blob 选择,其逻辑会变得更复杂。

总结:这是可控的,但有大量的工程工作要做。

EOA 签名

在这里,答案很明确:我们添加原生 AA(参见 https://learnblockchain.cn/docs/eips/EIPS/eip-8141),这样我们就能获得可以利用任何签名算法的一级账户。然而,要使这成为现实,我们还需要抗量子签名算法真正可行。

ECDSA 签名验证成本为 3000 gas。抗量子签名……在验证方面要大得多、重得多。我们知道基于哈希的抗量子签名,其验证成本在 ~200k gas 范围。我们也知道基于格的抗量子签名。目前,这些签名验证效率极低。然而,正在进行向量化数学预编译的工作,这使得你可以执行(+、*、%、点积,还有 NTT / 蝴蝶排列)这些格数学和 STARKs 核心的操作。这可以大大降低基于格签名的 gas 成本,使其达到相似的范围,甚至可能更低。长期的解决方案是协议层递归签名和证明聚合,这可以将这些 gas 开销降低到接近于零。

证明

今天,一个 ZK-SNARK 成本为 ~300-500k gas。一个抗量子 STARK 更像是 10M gas。后者对于隐私协议、L2 和其他证明用户来说是不可接受的。解决方案再次是协议层递归签名和证明聚合。

那么我们来谈谈这是什么。在 EIP-8141 中,交易能够包含一个“验证帧”,在此期间应该进行签名验证和类似操作。验证帧不能访问外部世界,它们只能查看其 calldata 并返回一个值,其他任何东西都不能查看其 calldata。这样设计是为了可以替换任何验证帧(及其 calldata),使用一个验证它的 STARK(可能是一个用于区块中所有验证帧的单一 STARK)。这样,一个区块可以“包含”一千个验证帧,每个帧包含一个 3 KB 签名,甚至一个 256 KB 证明,但那 3-256 MB(以及验证所需的计算)永远不会上链。相反,它将全部被一个证明替换,该证明验证计算是正确的。

潜在地,这个证明甚至不需要由区块构建者完成。相反,我设想它发生在内存池层:每 500 毫秒,每个节点可以传递它所看到的新的有效交易,以及一个证明,验证它们都是有效的(包括具有与其声明效果相匹配的验证帧)。开销是静态的:每 500 毫秒一个证明。

这里有一篇我谈论此事的文章: https://ethresear.ch/t/recursive-stark-based-bandwidth-efficient-mempool/23838… https://firefly.social/post/farcaster/0x19ddcf7f74b335ab5adcdec43c071d1161ab247e…

EIP-8141: Frame Transaction

  • 原文链接: x.com/VitalikButerin/sta...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Vitalik Buterin
Vitalik Buterin
https://vitalik.ca/