monerometrics.netDashboardPoolsHashrateFeesReorgsHavenoLearnAPI

Selfish mining on Monero, explained

What selfish mining is, how it shows up in orphan blocks and reorgs, and how to check pool concentration on Monero.

Selfish mining is a strategy where a miner keeps the blocks it finds private instead of publishing them at once. While honest miners work on the public chain, the selfish miner extends its own branch, then publishes it when that makes honest blocks lose the race. The honest blocks become orphans and their rewards are lost.

Why it pays

Above roughly a third of the hashrate, a selfish miner can earn more than its fair share, because it wastes the work of others. With a majority of the hashrate, it can rewrite recent history at will.

How it shows up in the data

The defense is decentralization

No single pool should approach a third of the blocks. The Nakamoto coefficient, the smallest number of pools that together produce more than half of the blocks, summarizes it in one number. Mining on P2Pool or a small pool keeps it high.