owned this note
owned this note
Published
Linked with GitHub
# PQDevnet0: Laying the groundwork for post-quantum interop with 3SF-mini
_Thanks to Jun, Gajinder, Kamil, Will and Ladislaus for feedback and review._
## Overview
PQDevnet0 marks the first integration milestone in the Lean Consensus effort to bring post-quantum cryptography to Ethereum. While practically a pre-devnet without PQ signatures yet, this phase established critical foundations for multi-client coordination and our iterative development approach, with 3 clients: [Ream](https://x.com/reamlabs), [Zeam](https://x.com/zeamETH) and [Qlean](https://x.com/qdrvm_io) together achieving finality with 3SF-mini.
## Overall Objectives
The PQ devnet(s) target these core engineering challenges that must be proven to make post-quantum Ethereum viable:
1. **PQ signature viability**: Hash-based multi-signatures operating within sub-second constraints
2. **PQ signature aggregation viability**: Specific to the consensus layer, signature aggregation must also be operating within sub-second constraints
3. **Multi-client interoperability**: All clients syncing and validating blocks/attestations within timing constraints
4. **Resource requirements**: Operating within EIP-7870 hardware constraints
## Engineering Philosophy: Early Integration
Starting devnet development this early represents a deliberate engineering choice. Rather than waiting for complete specifications, we're running parallel tracks where implementation informs specification and vice versa. In effect, we are:
- Parallelizing implementation with specification development
- Tightening feedback loops between research and engineering teams
- Discovering specification ambiguities while they're still easy to fix
- Accelerating path to production-readiness through early problem identification
## Client Implementations
Three independent client teams are building implementations from scratch, each bringing different language strengths and architectural approaches to the challenge:
- **Ream**: Rust implementation by [ReamLabs](https://x.com/reamlabs)
- **Zeam**: Zig implementation by [Blockblaz](https://x.com/blockblaz)
- **Qlean**: C++ implementation by [Quadrvium](https://x.com/qdrvm_io)
## PQDevnet0 Accomplishments

<font size="2">*Ream, Zeam and Qlean finalizes with 3SF-mini!*</font>
The primary achievement of devnet0 was establishing working multi-client interoperability between three different implementations. We successfully built the foundational infrastructure needed for future post-quantum work:
- ✅ New specs framework with lessons learnt from [STEEL](https://steel.ethereum.foundation/home/main/) team
- ✅ Devnet0 client specs implementation
- ✅ Basic consensus using 3SF-mini protocol
- ✅ Initial metrics collection setup
- ✅ Multi-client interop between 3 clients
- ✅ leanView minimal block explorer UI

<font size="2">***leanView:** a handy tool to observe local state progression. All-client integration coming soon.*</font>
### Devnet0 Challenges
Most hurdles in getting the interop up were around reconciling gossipsub parameter differences between clients.
Additionally, as we were not able to get test vectors generation up in time for devnet0, so comparing state dumps was the main way to debug interop issues. This highlighted the need for spec test vectors before proceeding into a devnet — a gap that is [being addressed](https://github.com/leanEthereum/leanSpec/pull/76) going into devnet1.
## Next: Devnet1 - Post-Quantum Signatures
This next phase introduces actual [post-quantum signatures](https://github.com/b-wagn/hash-sig), based on the papers: [Hash-Based Multi-Signatures for Post-Quantum Ethereum](https://eprint.iacr.org/2025/055), [At the Top of the Hypercube -- Better Size-Time Tradeoffs for Hash-Based Signatures](https://eprint.iacr.org/2025/889) and [Technical Note: LeanSig for Post-Quantum Ethereum](https://eprint.iacr.org/2025/1332), into the consensus. Devnet1 represents the first real test of how the signatures perform under consensus.
### Performance Targets
- Block signing < 1s (target: 500μs)
- Attestation signing < 1s (target: 500μs)
- Signature verification < 1s (target: 300μs)
- Complete block pipeline within 4 seconds
- 24+ hour stability with justified and finalized 4s blocks
The signing targets will also take into account the signature regeneration time with [Top-Bottom Tree Traversal](https://github.com/b-wagn/hash-sig/pull/89) key caching strategy.
Signature aggregation is intentionally excluded from devnet1 as we take an incremental approach to complexity and anticipating more research breakthroughs in post-quantum signature aggregation. Learn more about the progress on signature aggregation at https://github.com/leanEthereum/leanMultisig.
## Next Steps
With devnet0's multi-client interoperability validated, we're moving immediately into devnet1's post-quantum implementation phase. The post-quantum engineering work begins now. The future is Lean Ethereum!
## Acknowledgements
This work wouldn't be possible without support from [Justin](https://x.com/drakefjustin), [Will](https://x.com/corcoranwill), and [Ladislaus](https://x.com/ladislaus0x) at the directional and cooordination level, [@tcoratger](https://github.com/tcoratger) and [@fselmo](https://github.com/fselmo) for creating and maintaining the [leanSpec](https://github.com/leanEthereum/leanSpec), [@leolara](https://github.com/leolara) for the spec tests initation, [@pk910](https://github.com/pk910) and [@barnabasbusa](https://github.com/barnabasbusa) for infrastructure support, and [@KatyaRyazantseva](https://github.com/KatyaRyazantseva) for metrics consolidation.
We'd like to thank all the client teams and contributors including [@syjn99](https://github.com/syjn99), [@Kayden-ML](https://github.com/Kayden-ML), [@KolbyML](https://github.com/KolbyML), [@shariqnaiyer](https://github.com/shariqnaiyer), [@varun-doshi](https://github.com/varun-doshi), [@jihoonsong](https://github.com/jihoonsong), [@unnawut](https://github.com/unnawut), [@g11tech](https://github.com/g11tech), [@gballet](https://github.com/gballet), [@GrapeBaBa](https://github.com/GrapeBaBa), [@bomanaps](https://github.com/bomanaps), [@ch4r10t33r](https://github.com/ch4r10t33r), [@kamilsa](https://github.com/kamilsa), [@turuslan](https://github.com/turuslan), [@xDimon](https://github.com/xDimon) and the broader community for contributing to the clients and the devnet itself.
## Learn More
### Coordination
- **Roadmap:** https://leanroadmap.org
- **Specifications:** https://github.com/leanEthereum/leanSpec
- **Meeting Notes & Recordings:** [https://github.com/leanEthereum/pm/.../pq-interop](https://github.com/leanEthereum/pm/tree/main/breakout-rooms/leanConsensus/pq-interop)
- **Metrics:** https://github.com/leanEthereum/leanMetrics
### Post-Quantum Signature
- **XMSS specs:** [https://github.com/leanEthereum/leanSpec/.../subspecs/xmss](https://github.com/leanEthereum/leanSpec/tree/main/src/lean_spec/subspecs/xmss)
- **Reference implementation in Rust:** https://github.com/b-wagn/hash-sig
### Client Implementations
- **Ream (Rust):** https://github.com/ReamLabs/ream
- **Zeam (Zig):** https://github.com/blockblaz/zeam
- **Qlean (C++):** https://github.com/qdrvm/qlean-mini
- **leanView explorer:** https://github.com/syjn99/leanView
### PQDevnet Quick Start
- **lean-quickstart by Zeam**: https://github.com/blockblaz/lean-quickstart
- **local-pq-devnet by Ream**: https://github.com/ReamLabs/local-pq-devnet