A lot has been said over the years about the threat that mining pool centralization poses to the bitcoin network. The worry is that if one or a few mining pools amass an amount of hashrate that is larger than 51% of the total hashrate dedicated to the network it will be trivial for the singular pool or a small cabal of pools to censor transactions and/or 51% attack the network. As you can see from the tweet above from Ryan Condron, the bitcoin mining pool industry is significantly centralized at the moment with the top two pools accounting for 64% of the network hashrate and the top for accounting for 93%. This is certainly a bit disconcerting, but there a few things to consider with this data in mind.
First, mining pools are economically incentivized to act in the best interest of their end-clients; individual miners. Censoring transactions that yield higher revenues for their clients or disrupting the network via a 51% attack would not be a great look for a pool. Second, the emergence of Stratum V2 mitigates the censorship attack by allowing individual miners contributing shares to a pool to construct their own blocks with transactions they gather and order. Though, the pool still has to broadcast the block at the end of the day. If they decide not to broadcast a valid block, they run the risk of getting beat out by another pool and missing out on that revenue. Lastly, and most importantly, it is trivial for an individual miner to direct their hash at another pool. If an individual miner ever deems that the pool they are using is a bad actor or has amassed too much hashrate they can redirect their hash to another pool within seconds. In fact, we saw this exact scenario play out in 2014 when GHash.io amassed more than 51% of the network hashrate at the time and miners made a quick exodus from the pool to competitors.
Even though these loose incentives are in place to drive good behavior at the pool level, the assurances are still sub par. Bitcoiners have been attempting to devise ways to further distribute risk at the pool level to reduce the potential for censorship and 51% attacks as much as possible. As we already stated, Stratum V2 is a step in the right direction, but outside of that there hasn't really been any material progress to mitigate these risks. Bob McElrath has been attempting to get support for Braidpool, a mining pool protocol that would move the network back in the direction of P2Pool, which was a peer-to-peer mining pool that was launched in 2011 but ultimately got out-competed by centralized pool over time and has been rendered obsolete today. Though Braidpool seems like a good idea on paper, it hasn't gained much traction or enthusiasm from the market. This is probably due to the fact that Braidpool requires a DAG architecture and dedicated token that many think will be hard to bootstrap.
Enter: Fedipools. A concept introduced to the world last week by our brother Matt Odell after a discussion he had during a recent Fedimint retreat.
After reading Matt's write up and having some discussions with him and others, Fedipools seem like a perfect middle ground between the mining pool landscape that exists today and the goals set out in the Braidpool proposal. A middle ground that seems very attainable once Fedimints become widely adopted. I won't rehash the points Matt makes in his piece highlighted above, but I will expand on them.
If Fedipools prove to be viable we could find ourselves in a world where bitcoin mining pool centralization risk is significantly reduced and the worries that many have today cease to exist. By creating a federation of different miners who act as guardians of a mint dedicated to producing blocks and distributing rewards you create a completely new and more robust incentive model at the pool layer. Due to the nature of how Fedimints work, it will be significantly easier to punish bad actors. Since a pool would be made up of a federation of mid to large sized miners that smaller miners would be able to allocate block construction duties to, the risk of transaction censorship and lost revenue is significantly reduced.
Miners would easily be able to look at the block health of particular blocks, determine whether an individual guardian is censoring transactions over time, and opt to either pick another guardian to do block construction on their behalf or have them removed from the federation all together. The nature of how Fedimints have been designed makes it so individual guardians can be removed and replaced without disrupting the functionality of the individual mint. From what I understand, a bit more work needs to be done to make this process seamless, but progress is being made and it should be possible soon. With the ability to levy this type of punishment on an individual guardian in place, block constructors are highly disincentivized to misbehave.
On top of this, miners will gain access to features that they have wanted for quite some time at the pool layer. Mainly, more private payouts and payouts via the Lightning Network. And with the modular nature of Fedimints it wouldn't be surprising to see Fedipools offer value added financial services on top of their vanilla pool payout functionalities.
It is still early days and this is nothing more than an idea at the moment. But your Uncle Marty thinks it is a very good idea that should gain traction. We'll keep you freaks abreast of developments as they materialize.
Nothing like an 80 degree day in mid-February to improve your mood.