One giant leap for bitcoin mining

A complete, open-source and community-managed implementation of the Stratum V2 protocol. Stratum V2 increases security, makes data transfers more efficient, and reduces mining infrastructure requirements. It also introduces three new sub-protocols that let miners select transaction sets and improve decentralization by negotiating with pools.

sparkles
diagram

Before Stratum V2, transaction sets were selected by pools. With a complete SV2 configuration they’re selected by individual miners, making the network more censorship-resistant.

sparkles

Layers of Upgrades

Security

V2 introduces by-default encryption and NOISE protocol authentication, hardening the protocol against man-in-the-middle attacks.

Performance

The new Stratum optimizes data transfer size and frequency between miners, proxies, and pool operators, creating higher submission rates while reducing hash rate variance (miner payouts).

Flexibility

V2 improves logic and framework by letting miners and mining pools running V1 make incremental and modular improvements. These implementations can communicate via pool and client-side proxy translations with minimal tradeoffs.

Censorship Resistance

New features further decentralize bitcoin by integrating distributed transaction selections into the protocol, letting end-miners build and select transaction sets and block templates.

Standardization

By failing to precisely define Stratum V1’s specifications, we inadvertently created multiple implementations with varying semi-compatible dialects. Stratum V2 fixes this by defining its protocol parameters to ensure cross-compatibility between and pools and end-mining devices.

sparkles

Progress and Roadmap

This is where the Stratum V2 protocol’s progress currently stands.

MVP1 will allow users to run SV2 in its simplest form - a miner running existing SV1 firmware with a proxy that translates messages into SV2. In this configuration, the pool selects transactions.

A pull request that implements a block template provider will be submitted to the Bitcoin Core repository for review which will make MVP1 complete.

Implement the job negotiator, which a miner or miners can use to negotiate a block template with a pool.

Once a translator, template provider, and job negotiator are running, we will launch an MVP2. In this configuration, a miner handles mempool transaction selection, and the pool accepts it.

Apply early adopter feedback and tailor configurations that will move MVP1 and MVP2 from beta to production-ready.

planet sparkles

Support for Stratum V2

Let’s make Stratum V2 the new standard. Show material support or indicate your approval of the protocol direction.

Financial support for developers and initial protocol development (A-Z)