Seit der Einführung von Bitcoin im Jahr 2008 als elektronisches Peer-to-Peer-Geldsystem wurden viele andere Kryptowährungen geschaffen, jede mit einem spezifischen Mechanismus. Aber das einzige Element, mit dem fast alle Kryptowährungen verbunden sind, ist die Blockchain als Hauptelement ihrer Architektur.
Mit wenigen Ausnahmen ist die Blockchain bewusst dezentralisiert und fungiert als digitales Hauptbuch, das von einem verteilten Netzwerk von Computerknoten verwaltet wird. Aus diesem Grund hat die Blockchain-Technologie die Schaffung vertrauenswürdiger Wirtschaftssysteme ermöglicht, in denen transparente und zuverlässige Finanztransaktionen ohne die Notwendigkeit von Zwischenhändlern durchgeführt werden können. Kryptowährung wird als praktikable Alternative zu traditionellen Bank- und Zahlungssystemen angesehen, die stark auf Vertrauen angewiesen sind.
Wie bei den meisten verteilten Computersystemen müssen sich die Teilnehmer eines Kryptowährungsnetzwerks regelmäßig über den aktuellen Status der Blockchain einigen, und das nennen wir Konsens erreichen. Es ist jedoch keine leichte Aufgabe, auf sichere und vertrauenswürdige Weise einen Konsens über ein verteiltes Netzwerk zu erzielen.
Wie kann also ein verteiltes Netzwerk von Computerknoten einer Entscheidung zustimmen, wenn einige der Knoten theoretisch ausfallen oder unehrlich handeln? Dies ist eine grundlegende Frage zum Problem der sogenannten byzantinischen Generäle, aus der das Konzept der byzantinischen Toleranz hervorgegangen ist.
Was ist das Problem der byzantinischen Generäle?
Kurz gesagt: Das Problem der byzantinischen Generäle wurde 1982 als logisches Dilemma geprägt, das veranschaulicht, wie eine Gruppe byzantinischer Generäle Kommunikationsprobleme haben kann, wenn sie versucht, sich auf den nächsten Schritt zu einigen.
Das Dilemma besteht darin, dass jeder General seine eigene Armee hat und sich jede Gruppe an einem anderen Ort in der Stadt befindet, um sie anzugreifen. Generäle müssen entweder einem Angriff oder einem Rückzug zustimmen. Es spielt keine Rolle, ob sie angreifen oder sich zurückziehen, solange alle Generäle zu einem Konsens kommen, d. h. eine gemeinsame Entscheidung treffen, um diese konsequent umzusetzen.
Daher können wir folgende Ziele in Betracht ziehen:
Jeder General muss entscheiden: Angriff oder Rückzug (ja oder nein);
Sobald eine Entscheidung getroffen wurde, kann sie nicht mehr geändert werden.
Alle Generäle müssen sich einig sein und die gleiche Entscheidung treffen und diese synchron umsetzen.
Die oben genannten Kommunikationsprobleme sind auf die Tatsache zurückzuführen, dass ein General nur über per Kurier versandte Nachrichten mit anderen kommunizieren kann. Daher besteht das Hauptproblem bei byzantinischen Generälen darin, dass Nachrichten irgendwie verzögert werden, verloren gehen oder zerstört werden können.
Selbst wenn die Nachricht erfolgreich zugestellt wurde, können darüber hinaus einer oder mehrere Generäle (aus welchen Gründen auch immer) böswillig handeln und eine betrügerische Nachricht senden, um die anderen Generäle zu verwirren, was zu einem Gesamtausfall führt.
Wenn dieses Dilemma auf den Blockchain-Kontext angewendet wird, stellt jeder General einen Netzwerkknoten dar, und diese Knoten müssen einen Konsens über den aktuellen Zustand des Systems erzielen. Mit anderen Worten: Eine Mehrheit der Teilnehmer eines verteilten Netzwerks muss zustimmen und die gleiche Aktion ausführen, um einen vollständigen Ausfall zu vermeiden.
Daher besteht die einzige Möglichkeit, in solchen verteilten Systemen einen Konsens zu erreichen, darin, mindestens ⅔ oder mehr zuverlässige und ehrliche Netzwerkknoten zu haben. Das heißt, wenn ein großer Teil des Netzwerks beschließt, böswillig zu handeln, ist das System anfällig für Fehler und verschiedene Angriffe (z. B. einen 51-Prozent-Angriff).
Byzantinische Fehlertoleranz (BFT)
Kurz gesagt ist Byzantine Fault Tolerance (BFT) eine Eigenschaft eines Systems, das in der Lage ist, einer Klasse von Fehlern standzuhalten, die aufgrund von Byzantine Generals-Problemen auftreten. Dies bedeutet, dass das BFT-System auch dann weiter betrieben werden kann, wenn einige der Knoten ausfallen oder böswillig handeln.
Es gibt mehr als eine mögliche Lösung für das Problem der byzantinischen Generäle und daher mehrere Möglichkeiten, ein BFT-System aufzubauen. Ebenso gibt es verschiedene Blockchain-Ansätze, um byzantinische Fehlertoleranz zu erreichen, und das bringt uns zu sogenannten Konsensalgorithmen.
Blockchain-Konsensalgorithmus
Wir können einen Konsensalgorithmus als den Mechanismus definieren, durch den ein Blockchain-Netzwerk einen Konsens erzielt. Am gebräuchlichsten sind Proof of Work (PoW) und Proof of Stake (PoS). Aber wir schauen uns Bitcoin als Beispiel an.
Während das Bitcoin-Protokoll die Grundregeln des Systems vorschreibt, bestimmt der PoW-Konsensalgorithmus, wie diese Regeln befolgt werden, um einen Konsens zu erzielen (z. B. bei der Überprüfung und Bestätigung von Transaktionen).
Obwohl das Konzept des Proof of Work älter ist als die Kryptowährung selbst, entwickelte Satoshi Nakamoto eine modifizierte Version als Algorithmus, der die Erstellung von Bitcoin als BFT-System ermöglichte.
Bitte beachten Sie, dass der PoW-Algorithmus nicht zu 100 % tolerant gegenüber byzantinischen Fehlern ist, sich PoW jedoch aufgrund des teuren Mining-Prozesses und der zugrunde liegenden kryptografischen Techniken als einer der sichersten und zuverlässigsten auf der Blockchain erwiesen hat. In diesem Sinne wird der von Satoshi Nakamoto entwickelte Proof-of-Work-Konsensalgorithmus von vielen als eine der genialsten Lösungen für die byzantinischen Fehler angesehen.
Abschluss
Das Problem der byzantinischen Generäle ist ein faszinierendes Dilemma, das schließlich zur Entstehung von BPT-Systemen führte, die in einer Vielzahl von Systemen weit verbreitet sind. Über die Blockchain-Branche hinaus umfassen mehrere Anwendungsfälle für BFT-Systeme die Luftfahrt, den Weltraum und die Kernenergie.
Im Zusammenhang mit Kryptowährungen ist eine effiziente Netzwerkkommunikation zusammen mit einem guten Konsensmechanismus für jedes Blockchain-Ökosystem von entscheidender Bedeutung. Die Gewährleistung der Sicherheit dieser Systeme ist eine fortlaufende Anstrengung, und bestehende Konsensalgorithmen müssen noch einige Hindernisse überwinden (z. B. Skalierbarkeit). PoW und PoS sind jedoch sehr interessante BFT-Ansätze und ermutigen potenziell interessierte Anwendungen sicherlich dazu, weit verbreitete innovative Technologien zu übernehmen.

