Suchen

Definition Byzantinische Fehlertoleranz (BFT) Was ist Byzantinische Fehlertoleranz?

| Autor / Redakteur: Chrissikraus / Peter Schmitz

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: gemeinfrei / Pixabay )

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. Außerdem ist bei einem verteilten Netzwerk 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).

(ID:46664014)