ETHPanda 好文分享 | 以太坊迈向后量子时代:Lean Consensus 完成 PQDevnet0 里程碑
PQDevnet0 是 Lean 共识(Lean Consensus)项目中将后量子密码学引入以太坊的首个集成里程碑。
原文链接:https://hackmd.io/TahybBLUTcukOZ_51_FDdg
感谢 Jun、Gajinder、Kamil、Will 和 Ladislaus 提供的反馈与审阅意见。
概览
PQDevnet0 是 Lean 共识(Lean Consensus)项目中将后量子密码学引入以太坊的首个集成里程碑。虽然它实际上仍是一个没有 PQ 签名的预开发网络阶段,但这一阶段为多客户端协作和迭代式开发方法奠定了关键基础,三个客户端——Ream、Zeam 和 Qlean——共同通过 3SF-mini 实现了最终确认。
总体目标
PQ 开发网络(devnet)主要针对以下核心工程挑战,这些挑战必须得到验证,才能使后量子以太坊成为可行方案:
PQ 签名可行性:基于哈希的多重签名需在亚秒级时间约束内运行
PQ 签名聚合可行性:针对共识层,签名聚合也必须在亚秒级时间约束内运行
多客户端互操作性:所有客户端需在时间约束内同步并验证区块/证明
资源需求:需在 EIP-7870 硬件约束内运行
工程理念:早期集成
如此早就开始 devnet 开发是一个深思熟虑的工程决策。我们没有等待完整的规格说明,而是采用了并行的开发策略,让实现过程反过来影响规格制定,反之亦然。实际上,我们在做的是:
将实现开发与规格制定并行推进
缩短研究团队与工程团队之间的反馈周期
在问题尚易解决时发现规格中的歧义
通过早期识别问题,加快产品达到可投产阶段的速度
客户端实现
三个独立的客户端团队正在从零开始构建实现,各自利用不同的编程语言优势和架构方法应对挑战:
Ream:由 ReamLabs 开发的 Rust 实现
Zeam:由 Blockblaz 开发的 Zig 实现
Qlean:由 Quadrvium 开发的 C++ 实现
PQDevnet0 成就
Ream、Zeam 和 Qlean 成功使用 3SF-mini 完成共识!
Devnet0 的主要成就是在三个不同实现的客户端之间建立了可工作的多客户端互操作性。我们成功搭建了未来后量子工作的基础设施:
✅ 借鉴 STEEL 团队经验的新规格框架
✅ Devnet0 客户端规格实现
✅ 基于 3SF-mini 协议的基础共识
✅ 初步指标收集设置
✅ 三个客户端之间的多客户端互操作
✅ leanView 最小化区块浏览器 UI
leanView:一个便捷工具,用于观察本地状态的进展。全客户端集成即将上线。
Devnet0 挑战
实现互操作过程中,大部分障碍来自于各客户端之间 gossipsub 参数的差异调和。
此外,由于我们未能及时生成测试向量用于 devnet0,因此比较状态转储成为调试互操作问题的主要方式。这凸显了在进入 devnet 前需要规范测试向量——这是在 devnet1 中正在解决的空缺。
下一步:Devnet1 – 后量子签名
下一阶段将把实际的后量子签名 [7] 引入共识机制。这些签名基于以下论文:
Devnet1 是对签名在共识下表现的首次真实测试。
性能目标
区块签名 < 1 秒(目标:500μs)
证明签名 < 1 秒(目标:500μs)
签名验证 < 1 秒(目标:300μs)
完整区块流水线在 4 秒内完成
区块持续稳定运行 24 小时以上,且 4 秒区块能够被证明和最终确认
签名目标还会考虑使用“自顶向下树遍历(Top-Bottom Tree Traversal)密钥缓存策略”的签名再生时间。
签名聚合(Signature aggregation)在 Devnet1 中被刻意排除,这是因为我们采取逐步增加复杂性的方式,同时预期后量子签名聚合领域将有更多研究突破。想了解签名聚合的最新进展,请访问:https://github.com/leanEthereum/leanMultisig。
下一步
在 Devnet0 多客户端互操作性验证完成后,我们将立即进入 Devnet1 的后量子实现阶段。后量子工程工作现在正式启动。
未来属于 Lean Ethereum!
致谢
本工作得以完成,离不开以下人员在方向和协调层面的支持:Justin、Will 和 Ladislaus;感谢 @tcoratger 和 @fselmo 创建并维护 leanSpec;感谢 @leolara 启动规格测试;感谢 @pk910 和 @barnabasbusa 提供基础设施支持;感谢 @KatyaRyazantseva 整合指标数据。
我们还要感谢所有客户端团队和贡献者,包括 @syjn99、@Kayden-ML、@KolbyML、@shariqnaiyer、@varun-doshi、@jihoonsong、@unnawut、@g11tech、@gballet、@GrapeBaBa、@bomanaps、@ch4r10t33r、@kamilsa、@turuslan、@xDimon 以及更广泛的社区成员,他们为客户端开发和 devnet 本身做出了贡献。
了解更多信息
协调与规划
后量子签名
XMSS 规格:https://github.com/leanEthereum/leanSpec/…/subspecs/xmss
Rust 参考实现:https://github.com/b-wagn/hash-sig
客户端实现
Ream(Rust):https://github.com/ReamLabs/ream
Zeam(Zig):https://github.com/blockblaz/zeam
Qlean(C++):https://github.com/qdrvm/qlean-mini
leanView 浏览器:https://github.com/syjn99/leanView
PQDevnet 快速入门
Zeam 提供的 lean-quickstart:https://github.com/blockblaz/lean-quickstart
Ream 提供的 local-pq-devnet:https://github.com/ReamLabs/local-pq-devnet





