Bitcoin Core Developer Proposes “BetterHash” to Decentralize Bitcoin Mining
Bitcoin Core developer Matt Corallo has submitted a Bitcoin Improvement Proposal (BIP) designed to encourage decentralized bitcoin mining. Corallo has called his proposal the “BetterHash Mining Protocol”.
The goal of BetterHash is to reduce centralization in the bitcoin ecosystem. The protocol also introduces several major performance improvements over the Stratum protocol used by most modern bitcoin miners.
Centralized mining is one of the biggest issues in the bitcoin community. The top five bitcoin mining pools – four of which are in China – control the vast majority of the bitcoin network’s hashpower. These mining pools wield enormous influence in the bitcoin community – and the problem has become worse over time.
Matt Corallo – you might know him better by his online handle TheBlueMatt – published his “BetterHash Mining Protocol(s)” on his Github repository earlier this week.
The protocol seeks to address one of the main “pressures” in the bitcoin network that pushes the community towards centralization: Stratum, which is the most popular mining protocol.
Corallo believes there are deficiencies in the design of Stratum that make it a less-than-ideal solution. Corallo explains this problem is compounded by the fact that most bitcoin miners point their hashpower towards mining pools, limiting the diversity of block templates used across the network. This purportedly gives pool operators undue influence over network upgrades while reducing the censorship-resistance of bitcoin.
Here’s how Corallo explained the problems with the Stratum mining protocol used by most bitcoin miners:
“Difficult to implement and poorly documented, the design of the Stratum protocol requires pool operators to build and distribute block templates to their clients. Without a diverse body of miners constructing block templates, the network’s censorship resistance is jeopardized (e.g. pool operators may use their position of power to restrict the flow of protocol upgrades).”
How Does BetterHash Work?
How does Corallo plan to solve these problems? How does he plan to alleviate centralization pressure on the bitcoin network?
Corallo wants to replace the Stratum protocol with a new system that divides block construction and payouts into two protocols. These two protocols are called Work and Pool, but they’re collectively known as BetterHash.
This system will allow individual miners to choose which transactions they include in blocks. They won’t need to allow mining pool operators to make that choice on their behalf. Individual users will still benefit from the stable payouts they receive from a mining pool.
Today, miners that wish to choose their transactions are said to be using their own block templates. These miners cannot join major mining pools. They need to either solo mine or connect to p2pool, a small, decentralized mining pool. Going solo or joining p2pool increases autonomy but makes it difficult to receive stable payouts.
BetterHash would prevent mining pool operators from using their position to tell miners whether to adopt particular network upgrades. Miners who have more control over block templates will also be able to avoid the risk of a government ordering a locally-operated mining pool to censor particular types of transactions.
BetterHash, however, does not force miners to build their own block templates if they don’t want to. Miners have the option to use the Work protocol to connect to another pool’s block template – regardless if they want to direct their hashpower somewhere else.
The primary goal of BetterHash is to discourage decentralization in the bitcoin mining ecosystem. However, the protocol also introduces several performance upgrades over Stratum.
You can view Matt Corallo’s BetterHash bitcoin mining protocol(s) on Github here.