Byzantinsk fejltolerance er et systems evne til at fortsætte med at fungere, selv når nogle deltagere lyver eller fejler. Navnet stammer fra et tankeeksperiment om byzantinske generaler, der forsøger at koordinere et angreb, mens budbringere kan blive fanget, eller forrædere kan sende falske ordrer. Generalerne har brug for en plan, der fungerer, hvis nogle af dem er upålidelige. En blockchain har det samme problem. Noder kan gå offline. Noder kan sende modstridende oplysninger. Netværket skal stadig blive enige om, hvilke transaktioner der er gyldige.
Praktisk byzantinsk fejltolerance, eller PBFT, er en algoritme, der løser dette. Den fungerer godt, når antallet af defekte noder er lille i forhold til det samlede antal. Mange autoriserede blockchains bruger PBFT-varianter, fordi de ved, hvem deltagerne er. Bitcoins proof-of-work har en anden tilgang. Den identificerer ikke troværdige noder. Den gør det dyrt at lyve, da det kræver beregningsarbejde. Den længste kæde vinder, og det er uoverkommeligt dyrt at producere en længere kæde end det ærlige netværk.
Fejltolerancegrænser
- Fejltolerance ved nedbrud — noder kan fejle, men lyver ikke
- Byzantinsk fejltolerance — noder kan fejle og sende falske oplysninger
- PBFT — tolererer typisk op til en tredjedel af noderne, der er defekte
Intet system tolererer et ubegrænset antal dårlige aktører. Spørgsmålet er, hvor meget dårlig opførsel protokollen kan absorbere, før konsensus bryder.
Comments
No comments yet. Be the first to share a thought.
Leave a comment