Zum Hauptinhalt springen
Change page

Konsensmechanismen

Der Begriff 'Konsensmechanismus' wird umgangssprachlich oft verwendet, um sich auf Protokolle wie Proof-of-Stake, Proof-of-Work oder den Autoritätsnachweis (PoA) zu beziehen. Dies sind jedoch nur Komponenten in Konsensmechanismen, die vor schützen. Konsensmechanismen sind der komplette Stack an Ideen, Protokollen und Anreizen, die es einer verteilten Gruppe von Nodes ermöglichen, sich auf den Zustand einer Blockchain zu einigen.

Voraussetzungen

Um diese Seite besser zu verstehen, empfehlen wir Ihnen, zuerst unsere Einführung in Ethereum zu lesen.

Was ist Konsens?

Unter Konsens verstehen wir, dass eine allgemeine Übereinstimmung erzielt wurde. Stellen Sie sich eine Gruppe von Leuten vor, die ins Kino gehen. Wenn es keine Meinungsverschiedenheiten über die vorgeschlagene Filmauswahl gibt, ist ein Konsens erreicht. Gibt es Uneinigkeit, muss die Gruppe über Mittel verfügen, um zu entscheiden, welchen Film sie sich ansehen möchte. In extremen Fällen wird sich die Gruppe letztendlich aufteilen.

In Bezug auf die Ethereum-Blockchain ist der Prozess formalisiert, und das Erreichen eines Konsenses bedeutet, dass mindestens 66 % der Nodes im Netzwerk über den globalen Zustand des Netzwerks einig sind.

Was ist ein Konsensmechanismus?

Der Begriff Konsensmechanismus bezieht sich auf den gesamten Stack an Protokollen, Anreizen und Ideen, die es einem Netzwerk von Nodes ermöglichen, sich auf den Zustand einer Blockchain zu einigen.

Ethereum verwendet einen auf Proof-of-Stake basierenden Konsensmechanismus, der seine kryptoökonomische Sicherheit aus einer Reihe von Belohnungen und Strafen bezieht, die auf das von Stakern gesperrte Kapital angewendet werden. Diese Anreizstruktur ermutigt einzelne Staker, ehrliche Validatoren zu betreiben, bestraft diejenigen, die dies nicht tun, und verursacht extrem hohe Kosten für einen Angriff auf das Netzwerk.

Dann gibt es ein Protokoll, das regelt, wie ehrliche Validatoren ausgewählt werden, um Blöcke vorzuschlagen oder zu validieren, Transaktionen zu verarbeiten und für ihre Sicht auf die Spitze der Chain abzustimmen. In den seltenen Situationen, in denen sich mehrere Blöcke an derselben Position nahe der Spitze der Chain befinden, gibt es einen Fork-Choice-Mechanismus, der die Blöcke auswählt, die die 'schwerste' Chain bilden, gemessen an der Anzahl der Validatoren, die für die Blöcke gestimmt haben, gewichtet nach ihrem gestakten Ether-Guthaben.

Einige Konzepte sind für den Konsens wichtig, die nicht explizit im Code definiert sind, wie z. B. die zusätzliche Sicherheit, die durch eine potenzielle soziale Out-of-Band-Koordination als letzte Verteidigungslinie gegen Angriffe auf das Netzwerk geboten wird.

Diese Komponenten bilden zusammen den Konsensmechanismus.

Arten von Konsensmechanismen

Basiert auf Proof-of-Work

Wie Bitcoin verwendete Ethereum einst ein auf Proof-of-Work (PoW) basierendes Konsensprotokoll.

Block-Erstellung

Miner konkurrieren darum, neue Blöcke zu erstellen, die mit verarbeiteten Transaktionen gefüllt sind. Der Gewinner teilt den neuen Block mit dem Rest des Netzwerks und verdient etwas frisch geprägtes ETH. Das Rennen gewinnt der Computer, der ein mathematisches Rätsel am schnellsten lösen kann. Dies erzeugt die kryptografische Verbindung zwischen dem aktuellen Block und dem vorhergehenden Block. Das Lösen dieses Rätsels ist die Arbeit (Work) in „Proof-of-Work“. Die kanonische Chain wird dann durch eine Fork-Choice-Regel bestimmt, die die Menge an Blöcken auswählt, für deren Mining die meiste Arbeit aufgewendet wurde.

Sicherheit

Das Netzwerk wird durch die Tatsache sicher gehalten, dass man 51 % der Rechenleistung des Netzwerks benötigen würde, um die Chain zu betrügen. Dies würde so enorme Investitionen in Ausrüstung und Energie erfordern; man würde wahrscheinlich mehr ausgeben, als man gewinnen würde.

Mehr zu Proof-of-Work

Basiert auf Proof-of-Stake

Ethereum verwendet nun ein auf Proof-of-Stake (PoS) basierendes Konsensprotokoll.

Block-Erstellung

Validatoren erstellen Blöcke. In jedem Slot wird zufällig ein Validator als Block-Proposer ausgewählt. Ihr Konsens-Client fordert ein Bündel von Transaktionen als 'Ausführungs-Payload' von ihrem gekoppelten Ausführungsclient an. Sie verpacken dies in Konsensdaten, um einen Block zu bilden, den sie an andere Nodes im Ethereum-Netzwerk senden. Diese Blockproduktion wird in ETH belohnt. In seltenen Fällen, in denen mehrere mögliche Blöcke für einen einzelnen Slot existieren oder Nodes zu unterschiedlichen Zeiten von Blöcken erfahren, wählt der Fork-Choice-Algorithmus den Block aus, der die Chain mit dem größten Gewicht an Attestierungen bildet (wobei das Gewicht die Anzahl der attestierenden Validatoren ist, skaliert nach ihrem ETH-Guthaben).

Sicherheit

Ein Proof-of-Stake-System ist kryptoökonomisch sicher, da ein Angreifer, der versucht, die Kontrolle über die Chain zu übernehmen, eine massive Menge an ETH zerstören muss. Ein System von Belohnungen bietet einzelnen Stakern einen Anreiz, sich ehrlich zu verhalten, und Strafen schrecken Staker davon ab, böswillig zu handeln.

Mehr zu Proof-of-Stake

Ein visueller Leitfaden

Sehen Sie sich mehr zu den verschiedenen Arten von Konsensmechanismen an, die auf Ethereum verwendet werden:

Understanding blockchain consensus mechanisms

An explainer covering the core consensus mechanisms used in blockchains, and how they enable decentralized networks to agree on the state of transactions without a central authority.

Mit Transkript ansehen 

Sybil-Resistenz & Chain-Auswahl

Proof-of-Work und Proof-of-Stake allein sind keine Konsensprotokolle, werden aber der Einfachheit halber oft als solche bezeichnet. Sie sind eigentlich Sybil-Resistenz-Mechanismen und Selektoren für Blockautoren; sie sind eine Möglichkeit zu entscheiden, wer der Autor des neuesten Blocks ist. Eine weitere wichtige Komponente ist der Chain-Auswahl-Algorithmus (auch Fork-Choice-Algorithmus genannt), der es Nodes ermöglicht, in Szenarien, in denen mehrere Blöcke an derselben Position existieren, einen einzigen korrekten Block an der Spitze der Chain auszuwählen.

Sybil-Resistenz misst, wie sich ein Protokoll gegen einen Sybil-Angriff behauptet. Die Resistenz gegen diese Art von Angriff ist für eine dezentrale Blockchain unerlässlich und ermöglicht es, Miner und Validatoren basierend auf den eingesetzten Ressourcen gleichermaßen zu belohnen. Proof-of-Work und Proof-of-Stake schützen davor, indem sie die Benutzer dazu zwingen, viel Energie aufzuwenden oder viele Sicherheiten zu hinterlegen. Diese Schutzmaßnahmen sind eine wirtschaftliche Abschreckung gegen Sybil-Angriffe.

Eine Chain-Auswahlregel wird verwendet, um zu entscheiden, welche Chain die „richtige“ Chain ist. Bitcoin verwendet die Regel der „längsten Chain“, was bedeutet, dass die längste Blockchain diejenige ist, die der Rest der Nodes als gültig akzeptiert und mit der er arbeitet. Bei Proof-of-Work-Chains wird die längste Chain durch die gesamte kumulative Proof-of-Work-Schwierigkeit der Chain bestimmt. Ethereum verwendete früher ebenfalls die Regel der längsten Chain; da Ethereum nun jedoch auf Proof-of-Stake läuft, wurde ein aktualisierter Fork-Choice-Algorithmus eingeführt, der das 'Gewicht' der Chain misst. Das Gewicht ist die kumulierte Summe der Stimmen der Validatoren, gewichtet nach den gestakten Ether-Guthaben der Validatoren.

Ethereum verwendet einen Konsensmechanismus namens Gasper, der Casper FFG Proof-of-Stake (opens in a new tab) mit der GHOST-Fork-Choice-Regel (opens in a new tab) kombiniert.

Weiterführende Literatur

Kennen Sie eine Community-Ressource, die Ihnen geholfen hat? Bearbeiten Sie diese Seite und fügen Sie sie hinzu!