Fork Choice Rules
Function to choose between which proposed block becomes the head of chain.
Nakamoto Consensus
- Choose highest total difficulty of blocks (which is not always equal to the length). Today used by Bitcoin, Ethereum (1), majority (if not all) PoW chains.
- The chain is serial, each message (block) points to the next one.
- Re-orgs are frequent (e.g. because two miners create blocks at the same time, and your miner didn’t see it)
Gasper
- Used by ethereum-2-pos. Names after LMD-GHOST1 + Casper.
- Multiple messages can appear in parallel (in each slot).
- Finality - once a block is finalized, it can not be reorged, except at a very high cost of slashing
- Re-orgs are much more infrequent, for a block to be reorged it has to “defeat” all many thousand attesters (6000+)
Tendermint
- …
-
GHOST: Greediest Heaviest Observed Sub-Tree; choose chain that has most descendants ↩