Woordenlijst
Mining en consensus

Byzantine fault tolerance

Byzantine fault tolerance (BFT) is het vermogen van een systeem om correct tot overeenstemming te blijven komen, zelfs wanneer sommige deelnemers willekeurig uitvallen – waaronder liegen, tegenstrijdige berichten versturen of actief samenspannen om het netwerk te verstoren. De naam komt van het "Byzantine Generals Problem", een gedachte-experiment uit 1982 over legercommandanten die een aanval moeten coördineren terwijl sommige generaals verraders kunnen zijn die tegenstrijdige bevelen sturen.

Dit is het kernprobleem dat elke blockchain oplost: duizenden onbekenden moeten het eens worden over één transactiegeschiedenis, terwijl wordt aangenomen dat sommigen van hen kwaadwillend zijn. Klassieke BFT-protocollen, afstammelingen van PBFT (Practical Byzantine Fault Tolerance), werken doordat een bekende groep validators rondes van stemmen uitwisselt; ze kunnen verdragen dat maximaal een derde van de validators faalt. Tendermint – de consensus-engine achter Cosmos-blockchains – finaliseert bijvoorbeeld een blok zodra meer dan twee derde van het stemgewicht van de validators het ondertekent, zodat een blok onomkeerbaar is op het moment dat het wordt vastgelegd. Het finality gadget Casper FFG van Ethereum past hetzelfde principe van twee derde toe.

Een veelvoorkomende misvatting is dat Bitcoin een BFT-stemprotocol gebruikt; Bitcoin bereikt Byzantine fault tolerance in plaats daarvan probabilistisch via proof of work en de regel van de langste keten, zonder dat validators stemmen – een aparte aanpak die vaak Nakamoto-consensus wordt genoemd. Het praktische verschil zie je terug in finality: BFT-achtige blockchains bieden directe, absolute finality na één blok, terwijl Nakamoto-achtige blockchains zekerheid bieden die met elke bevestiging groeit maar nooit wiskundige zekerheid bereikt.

Gerelateerde termen