Stratum V2

Stratum V2 is a pooled mining protocol designed to replace Stratum V1. It uses bandwidth more efficiently, adds encryption, and gives miners more control over how blocks are built.

The main change is job negotiation. Under V1, pools chose the transaction set and miners supplied hash power. Stratum V2 lets individual miners construct their own block templates, reducing pool control and improving censorship resistance. The protocol also improves device interoperability and communication between miners, proxies, and pools.

Why fund it?

Shipping a new mining protocol requires spec work, a production-quality implementation, testing tools, and compatibility work across real hardware and software. Without dedicated funding, that kind of work stalls.

OpenSats has funded Stratum V2 development since August 2023, starting with a grant to Gabriele Vernetti for a testing and benchmarking tool. Gabriele went on to lead the Stratum V2 Reference Implementation (SRI) through releases 1.0.0 to 1.6.0, build the sv2-wizard configuration tool, and coordinate interoperability testing with pools and hardware vendors. In early 2026, Lucas Balieiro received a grant focused on fuzzing, security testing, and developer tooling.

What's next?

SRI has shipped releases 1.0.0 through 1.6.0 and is now split into a library repo and an application repo with precompiled binaries and Docker images. Recent work embedded the Job Declaration Server inside the pool and added a solo mining mode similar to CKPool solo but SV2-only. Demand Pool launched with SV2 support, and Auradine shipped the first ASIC miner with native Stratum V2.

A web UI for monitoring mining data is in beta testing with real miners. Fuzzing already uncovered an arithmetic overflow in the noise_sv2 crate, which has been fixed; a 24/7 fuzzing server is running and the next target is the sv1_api crate used by the translator proxy. Other ongoing work includes property testing across the low-level crates and improving Docker-based deployment.

Further Reading