Basic Technologies, Emerging Technologies

Konsens-Mechanismen – Einigung in dezentralen Systemen

English verion available on  medium.com.
Damit sich in einem dezentral organisierten System alle Teilnehmer korrekt verhalten, müssen wirtschaftliche Anreize konzipiert werden, welche das Fehlverhalten einzelner Akteure vermeiden. Durch die Blockchain-Technologie sind Personen und Organisationen weltweit dazu in der Lage über eine gemeinsam geführte Transaktionsliste als Netzwerk zusammenzuarbeiten. Um sicherzustellen, dass sich die Netzwerkteilnehmer ehrlich verhalten, werden Transaktionen gemeinsam validiert und gegenseitig überprüft (Voshmgir & Kalinov, 2018). Dabei stellen unterschiedliche Konsens-Mechanismen durch Anreize sicher, dass sich jeder Teilnehmer im Sinne des Netzwerks verhält. Dadurch wird ein sicheres, fehlertolerantes und neutrales System geschaffen, bei dem es sich nicht lohnt, andere zu betrügen. Wie Konsens-Mechanismen funktionieren und welche wirtschaftlichen Anreize dabei gesetzt wird nachfolgend erörtert.
Ein Konsens-Mechanismus ist ein Protokoll, das in einer Blockchain sicherstellt, dass alle Netzwerkknoten miteinander synchronisiert werden. Das Protokoll definiert die Regeln, nach welchen sich die Netzwerkteilnehmer darauf einigen, welche Transaktionen legitim sind und der Blockchain angefügt werden. Am weitesten verbreitet sind dabei der Proof-of-Work (PoW) und Proof-of-Stake(PoS) Konsensus.

Proof-of-Work
Proof-of-Work (PoW) war der erste Konsens-Algorithmus einer Blockchain. Satoshi Nakamoto (2008) hat den PoW-Algorithmus von Back (2002) für den Einsatz in der Bitcoin-Blockchain übernommen. Dem PoW-Algorithmus verdanken wir nicht nur die hohe Sicherheit der Bitcoin Transaktionen, sondern auch die Mining-Aktivitäten und den damit einhergehenden Stromverbrauch. PoW ist bei einer grossen Anzahl Netzwerkknoten ein sehr zuverlässiges aber ineffizientes System zur Validierung von Transaktionen. 

Aufgrund dieser Ineffizienzen arbeiten Forscher aktuell an anderen Möglichkeiten in einem dezentralen System manipulationssicher einen Konsens zu finden. Ein Beispiel dafür ist das Ethereum-Projekt. Durch einen Wechsel von PoW zu PoS soll die Skalierbarkeit und die Effizienz der Smart Contract-Plattform erhöht werden (Whiterspoon, 2018).

Wie funktioniert der PoW?

Im PoW lösen die sogenannten Miner komplexe mathematische Aufgaben, die viel Rechenleistung erfordern. Der Erste, der die Aufgabe löst, erstellt einen Block aus Transaktionen und erhält im Gegenzug eine Belohnung. Je mehr Rechenleistung ein Miner aufbringt, desto grösser ist die Wahrscheinlichkeit, dass er einen Block erstellen kann. (Blockgenic, 2018)
Alle Miner arbeiten simultan an derselben Aufgabe und stehen für deren Lösung im Wettbewerb zueinander. Findet einer der Miner eine Lösung, teilt er diese mit dem gesamten Netzwerk und ein neuer Transaktionsblock wird erstellt. Die übrigen Miner überprüfen die Lösung und derjenige, der den Block gelöst hat erhält dafür eine Belohnung. Er hat bewiesen, Rechenleistung aufgewendet zu haben, um die Aufgabe zu lösen und somit den Block zu erstellen - daher stammt auch der Begriff “Proof-of-Work”. Die Miner versuchen nun den nächsten Transaktionsblock zu lösen, welcher auf dem vorhergehenden basiert. Die Transaktionsblöcke werden dadurch in chronologischer Reihenfolge miteinander verkettet, weshalb man von einer Blockkette spricht - die Blockchain.
Durch die Verkettung der Transaktionsblöcke wird erreicht, dass eine Manipulation der Transaktionen sich wirtschaftlich nicht lohnen kann. Die Miner vertrauen immer der längsten Blockchain, da in diese am meisten Rechenarbeit geflossen ist. Eine Datenmanipulation wird dadurch extrem rechenintensiv und kann nur mit mehr als 50 Prozent der Rechenleistung des gesamten Netzwerks bewerkstelligt werden. Stark dezentralisierte PoW-Blockchains, mit einer grossen Anzahl an Minern können daher als nicht manipulierbar angesehen werden.

Proof-of-Work - in Kürze

  • Transaktion: Neue, nicht verifzierte Transaktionen werden durch die Netzwerkknoten geteilt (Broadcast).
  • Verbinden: Die Miner verbinden sich mit der Sammlung aller Transaktionsdaten (Mempool), um diese zu verifizieren.
  • Validieren: Die Transaktionen werden ausgewählt, validiert und einem Block zugeordnet.
  • Verketten: Die Miner erweitern jeweils die längste Kette, in welche bereits am meisten Rechenleistung geflossen ist.
  • Rätsel: Die Miner lösen das Proof-of-Work-Rätsel bzw. suchen nach einer Lösung (Hash), der auf dem vorherigen Block basiert.
  • Bestätigen: Sobald ein Miner die Aufgabe gelöst hat, teilt er die Lösung mit dem Netzwerk und wird dafür entlohnt. Der Block wird zur Blockchain hinzugefügt.
  • Bildtitel als Hover Effekt eintippen
Proof-of-Stake
Im Gegensatz zu PoW haben in einem PoS-System die Teilnehmer mit dem grössten Vermögen im Netzwerk ein Interesse daran, das Netzwerk aufrechtzuerhalten. Validierer von Transaktionen werden unter Berücksichtigung der Höhe des eingesetzten Vermögens zufällig für die Erstellung von Transaktionsblöcken ausgewählt. Bei einer korrekten Validierung der Transaktionen werden sie im Anschluss dafür entlohnt. (Blockgenic, 2018)
Die Validierung in PoS erfolgt dabei nicht über die Aufwendung von Rechenleistung. Stattdessen verwetten Validatoren ihr Vermögen(Stake) in Form von Tokens darauf, welche Transaktionen korrekt sind. Im Fall von Uneinigkeiten verwenden die Validatoren ihre Token, um darüber abzustimmen, welche Version sie unterstützen wollen. Teilnehmer, die für die falsche Version abstimmen verlieren dabei ihren Einsatz. PoS schafft demnach auf eine andere Art Anreize, damit sich die Netzwerkteilnehmer korrekt verhalten (Whiterspoon, 2018).

  • Einzahlung: In PoS werden Blockersteller als Validierer bezeichnet. Validierer müssen eine Einzahlung (Stake) leisten, um an der Blockerstellung teilzunehmen.
  • Auswahl: Während bei PoW die Validierer im Wettbewerb zueinander stehen, basiert die Auswahl der Validatoren bei PoS auf einer pseudo-zufälligen Funktion unter Berücksichtigung des getätigten Einsatzes.
  • Skalierbarkeit: Im Gegensatz zu PoW reduziert PoS den Energieverbrauch, da nur ein Prüfer zur gleichen Zeit die Transaktionen validiert und dafür keine Rechenleistung benötigt wird.
  • Incentivierung: Anreize sich korrekt zu verhalten werden über den Einsatz von Vermögen und die zugehörige Belohnung respektive Bestrafung generiert.
  • Sicherheit: Sollten Validatoren falsche Transaktionen validieren, so verlieren sie ihren Einsatz. Da dieser Einsatz höher ist als die Belohnung für die korrekte Validierung, gibt es für die Validatoren einen grossen Anreiz, sich im Sinne des Netzwerks zu verhalten.
Don't trust, just verify. (Steven D. Levitt)
Andere Konsens-Mechanismen
Neben PoW und PoS gibt es in der Praxis noch zahlreiche weitere Konsens-Mechanismen respektive Abwandlungen der beiden genannten Funktionen. Beispiele dafür sind:

  • Proof-of-Work (Bitcoin, Ethereum, Ethereum Classic, Litecoin, …)
  • Proof-of-Stake (Ethereum 2.0, Dash, Enigma, …)
  • Delegated Proof-of-Stake (EOS, Lisk, Nano, …)
  • Proof-of-Capacity (Siacoin, Storj)
  • Byzantine fault tolerance (Hyperledger)
  • Proof of authority (VeChain, Corda)

Gemäss einer Untersuchung von Hays (2018) sind unter den Top 100 Kryptowährungen PoW und PoS bzw. eine hybride Lösung aus beiden Mechanismen am weitesten verbreitet. Nachfolgend werden die gängigsten Alternativen kurz erläutert.
  • Bildtitel als Hover Effekt eintippen

Delegated Proof-of-Stake (DPoS)
In DPoS stimmen die Inhaber von Token nicht selbst über die Gültigkeit der Blöcke ab, sondern wählen Vertreter, die die Validierung in ihrem Namen durchführen. In der Regel gibt es in einem DPoS-System zwischen 21-100 gewählte Vertreter. Die Delegierten werden regelmässig gemischt und erhalten den Auftrag, ihre Blöcke einzureichen. (Whiterspoon, 2018)

Proof-of-Authority (PoA)
Proof-of-Authority ist ein Konsensverfahren, bei dem Transaktionen durch genehmigte Nutzer validiert werden - ähnlich wie ein Systemadministrator. Diese Nutzer sind diejenige Instanz, von der andere Knoten ihre Wahrheit beziehen. PoA hat einen hohen Durchsatz von Transaktionen und ist für private Netzwerke optimiert. PoA wird meist nicht in einer öffentlichen Blockchain verwendet, da es sich um eine zentralisierte Lösung handelt. (Whiterspoon, 2018)

Byzantine Fault Tolerance (BFT)

Die byzantinische Fehlertoleranz (BFT) ist die Eigenschaft eines Systems, das in der Lage auch dann zu funktionieren, wenn einige der Knoten ausfallen oder böswillig handeln. In anderen Worten muss die Mehrheit der Teilnehmer innerhalb eines verteilten Netzwerks sich einigen um einen Totalausfall zu vermeiden. Dafür müssen sich mindestens zwei Drittel der Netzwerkknoten ehrlich verhalten. Wenn die Mehrheit des Netzwerks beschliesst, böswillig zu handeln, ist das System angreifbar. (Binance, 2019)
Proof-of-Capacity (PoC)

Bei Proof-of-Capacity werden ähnlich wie bei PoW Lösungen zu einer Aufgabe zur Verkettung von Transaktionsblöcken gesucht. Anstatt Rechenleistung für die Berechnung von kryptografischen Rätseln aufzuwenden, werden mögliche Lösungen auf digitalen Datenspeichern (z.B. Festplatten oder Server) vorab gespeichert. Nachdem ein Speicher geplottet - also mit Lösungen befüllt wurde, kann er am Prozess der Blockerstellung teilnehmen. Die Blockvalidierung erfolgt durch die Suche nach vorgefertigten Lösungen, die sich auf den Datenspeichern befinden. Validatoren mit einer höheren Speicherkapazität finden eher einen Block, da sie mehr Lösungen durchsuchen können. (Binance, 2019)

Quellenverzeichnis
Back, A. (2002). Hashcash - A Denial of Service Counter-Measure. Abgerufen von http://www.Hashcash.Org/Papers/Hashcash.Pdf. 

Binance. (2019, Dezember 30). Byzantinische Fehlertoleranz. Abgerufen 2. Januar 2020, von https://www.binance.vision/de/blockchain/byzantine-fault-tolerance-explained

Blockgenic. (2018, November 10). Different Blockchain Consensus Mechanisms. Abgerufen von https://hackernoon.com/different-blockchain-consensus-mechanisms-d19ea6c3bcd6

Hays, D. (2020, Februar 13). Consensus Mechanisms. Abgerufen von https://cryptoresearch.report/crypto-research/consensus-mechanisms/

Nakamoto, S. (2008). Bitcoin: A Peer-to-Peer Electronic Cash System. Abgerufen von https://bitcoin.org/bitcoin.pdf

Witherspoon, Z. (2018, Juli 19). A Hitchhiker’s Guide to Consensus Algorithms [Blogpost]. Abgerufen 2. Januar 2020, von https://medium.com/hackernoon/a-hitchhikers-guide-to-consensus-algorithms-d81aae3eb0e3

Disclaimer
Der Autor dieses Artikels hat keine Verbindung oder Beziehung zu einem Unternehmen, einem Projekt oder einer Veranstaltung, sofern nicht ausdrücklich etwas anderes angegeben ist. Keine der bereitgestellten Informationen stellt Finanz- oder Anlageberatung dar. Investitionen in Kryptowährungen sind risikobehaftet. Ledgerlabs.li ist eine Webseite für unabhängige Informationen über Blockchain-Technologie. Weder Ledgerlabs Kranz noch die Autoren sind direkt oder indirekt für Schäden oder Verluste im Zusammenhang mit der Nutzung oder dem Vertrauen auf bereitgestellte Inhalte verantwortlich.

Author


Avatar

Severin Kranz

Severin Kranz arbeitet seit mehreren Jahren als Consultant im Fintech-Bereich sowie in der Vermögensverwaltung. Seit 2015 setzt er sich zudem mit dem Thema Kryptowährungen und Blockchain auseinander. Durch seinen Master in Business Innovation an der Universität St. Gallen hat er sich zudem auf mensch-zentrierte Innovationen und Design Thinking spezialisiert.