Definition „Byzantine Fault Tolerance“ Was ist Byzantinische Fehlertoleranz?

Von chrissikraus

Die byzantinische Fehlertoleranz (BFT) ist ein entscheidendes Element bei der Konsensfindung und spielt somit auch für die verschiedenen Konsensmechanismen für Blockchains eine wichtige Rolle. Die BFT hilft den Teilnehmern eines Netzwerks dabei, sich trotz widersprüchlicher oder fehlerhafter Meldungen auf eine korrekte Version der Blockchain zu einigen.

Systeme wie die Blockchain können Fehler nie ausschließen. Daher ist es wichtig, dass sie Methoden besitzen, um einen Konsens über die Gültigkeit eines Blocks oder einer Blockchain finden zu können.
Systeme wie die Blockchain können Fehler nie ausschließen. Daher ist es wichtig, dass sie Methoden besitzen, um einen Konsens über die Gültigkeit eines Blocks oder einer Blockchain finden zu können.
(Bild: PagDev / Pixabay)
div class="inf-teaserbox-var-1" style="width: 60%; float: right; margin-left: 15px; margin-bottom: 15px">
eBook Blockchain
eBook „Blockchain“
(Bild: Dev-Insider)

E-Book zum Thema

Unser eBook „Blockchain“ umreißt interessante Blockchain-Technologien und geht näher auf die Ethereum-Plattform ein.

Die byzantinische Fehlertoleranz oder Byzantine Fault Tolerance (BFT) ist die Fähigkeit eines Systems, trotz einer gewissen Fehlerquote zu einem eindeutigen, mehrheitlich bestimmten Ergebnis zu kommen. Systeme wie Blockchain können nie ausschließen, dass es Teilnehmer gibt, die das System für ihre Zwecke ausbeuten wollen, z. B. durch die bewusste Manipulation von Transaktionen und Blöcken.

Bei einem verteilten Netzwerk ist außerdem davon auszugehen, dass hin und wieder einige Nachrichten verloren gehen, z. B. durch fehlerhafte Netzwerkverbindungen. Daher ist es wichtig, dass solche Systeme trotz dieser Risiken einen Konsens darüber finden können, welche Version eines Blocks oder einer Blockchain die gültige, unmanipulierte Variante ist.

Byzantinische Generäle: ein logisches Dilemma

Die byzantinische Fehlertoleranz hat sich aus einem logischen Dilemma aus dem Jahr 1982 entwickelt. In dem Gedankenexperiment wird thematisiert, dass die Kommunikation ein großes Problem sein kann, wenn eine Gruppe sich gleichzeitig auf den nächsten Schritt einigen möchte.

In dem Dilemma sollen sich mehrere byzantinische Generäle darauf einigen, eine Stadt entweder anzugreifen oder den Rückzug ihrer Armeen zu befehlen. Jeder General muss sich für einen Zug entscheiden und darf seine Entscheidung nicht mehr rückgängig machen. Damit der nächste Schritt Erfolg hat, müssen zudem alle Generäle die gleiche Entscheidung treffen und zeitgleich handeln.

Die Generäle kommunizieren über einen Kurier und es besteht das Risiko, dass Nachrichten unterwegs verloren gehen oder sich verzögern. Außerdem besteht die Möglichkeit, dass ein General aus eigenen Interessen manipulative Nachrichten versendet. Das Dilemma wirft also die Frage auf: Wie lässt sich eine gemeinsame Entscheidung treffen, obwohl die Kommunikation zwischen den Beteiligten fehleranfällig ist?

Der byzantinische Fehler

Ein byzantinischer Fehler ist in der Informatik ein Fehler, bei dem ein System unerwartet diverse falsche Verhaltensmuster zeigt. Am Beispiel der Generäle und Kuriere könnte das z. B. das Versenden einer bewusst falschen Nachricht oder der Verlust einer Nachricht sein.

Blockchain und die byzantinische Fehlertoleranz

Durch den verteilten Charakter von Blockchain lässt sich nie ausschließen, dass byzantinische Fehler auftreten. Daher ist in die meisten Blockchain-Anwendungen eine gewisse Fehlertoleranz integriert und es muss nur die Mehrheit der Teilnehmer einer Aktion zustimmen, damit diese als gültig anerkannt wird. Damit die byzantinische Fehlertoleranz zum gewünschten Ergebnis führt, müssen allerdings die Mehrheit der Teilnehmer ehrlich sein – denn wenn mehr als die Hälfte der Knoten manipulierte Nachrichten sendet, kann es durchaus passieren, dass fehlerhafte Blöcke als korrekt akzeptiert werden.

Hier spricht man von einem 51-Prozent-Angriff: Mindestens 51 Prozent der Teilnehmer sendet gefälschte Informationen und überwältigt so das System. Konsensmechanismen sollen diese Art von Angriff schwer bis unmöglich machen, indem sie die Teilnahme an der Abstimmung mit einem relativ hohen Aufwand verbinden (z. B. Rechenleistung, Vermögen).

E-Book zum Thema

Blockchain

eBook Blockchain
eBook „Blockchain“
(Bild: Dev-Insider)

Um die Möglichkeiten von Blockchains einschätzen zu können, muss man verstehen, was eine solche Kette von Blöcken überhaupt im Stande ist zu leisten, und wie sie das realisiert.

Dieses eBook umfasst die folgenden Themen:

  • Blockchain: Definition, Funktionen und Visionen
  • Ethereum: Schlaue Verträge und Standardisierung
  • Die spannendsten Projekte rund um Blockchain

(ID:46664014)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung