Einer der entscheidenden Aspekte einer öffentlichen Blockchain ist, dass jeder Informationen hinzufügen kann. Bevor sie jedoch hinzugefügt werden, müssen die Informationen überprüft werden. Alle kooperierenden Knoten im Netzwerk müssen sich auf die Definition von gültigen und ungültigen Informationen einigen. Im Falle von Bitcoin beispielsweise muss ein Konsens darüber bestehen, was eine legitime Transaktion ist. Wenn die neue Information von allen teilnehmenden Knoten im Netzwerk als gültig erachtet wird, dann ist der Konsens erreicht. Dieser Artikel untersucht, wie ein dezentralisiertes Netzwerk einen Konsens durch zwei verschiedene Algorithmen erreichen kann: Proof-of-Work und Proof-of-Stake.
Einen Konsens erreichen
In einer Blockchain werden alle verbundenen Elemente des Netzwerks als Knoten bezeichnet. Die Knoten halten eine Reihe von Regeln ein und respektieren sie. Anhand dieser Regeln einigen sich die Knoten im Netzwerk darauf, welche Transaktionen aufgenommen oder ausgeschlossen werden sollen. Dieser Prozess ermöglicht es der Blockchain, einen Konsens zu erreichen.
In regelmäßigen Abständen wird ein neuer Block mit Transaktionen hinzugefügt und alle Knoten aktualisieren ihre Ansicht des Netzwerks. Anschließend einigen sie sich auf diese aktualisierte Ansicht des Hauptbuchs. Aber die Bestimmung, wer den nächsten Block in einer dezentralen Kette hinzufügen oder erstellen darf, ist nicht trivial.
In einem öffentlichen Blockchain-Netzwerk erstellen die Miner Blöcke, aber die Miner werden nicht kontrolliert oder vordefiniert. Dies macht einen dezentralen Konsensalgorithmus erforderlich. Es gibt zwei beliebte Optionen für einen Konsensalgorithmus: Proof-of-Work und Proof-of-Stake.
Proof-of-Work
Beim Proof-of-Work muss ein Knoten im Netzwerk nachweisen, dass er eine beträchtliche Menge an Arbeit geleistet hat, um die Führung zu übernehmen und einen Block zur Kette hinzuzufügen. Diese "Arbeit" ist das Lösen eines Rechenrätsels, das nur mit "roher Gewalt" gelöst werden kann (der Fachausdruck für ein Problem, für das keine intelligentere Lösung gefunden werden kann). Im Durchschnitt wird in regelmäßigen Abständen eine Lösung gefunden. Im Fall des Bitcoin-Netzwerks besteht das Rätsel darin, einen Hash zu finden.
Was ist ein Hash?Ein Hash-Algorithmus berechnet einen kryptografischen Fingerabdruck einer Eingabe und gibt einen Hash fester Länge aus. Im Zusammenhang mit Kryptowährungen wie Bitcoin werden Transaktionen als Eingabe verwendet, um sie dauerhaft zu machen. Selbst eine geringfügige Änderung in einer einzelnen Transaktion würde den Hashwert erheblich verändern und wäre daher leicht zu erkennen. Bitcoin verwendet SHA-256, was bedeutet, dass die Ausgabe immer eine feste Länge von 256 Bits hat.
Was ist eine Gabel?
Wenn Sie eine Blockchain als eine Reihe von Blöcken betrachten, ist eine Abspaltung eine permanente Abweichung von der vorherigen Version der Blockchain, die durch die Schaffung eines neuen Pfades erzeugt wird. Ein Pfad folgt der neuen Blockchain, während der ursprüngliche Pfad weiterläuft. Eine Fork bedeutet eine radikale Veränderung der Blockchain, da sie zuvor ungültige Blöcke oder Transaktionen für gültig erklärt (oder andersherum). Zum Beispiel eine inkompatible Änderung der Konsensregeln, die die ursprüngliche Kette definiert haben.
Das Hashing-Verfahren
Indem alle zehn Minuten ein Hash gefunden werden soll und die Schwierigkeit der Aufgabe angepasst wird, kann das Bitcoin-Netzwerk mit der steigenden und sinkenden "Hashing-Kapazität", d.h. der Anzahl der Miner, umgehen. Außerdem wird durch die Beibehaltung dieses Zehn-Minuten-Intervalls die Wahrscheinlichkeit verringert, dass zwei Miner gleichzeitig eine Lösung für das Rätsel finden und damit eine Gabelung in der Kette verursachen. Der Schwierigkeitsgrad wird alle 2016 Blöcke angepasst, basierend auf der Zeit, die benötigt wurde, um diese zu finden. Wenn die Hashing-Kapazität wächst, verringert sich die Zeit, die benötigt wird, um 2016 Blöcke zu finden, so dass der Schwierigkeitsgrad steigt.

Um Änderungen an einem Block zu verhindern, setzt sich der Hash, den ein Miner zu finden versucht, aus mehreren Komponenten zusammen. Die drei wichtigsten Eingaben sind: der Hash aller Transaktionen in einem Block wird hinzugefügt, ein Link zum vorherigen Block und eine Zufallszahl. Dies verhindert, dass Transaktionen in einem Block zu einem späteren Zeitpunkt geändert werden, dass ein Block mit einem anderen vorherigen Block verknüpft wird und ermöglicht es dem Miner, verschiedene Lösungen für das Rätsel zu generieren. Indem der Wert der Zufallszahl geändert wird, können verschiedene Hashes für dieselbe Eingabe berechnet werden. Wenn ein Schürfer die richtige Zufallszahl findet, dann hat er das Rätsel gelöst und den Block erfolgreich geschürft.
Um das Problem der ungeplanten Forks zu lösen, fügte Satoshi, die mythische Person, die Bitcoin erfunden hat, eine zusätzliche Konsensregel hinzu, die besagt, dass die Knoten die längste Kette als ihre primäre wählen müssen. Die Wahl der längsten Kette verhindert Angriffe. Wenn ein Angreifer über weniger Rechenleistung verfügt als alle anderen Knoten zusammen, kann er mit den ehrlichen Knoten nicht mithalten und hat keinen Einfluss auf das Netzwerk, da diese immer die längste Kette wählen werden, die die ehrliche ist. Dies verhindert, dass Angreifer selektiv Transaktionen oder Blöcke zur Kette hinzufügen können.
Die Wahl eines Hashing-Algorithmus ist wichtig. Damals wählte Satoshi SHA256. Eine typische Wahl für einen Hashing-Algorithmus, aber vielleicht nicht die beste Wahl für Proof-of-Work. Da der SHA256-Algorithmus nicht viel Speicherplatz benötigt, wurde er auf GPUs portiert, später dann auf spezielle Chips, die nur für das Mining von Bitcoin entwickelt wurden, sogenannte ASICs. GPUs können um den Faktor 10 schneller hacken als eine CPU, und ASICs um den Faktor 10 schneller als GPUs.
Da ASICs nicht ohne weiteres verfügbar sind, ist die Zahl der Personen und Organisationen, die derzeit Bitcoin minen, relativ gering. Keine so gute Idee in einem dezentralen Netzwerk. Letztendlich wurde die geringe Anzahl von Minern als so schlecht angesehen, dass andere
Belohnungen
Satoshi hat als Anreiz für die Miner, ihre Arbeit zu verrichten, eine Blockbelohnung vorgesehen. Zusätzlich zu dieser Belohnung erhält ein Miner alle Transaktionsgebühren aus den Transaktionen, die in dem von ihm geschürften Block enthalten sind. Mit der Zeit werden die Gebühren die Blockbelohnung als Anreiz für Miner ersetzen, da sich die Blockbelohnung alle 210.000 Blöcke halbiert.
Ein allgemeiner Nachteil, der alle Proof-of-Work-Netzwerke betrifft, ist der verschwenderische Stromverbrauch. Ein Hauptgrund für den Stromverbrauch ist nicht das Hashing selbst, sondern der Preis der Währung. Im Fall von Bitcoin beläuft sich die Blockbelohnung plus Transaktionsgebühren derzeit auf etwa 14 BTC, also mehr als 100.000 Dollar. Wenn ein Miner also beispielsweise weniger als diesen Betrag ausgibt, um das Hashing-Rätsel zu lösen, ist das sinnvoll. Ein Miner muss in ASICs und Strom investieren, um sie zu betreiben. Ein Anstieg des Preises für einen einzelnen Bitcoin erhöht den Stromverbrauch, da die ASICs bisher nur selten verbessert wurden.
Proof-of-Stake
Ein alternativer Konsensalgorithmus für Proof-of-Work ist Proof-of-Stake. Ein Proof-of-Stake beruht nicht auf Hashing und verbraucht daher viel weniger Strom. Ethereum hat einen Proof-of-Stake namens Casper implementiert, der eine spezielle Transaktion definiert, bei der ein Nutzer eine bestimmte Menge an Ether sperrt.
Es gibt zwei Optionen, die derzeit für Casper geprüft werden. Bei der einfachsten Option wird ein zufälliger Validierer aus dem Pool der Nutzer ausgewählt, die eine bestimmte Menge an Ether gesperrt haben. Dieser Prüfer kann dann einen neuen Block zur längsten Kette hinzufügen. Abhängig von der Menge an Ether, die der Nutzer eingesetzt hat, hat er eine höhere oder niedrigere Wahrscheinlichkeit, als Validierer ausgewählt zu werden.
Da die Wahl der längsten Kette für das Erreichen eines Konsenses im Netzwerk entscheidend ist, muss der wirtschaftliche Anreiz den Knoten in diese Richtung treiben. Hierin liegt das Problem mit dem Proof-of-Stake. Die Entwicklung eines solchen Anreizes ist viel komplizierter als das Hashing-Rätsel des Proof-of-Work. Es gibt mehrere Szenarien, in denen es im besten Interesse eines Knotens ist, einen Block zu allen Ketten hinzuzufügen, anstatt nur die längste zu wählen, da er so das Risiko, die falsche zu wählen, verringert.
Im Vergleich zu Proof-of-Work ist das Hinzufügen eines Blocks zu mehreren Chains im Grunde kostenlos, da es kein Hashing erfordert. Allerdings hat er damit zu einer Situation beigetragen, in der mehrere Ketten nicht konvergieren. Entscheidet sich ein Knoten in einem Proof-of-Work-Netzwerk hingegen dafür, einen Block zu mehr als einer Kette hinzuzufügen, muss er seine Rechenleistung für diese Blöcke aufteilen und verringert damit die Wahrscheinlichkeit, dass er einen Block zur längsten Kette hinzufügen kann.
Eine zentralisierte Blockchain
Bei einer zentralisierten Blockchain kann das Unternehmen, das sie betreibt, im Voraus festlegen, welche Knoten die Miner sind. So kann jeder der benannten Knoten entscheiden, ob eine Transaktion zu einem Block hinzugefügt wird oder nicht. Dadurch entfällt die Notwendigkeit eines Konsensalgorithmus und auch die Zeit, die für die Bestätigung von Transaktionen benötigt wird, wird erheblich reduziert. XRP ist ein Beispiel für eine zentralisierte Blockchain, die von Ripple betrieben wird. XRP bestätigt Transaktionen innerhalb von vier Sekunden, rasend schnell im Vergleich zu Bitcoin, das (wenn man auf sechs Bestätigungen wartet) mindestens sechzig Minuten braucht.
Fazit
Das Erreichen eines Konsenses in einem dezentralen Netzwerk ist schwierig, aber die von Bitcoin eingeführte Proof-of-Work-Methode macht es möglich. Der verschwenderische Stromverbrauch, der mit Proof-of-Work verbunden ist, macht Proof-of-Stake zu einer brauchbaren Alternative. Allerdings könnte das komplexe Design von Proof-of-Stake auf dem Weg dorthin weitere Probleme verursachen. Die Zentralisierung einer Blockchain löst das Konsensproblem zwar vollständig, gibt aber die Kontrolle an ein einziges Unternehmen ab. Was wird die endgültige Lösung sein? Nur die Zeit wird es zeigen.
Dieser Artikel ist Teil des Berichts Dringende Zukunft - Blockchain.
{{cta('0ff97efd-f9b0-4411-9589-fee669855462')}}

Unsere Ideen
Weitere Artikel
Contact




