Designs
Protocols differ mainly in two choices: how validators are selected, and how a block becomes final. Networks are named only as the first or best-known use of a design.
| Design | How validators are chosen | How a block becomes final |
|---|---|---|
| Classical Byzantine agreement (1999) | A fixed, known list of participants | Two rounds of voting; final at once when more than two-thirds agree |
| Byzantine agreement with stake — Tendermint (2014) | The largest stakeholders, up to a set number; others delegate to them | Each block is final as soon as more than two-thirds of stake has voted; if a third goes offline the chain halts rather than forks |
| Chain with a finality layer — Casper FFG, Gasper (2017–2020) | Anyone who deposits the fixed stake; a proposer is drawn for every slot and committees vote | The chain keeps growing; checkpoints become final when two-thirds of stake votes for them in two successive epochs |
| Stake lottery — Ouroboros (2017) | A slot leader is drawn by lottery, with chances in proportion to stake | Probabilistic: the longest chain wins and blocks settle with depth |
| Secret sortition — Algorand (2017) | A fresh committee is drawn privately for every step | Byzantine agreement in every round; forks occur only with negligible probability |
| Delegated proof of stake (2014) | Token holders elect a small, fixed number of block producers | Agreement among the elected producers |
| Nominated proof of stake (2020) | Holders nominate validators; an election spreads stake evenly across those chosen | A separate finality protocol votes on chains rather than single blocks |
| Proof of authority | Approved, publicly identified operators; no stake | Agreement among the approved operators |
| For contrast: proof of work (2008) | No list at all: anyone with hardware may try | Never absolute; reversal becomes steadily less likely |
Validator and full node are not the same
Every full node checks every block against the rules and will reject an invalid one whatever the validators say. Validators only decide which of the valid blocks comes next. That division is why a majority of validators can censor or reorder transactions, but cannot create coins from nothing or spend what is not theirs: the rest of the network would simply not accept the block.