Konsens-Mechanismus

Satoshi Nakamoto hat 2009 das heutige Finanzsystem mit seinem Bitcoin Whitepaper nachhaltig verändert. Bis zu diesem Zeitpunkt scheiterten Versuche digitale Währungen zu erschaffen am Problem der doppelten Ausgabe, da digitale Token leicht kopiert oder gefälscht werden konnten. Um Transaktionen über das Internet dennoch zu ermöglichen, ist ein großer Bankenapparat notwendig, der unter ständiger Aufsicht und Kontrolle steht. Hierbei werden in zentralen Systemen Geldeingänge und -ausgänge der Nutzer ordentlich dokumentiert.

Bitcoin löste dieses Problem der doppelten Ausgabe hingegen auf Software-Ebene. Zunächst wird anstelle der zentralen Datenbank ein verteiltes, dezentrales Peer-to-Peer Netzwerk und ein universeller Ledger (Hauptbuch, Register) implementiert. Dieser Ledger ähnelt dem traditionellen Bargeldsystem, indem Transaktionen tatsächlich von Person-zu-Person durchgeführt werden können, ohne dass überwachende und ausführende Instanzen (Banken) notwendig wären. Dieses chronologisch geführte Transaktionsregister mit Zeitstempel wird nicht zentral, sondern auf jeder teilnehmenden Node (Netzwerk-Knoten) individuell gespeichert. Ein Datenblock (mit neuen Transaktionen) nach dem anderen wird hinzugefügt und mit dem vorhergehenden Block kryptographisch versiegelt. Deshalb spricht man hierbei von einer Kette aneinandergereihter Datenblöcke – der Blockchain.

Schlägt der Miner¹ einen neuen Block vor, so entscheidet jede Node über dessen Validität und den damit einhergehenden Transaktionen selbst, indem es die Historie der Blockchain mit den neuen Transaktionen vergleicht. Das Netzwerk übernimmt somit die Ausführungs- und Überwachungsfunktion der Banken und Aufsichtsbehörde.

Bitcoin löste des Weiteren die Schwierigkeit der Endgültigkeit (ist eine Transaktion endgültig oder kann sie rückgängig gemacht werden) in anonymen, dezentralen Systemen, indem es die sogenannten Sibyl-Angriffe unterbindet. Netzwerke, die sich durch die Anzahl an Knoten definieren, werden angegriffen, indem sich einzelne Knoten als eine Vielzahl derer ausgeben. Wird eine Mehrheit im Netzwerk erreicht, fällt dieses unter die Kontrolle des Angreifers. Da  Bitcoin jedoch über die Rechenleistung defininiert wird und nicht über die Anzahl der Knoten im Netz, werden Sibyl-Angriffe dadurch ausgehebelt.

Um diese beiden Probleme in einem verteilten, sich konstant weiterentwickelnden System zu lösen, ist die Definition eines globalen Status notwendig. Dazu ist ein effizientes Protokoll erforderlich, mit welchem sich alle beteiligten Nodes auf denselben Status einigen und ihre lokalen Ansichten entsprechend aktualisieren können – dies geschieht durch Konsens-Mechanismen². Wahrscheinlich ist der Proof of Work, durch den ein vertrauenswürdiger und dezentraler Konsens ermöglicht wird, das wohl bemerkenswerteste Funktionsprinzip im Bitcoin Whitepaper.

Proof of Work (POW)

Das Konzept Proof of Work wurde 1992 von Cynthia Dwork und Moni Naor für die Eindämmung von SPAM-Emails vorgeschlagen. 1997 hat Adam Back³ POW in Hashcash eingesetzt, um DoS-Angriffe (Denial of Service) zu unterbinden, bei denen ein Netzwerk durch viele Serveranfragen ausgebremst oder zum Erliegen gebracht wird.

POW findet bei Kryptowährungen wie Bitcoin oder Ethereum Anwendung, um zu determinieren, wer dem Netzwerk den nächsten Block hinzufügen darf und dafür entlohnt wird. Prinzipiell⁵ ist es jedem Netzwerkteilnehmer möglich, Blöcke einzureihen. Allerdings ist dafür ein Beweis einer erbrachten Arbeit (finden eines bestimmten mathematischen Wertes) und dessen Schwierigkeitsnachweis notwendig, damit die individuellen Nodes diese Blöcke als legitim akzeptieren. Der erste Miner, der einen eindeutigen Hash-Wert findet und einen Transaktionsblock validiert, wird durch eine Prämie (neu erzeugte Bitcoin oder Ethereum) und die angefallenen Transaktionsgebühren entlohnt. Diese einfache, aber rechenintensive Computerleistung⁶ kommt heutzutage mit immensen Energieanforderungen und spezialisierter Hardware daher.

The basic concept behind proof of work is simple: one party (usually called the prover) presents the result of a computation which is known to be hard to compute, but easy to verify, and by verifying the solution anyone else can be sure that the prover performed a certain amount of computational work to generate the result.“

Vitalik Buterin, Bitcoin Magazine 2013

Während Sybil-Angriffe (Kontrolle des Netzwerks durch das Erstellen vieler, falscher Identitäten) daher unverhältnismäßig teuer sind, kann das Netzwerk hingegen einfach und wenig rechenintensiv die Integrität dieser Blockvorschläge überprüfen. Man könnte POW also als Sybil-Resistenzschema bezeichnen. Durch diese Sybil-Resistenz wird Finalität oder Unveränderlichkeit von Transaktionen erreicht. Diese Endgültigkeit ist wiederum erforderlich, um Doppelausgaben zu verhindern. 
Werden Blöcke zeitgleich vorgeschlagen, kann es kurzzeitig zu verschiedenen, legitimen Ketten kommen. In diesem Fall kommt der 
Nakamoto-Konsens zur Anwendung, der besagt, dass bei mehreren Ketten diejenige mit der höchsten Schwierigkeit Gültigkeit besitzt. Aufgrund dieser statischen Regel (Nakamoto-Konsens) ist daher keine Netzwerkkommunikation zwischen den Teilnehmern erforderlich.

Daher spricht man eher von Konsens-Mechanismen oder Konsens-Protokollen.

Proof of Stake (POS)

Proof of Stake ist ein weiterer Mechanismus, um Sybil-Angriffe zu verhindern. Zum ersten Mal Erwähnung findet das Prinzip 2011 als ein Forum-Besucher namens QuantumMechanic POS als Alternative zu POW vorstellte. Anstelle auf externe Ressourcen, wie den Energieverbrauch und die Anschaffung von teurer Hardware, zu setzen, versucht POS diese Attacken mit internen Ressourcen, wie der eigenen, zugrunde liegenden Kryptowährung, zu entgegnen.

Rather than requiring the prover to perform a certain amount of computational work, a proof of stake system requires the prover to show ownership of a certain amount of money. The reason why Satoshi could not have done this himself is simple: before 2009, there was no kind of digital property which could securely interact with cryptographic protocols.

Vitalik Buterin, Bitcoin Magazine 2013

Vitalik Buterin beschreibt den Unterschied bzgl. des Energieverbrauches in beiden Systemen wie folgt:

Die Betreiber von Nodes (Netzwerk-Knoten) übertragen einen Teil ihres Vermögens (Stake) in einen Smart Contract und frieren es somit effektiv ein. Das Lösen des Rätsels geschieht nun nach dem Zufallsprinzip, wobei jedes Coin (Recheneinheit) einem Los in einem Lostopf entspricht. Die Gewinnchance steigt hier proportional mit der eingesetzten (gestakten) Kryptowährung. Bei Betrugsversuch wird das Stake vernichtet. Falschmünzer werden somit in beiden Systemen (POW und POS) zur Rechenschaft gezogen.

Grundsätzlich kann ein Netzwerk durch ein Konsens-Protokoll dann synchronisiert werden, wenn die durchschnittliche Blockvorschlagszeit größer als die Netzwerklatenz (die Zeit zum Verarbeiten von Information im gesamten Netzwerk) ist. Das bedeutet, dass das Netzwerk genug Zeit haben muss, um an allen Knotenpunkten Informationen verarbeiten zu können, bevor ein neuer Block mit neuen Informationen vorgeschlagen bzw. angefügt werden kann. Dann hat das Netzwerk genügend Zeit sich zu synchronisieren.

¹ Durch das Prinzip des Minings können neue Transaktionen dem Proof-of-Work Netzwerk hinzugefügt werden. Die Miner werden für ihre Arbeit entlohnt, bei Betrugsversuchen hingegen bestraft. 

² Es werden unterschiedliche Protokolle bei Blockchain Systemen eingesetzt, um einen globalen Konsens zu erschaffen. Die bekanntesten sind: POW – Proof of Work, POS – Proof of Stake, DPOS – Delegated Proof of Stake, DAG – Directed Acyclic Graph. 

³ CEO von Blockstream, einer Firma, die Produkte im Bereich Blockchain entwickelt und einen Großteil der Entwickler der freien Bitcoin Core Software beschäftigt. Adam Back wurde für seine Ideen zu Hashcash im Bitcoin Whitepaper erwähnt. 

Ethereum setzt wie Bitcoin momentan auf den POW-Mechanismus, wobei schon vor einiger Zeit entschieden wurde das Konsens-Protokoll zu wechseln und stattdessen POS zu implementieren. Das Herzstück der Blockchain im laufenden Betrieb zu ändern muss jedoch mit Vorsicht geschehen. Deshalb wird im Januar 2020 zunächst ein Hybrid-System eingesetzt bis im Laufe der Zeit POW durch POS ersetzt werden kann. Vitalik Buterin hat über die Vorteile von Proof of Stake bereits 2013 geschrieben, allerdings war das System damals noch nicht genügend erprobt. NXT war 2013 das erste Projekt, das ein reines POS-System implementierte. 

Der erste Miner, der einen eindeutigen Hash-Wert findet und einen Transaktionsblock validiert, wird durch eine Prämie (neu erzeugte Bitcoin oder andere Kryptowährung) und die angefallenen Transaktionsgebühren entlohnt. Während es zu Bitcoins Anfängen noch relativ einfach war, die erforderliche Schwierigkeit zu erreichen, sind heute enorme Ressourcen notwendig. Das liegt daran, dass sich die Schwierigkeit der Leistungsfähigkeit der eingesetzten Geräte anpasst. Bitcoins Netzwerk produziert einen Block in einem anvisierten Zeitabstand von 10 Minuten. Die Schwierigkeit steigt oder fällt proportional zur Blockzeit, das bedeutet: je wertvoller das Netzwerk, desto höher die eingesetzten Ressourcen und je höher die eingesetzten Ressourcen, desto schwerer das Rätsel.  

⁶ Spezielle Hardware (ASIC-Miner) errechnen Hunderttausend Hash-Werte pro Sekunde (Hash/s oder Solution pro Sekunde). Diese werden demnach mit TH/s (1000 Hash/s) angegeben. Somit wird Energie in Hash-Power umgewandelt. Je größer die Hashing-Power, desto wahrscheinlicher ist es Wettrennen um den nächsten Blockvorschlag zu gewinnnen. Wird das Rennen jedoch nicht häufig genug gewonnen, errechnet sich durch den hohen Energieaufwand eine negative Bilanz.