Wat is het Byzantine generals problem?

Byzantine generals probleem

Byzantine generals problem uitgelegd

Het Byzantine generals problem (Byzantijnse generaalsprobleem) is een theoretisch probleem dat omschrijft met welke problemen gedecentraliseerde systemen, zoals blockchains, te maken krijgen wanneer ze consensus willen bereiken zonder een centrale partij. Het Byzantine generals problem is al in 1982 geïntroduceerd door Robert Shostak, Leslie Lamport en Marshall Pease. Het probleem werd omschreven als een theoretisch computervraagstuk.

Het vraagstuk: hoe kan een netwerk waarin geen enkele deelnemer de identiteit en integriteit van een andere deelnemer kan verifiëren, ervoor zorgen dat ze consensus bereiken door het eens te worden over één versie?

Een zeer terechte vraag, aangezien gedecentraliseerde netwerken zoals Bitcoin en Ethereum het vertrouwen in de vele deelnemers plaatsen, in plaats van in een centrale entiteit.


Korte samenvatting

  • Het Byzantine generals problem is een theoretisch vraagstuk dat beschrijft hoe gedecentraliseerde systemen, zoals blockchains, consensus kunnen bereiken zonder centrale autoriteit.

  • Het probleem toont aan dat in netwerken zonder centrale partij het lastig is om overeenstemming te bereiken. Elke node moet beslissingen nemen zonder garantie dat anderen eerlijk zijn.

  • Byzantine Fault Tolerance (BFT) zorgt ervoor dat een systeem kan blijven functioneren zelfs als sommige deelnemers kwaadaardig zijn. Zolang de meerderheid betrouwbaar is, blijft het systeem stabiel.


Waar komt de naam "Byzantine generals problem" vandaan?

Aan de oorsprong van de naam zit een interessant verhaal gekoppeld. Na de val van het West-Romeinse Rijk ontstond het Byzantijnse Rijk, het oostelijke deel van het voormalige Romeinse rijk. De hoofdstad daarvan was een zeer rijke en invloedrijke stad, oorspronkelijk Byzantion genoemd. In 330 n.Chr. werd deze stad hernoemd tot Constantinopel en tegenwoordig staat ze bekend als Istanboel.

Het Byzantijnse generaalsprobleem gaat erover dat wanneer de stad belegerd is, de generaals die de stad verdedigen dezelfde beslissingen moeten nemen, namelijk terugtrekken of de aanval kiezen. Maakt een generaal een andere keuze dan de rest, dan ontstaat er zwakte in de verdedigingslinie en daardoor een potentiële nederlaag.

Neemt een van de generaals een foute beslissing, dan noemen we dit een 'Byzantijnse fout', wat in de cryptowereld bekendstaat als de Byzantine Fault. Hoe de generaals hiermee omgaan? Knechten van de generaals (de boodschappers) brengen de beslissingen over naar de andere generaals. Als de meerderheid voor een strategie kiest, dan moeten alle generaals zich daaraan houden. Op deze manier blijft de verdedigingslinie intact. Doen generaals toch het tegenovergestelde van de rest, dan zijn dit verradelijke generaals. Doordat de meerderheid beslist, blijft het systeem eigenlijk altijd werken.

Het Byzantine generals problem vertaald naar gedecentraliseerde systemen

Het verhaal illustreert eigenlijk de problemen waarmee gedecentraliseerde systemen, zoals blockchains, te maken krijgen. Als geen enkel persoon (of node in de cryptowereld) alleen een besluit neemt (zoals dat in principe wel het geval is bij gecentraliseerde entiteiten), is het belangrijk om heel duidelijk inzichtelijk te hebben hoe een besluit genomen moet worden zonder dat er onduidelijkheid ontstaat.

Het probleem legt de uitdaging bloot waarmee gedecentraliseerde systemen te maken hebben om consensus te bereiken, omdat er niet vanuit wordt gegaan dat een enkele deelnemer vertrouwd kan worden om nauwkeurige informatie door te geven.

Gecentraliseerde partijen hebben geen last van het Byzantijnse generaalsprobleem, omdat besluiten worden genomen door slechts één partij, evenals het verspreiden van vertrouwelijke en nauwkeurige informatie. Als we kijken naar de financiële sector, dan zijn banken een perfect voorbeeld. Zij worden vertrouwd en er wordt van ze verwacht dat ze integer omgaan met tegoeden en transactiedata goed bewaren. Pleegt een bank fraude, dan zijn er overheidsinstanties die de banken controleren en straffen.

Het vertrouwen ligt dus meer bij een centrale autoriteit. Dit biedt meer efficiëntie, maar ook andere risico’s. Faalt het systeem door een storing of door een grootschalige hack, dan ligt het hele systeem plat. Bij gedecentraliseerde systemen kun je een node aanvallen of kan een node kwaadaardig zijn, maar dan zijn er nog genoeg andere nodes die invloed uitoefenen.

Wat is Byzantine Fault Tolerance?

De oplossing voor het probleem is de Byzantine Fault Tolerance (BFT). Dit is een systeem waarop gedecentraliseerde systemen zijn ontworpen. Het zorgt ervoor dat gedecentraliseerde systemen, zoals blockchaintechnologie, blijven functioneren, ook al zijn er kwaadaardige deelnemers in het spel.

Bij Byzantine Fault Tolerance is een meerderheid genoeg om consensus te bereiken.

Byzantine Fault Tolerance in blockchaintechnologie

Bitcoin is het perfecte voorbeeld waarin Byzantine Fault Tolerance (BFT) is verwerkt. Bitcoin maakt gebruik van het Proof-of-Work consensusmechanisme voor het verifiëren van transacties en het toevoegen van nieuwe blokken aan de blockchain. Hiervoor worden miners (nodes) ingezet. Een miner mag een blok met daarin transacties toevoegen. Deze miner wordt gecontroleerd door de andere miners. Als meer dan 51% van de miners het blok goedkeurt en dus consensus bereikt, dan wordt dit toegevoegd aan de blockchain. Op deze manier kunnen kwaadaardige miners opgespoord en bestraft worden.

Een kwaadaardige miner zou in theorie 51% van de rekenkracht die wordt gebruikt tijdens het miningproces moeten hebben. Dit wordt ook wel de 51% aanval genoemd. In de praktijk is dit echter vrijwel onmogelijk, aangezien er wereldwijd duizenden miners 24/7 bezig zijn met het minen van nieuwe bitcoins.

Conclusie

Het Byzantine generals problem benadrukt de uitdaging van het bereiken van consensus in een gedecentraliseerd netwerk waar deelnemers elkaar niet kunnen vertrouwen. Met behulp van Byzantine Fault Tolerance kunnen blockchains als Bitcoin toch functioneren en veilig blijven, zolang de meerderheid van de deelnemers eerlijk handelt. Hierdoor zijn decentrale systemen veerkrachtiger tegen storingen en aanvallen dan veel gecentraliseerde alternatieven.

Over Finst

Finst is een van de toonaangevende cryptocurrency-aanbieders in Nederland en biedt een eersteklas investeringsplatform samen met institutionele veiligheidsnormen en ultra-lage handelskosten. Finst wordt geleid door het ex-core team van DEGIRO en is geregistreerd als aanbieder van cryptodiensten bij De Nederlandsche Bank (DNB). Finst biedt een volledig pakket aan crypto-diensten, waaronder handel, bewaring, fiat on/off ramp en staking voor zowel particuliere als institutionele beleggers.

Het cryptoplatform dat je geweldig gaat vinden

We zijn hier om je de tools, inspiratie en ondersteuning te geven die je nodig hebt om een betere investeerder te worden.