本文详细介绍了以太坊为抵御量子计算威胁而进行的后量子防御工作,特别是ETH2030项目构建的全栈后量子密码学实现。该实现涵盖共识层、数据层、执行层和应用层,通过引入哈希/格基密码学、STARK聚合、EIPs和新的预编译来增强以太坊的长期安全性。

在时间耗尽前构建以太坊的后量子防御
这不是一个遥远的威胁。以太坊基金会于2026年1月成立了一个专门的后量子安全团队,由Thomas Coratger领导,并提供200万美元的研究奖金。Vitalik本人在Devconnect布宜诺斯艾利斯警告称,椭圆曲线密码学“可能在2028年美国下届总统选举前被攻破。” EF Strawmap将“后量子L1”列为以太坊的五大北极星目标之一:通过基于哈希的方案实现长达几个世纪的密码学安全。ETH2030 ( eth2030.com ) 现在包含一个完整的后量子密码学栈,跨越7个包中的46个源文件、6种签名算法、13个自定义EVM预编译,以及基于STARK的递归证明聚合,具有真实的约束评估和FRI多项式折叠。针对EIP-8141和ethresear.ch STARK 内存池规范进行了三轮逐行审计,发现并修复了所有26个漏洞。所有这些都已编译、测试(48个包,20,900+测试通过),并在具有I+分叉激活的Kurtosis开发网络上运行。以下是我们构建的内容及其重要性。
“目前,以太坊中有四件事容易受到量子攻击:共识层BLS签名;数据可用性(KZG承诺+证明);EOA签名(ECDSA);应用层ZK证明(KZG或groth16)。”Vitalik Buterin,
, 2026年2月26日
这四个领域中的每一个都依赖于数学问题,而Shor算法可以在足够强大的量子计算机上以多项式时间解决这些问题。每个领域的解决方案都不同,但它们有一个共同点:用基于哈希或基于格的替代方案取代椭圆曲线操作,然后使用STARK(本质上是抗量子攻击的)将由此产生的更大签名和证明聚合到可管理的规模。

ETH2030的PQ实现不是一个简单地附加在顶部的单一库。它是一个跨越共识层、数据层、执行层和应用层的全栈替换。crypto/pqc/ 包包含33个实现真实格操作的源文件,另有13个PQ特定文件分布在consensus/、core/types/、core/vm/、das/、proofs/和txpool/——总计46个文件,没有一个是存根。ML-DSA-65 使用模多项式算术和基于Module-LWE问题的Fiat-Shamir拒绝采样。Falcon-512 实现了NTRU格操作和NTT域多项式乘法。SPHINCS+ 提供无状态基于哈希的签名作为保守的回退方案。

Vitalik的路线图线程提出了一个关键观察:ECDSA验证的成本约为3,000 gas,但基于哈希的抗量子签名成本约为200,000 gas。这种66倍的成本增加是为什么天真的PQ迁移会严重损害以太坊吞吐量的原因。正如Vitalik所描述的,解决方案是在EIP-8141帧交易下进行协议层递归STARK聚合,其中每笔交易的签名都可以被STARK证明替换,并且一个区块中的所有证明都被聚合成一个单一的验证。
ETH2030实现了六种签名算法以涵盖所有的权衡。ML-DSA-65 (FIPS 204) 在签名大小和交易签名验证速度之间提供了最佳平衡。Falcon-512 提供了最小的PQ签名,仅690字节,是带宽受限环境的理想选择。SPHINCS+ 是最保守的选择,具有49KB的签名,但除了哈希碰撞阻力之外没有任何数学假设。XMSS/WOTS+ 为L1共识提供了长期有状态选项,并具有可配置的树高。

算法注册表 (EIP-7932)。ETH2030 实现了一个统一的分派注册表,注册了5种算法 (ML-DSA-44/65/87、Falcon-512、SLH-DSA)。该注册表提供线程安全验证分派、gas成本调度和未来的算法可扩展性。PQ方案无法进行公钥恢复,因此显式公钥传输是强制性的。通过ValidateGasCostsMatch() 强制执行gas成本一致性,该函数交叉检查注册表gas成本与EVM gas表 (core/vm/gas_table.go 中的GasPQVerify()),防止两个系统之间出现偏差。
基于格的签名验证和STARK证明验证都需要快速的多项式乘法。在经典硬件上,数论变换 (NTT) 将其从O(n²)转换为O(n log n)。在Solidity中执行此操作代价高昂。地址0x15的NTT预编译提供了在两个域上进行本机速度多项式评估:BN254标量域(用于ZK应用)和Goldilocks域(用于STARK友好的算术)。

NTT预编译与8个数论整数 (NII) 预编译一起在I+分叉级别激活,地址为0x0201到0x0208,提供模幂运算、域乘法、域求逆和批量验证。这13个自定义预编译共同使智能合约能够高效访问后量子密码学背后的数学原语。
Vitalik路线图的核心洞察是,更大的PQ签名不一定意味着更大的区块。协议层递归STARK聚合将所有交易签名和证明压缩成每个区块一个单一证明。ETH2030 端到端地实现了这一管道:STARK证明者在Goldilocks域上生成证明,具有真实的代数约束评估(每个约束每行 sum(coeff[i] × trace[row][col]degree) mod p),带有Merkle认证路径的FRI多项式折叠,以及递归组合引擎每500毫秒链式连接证明。内存池聚合层强制执行两个有意义的约束(哈希一致性和gas边界)以及在区块构建之前gossip层每主题128KB的带宽限制。

“解决方案仍然是协议层递归签名和证明聚合。节点每500毫秒生成递归STARK证明,验证所有有效对象,将带宽开销限制为每个tick一个证明,而不是每笔交易一个。”Vitalik Buterin, Quantum Resistance Roadmap, 2026年2月26日
EIP-8141 帧交易。PQ迁移路径依赖于EIP-8141 帧交易,它允许每笔交易的签名被STARK证明替换。ETH2030 实现了完整的帧交易生命周期:带有每帧执行模式 (APPROVE/VERIFY/SENDER) 的FrameTx类型、EVM中的APPROVE和TXPARAM操作码、帧之间瞬态存储隔离、正确的nonce递增时机,以及帧计数、模式和目标约束的交易池验证。针对EIP规范进行了三轮逐行审计,修复了26个漏洞,包括APPROVE范围推断、日志哈希归属和P2P gossip的序列化。
替换BLS证明签名可能是风险最高的PQ迁移。以太坊的共识依赖于每个Slot聚合数千个验证者签名。BLS12-381通过代数聚合使其高效。基于格的签名不能原生聚合,这就是为什么Vitalik呼吁基于STARK的聚合来处理大量签名。
ETH2030的共识PQ模块实现了渐进式过渡。PQAttestation 包含Dilithium3签名和经典ECDSA/BLS回退。验证首先尝试PQ签名,如果该验证者禁用PQ则回退到经典签名。PQChainSecurity模块强制使用SHA-3/Keccak-f[1600]进行抗量子区块哈希,并跟踪已注册PQ密钥的验证者百分比。FinalityBLSAdapter 将终局确定性系统桥接到PQ:当PQFallbackEnabled设置为true时,确定性投票通过PQ算法注册表使用SignVotePQ/VerifyVotePQ,确保确定性链对量子对手保持安全。

KZG承诺提供了优雅的多项式承诺特性,但依赖于椭圆曲线配对。ETH2030 实现了两种PQ替换方案。第一种是基于Merkle树的承诺,使用Keccak-256,将blob分割成32字节块,并带有从叶子到根的认证路径。这是一种保守的选择,仅依赖于哈希碰撞阻力。第二种是Module-LWE格承诺 (c = A*s + e + m),匹配Kyber-768参数 (k=2, n=2),在MLWE硬度假设下提供代数绑定。
正如Vitalik所指出的,STARKs 缺乏与DAS进行2D数据可用性采样所需的线性特性。ETH2030 的实现使用带有基于格的保管证明的1D PeerDAS采样,与Vitalik描述的“可管理,但还有很多工程工作要做”的方法相匹配。DAS层还包括一个STARKCommitment类型,它将STARK证明承诺嵌入到blob数据中,将证明聚合和数据可用性系统连接起来。
PQ组件在I+分叉级别激活(目标在Strawmap时间线上的2027年)。ETH2030 现在支持 --override.iplus=0 作为eth2030-geth二进制文件上的CLI标志,它在启动时修补go-ethereum的Prague预编译映射,以包含所有13个自定义预编译。Kurtosis开发网络配置通过el_extra_params传递这些覆盖,从而在创世时启用I+分叉激活。

开发网络结果(2026年2月27日)。具有I+分叉激活的Kurtosis开发网络在创世时生成区块,在2个EL + 2个CL节点之间达成共识,并验证所有13个自定义预编译。0x15的NTT预编译通过eth_call为BN254正向/逆向NTT和Goldilocks正向NTT返回有效结果。自定义预编译被注入到go-ethereum的Prague和Osaka预编译映射以及EIP-2929地址列表中,确保在I+分叉级别正确激活。
Vitalik称量子迁移为“一套非常具有侵入性的变更”,并建议将最大的步骤与密码学切换捆绑在一起。ETH2030 的实现验证了这一评估。PQ栈跨越7个包中的46个源文件,引入了13个预编译,需要一个新的分叉级别,并改变了每笔交易的gas经济学。但它也表明这些组件可以组合:Dilithium证明流入STARK聚合,NTT预编译服务于格验证和STARK证明检查,EIP-8141帧交易提供可替换签名机制,确定性BLS适配器将终局确定性桥接到PQ,而算法注册表为未来的NIST批准方案提供了清洁扩展点。
Vitalik早期工作提供了紧急回退方案。他2024年3月的ethresear.ch帖子描述了一种硬分叉机制,用于在量子计算机突然出现时拯救用户资金,使用基于BIP-32种子知识的STARK证明。ETH2030 的STARK证明者和递归组合基础设施正是这种紧急分叉所需的构建模块。
“这可能是‘以太坊的最后一个哈希函数’,因此明智地选择很重要。”Vitalik Buterin谈PQ迁移的哈希函数选择
哈希函数问题仍未解决。Vitalik确定了三个候选方案:带有额外轮次的Poseidon2,Poseidon1(不易受最近Poseidon2攻击但速度慢两倍),以及BLAKE3(最有效的传统哈希)。ETH2030 目前使用Keccak-256和SHA-256作为哈希后端,带有一个可插拔的HashBackend接口,随时可以替换社区选择的任何哈希函数。100万美元的EF Poseidon加固奖金表明答案可能比预期来得更快。
- 原文链接: x.com/yq_acc/status/2027...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!