Nichts Passendes dabei? Stellen Sie ein, welche Inhalte Sie auf aleri.de sehen möchten:
Bitcoin ist bekannt, doch nur selten wird dem grundlegenden Konsens-Mechanismus, Proof-of-Work, weitere Beachtung geschenkt. Darüber hinaus gibt es noch zahlreiche andere Konsens-Mechanismen, welchen wir uns in diesem Post nähern wollen.
Eine Blockchain kann aus hoher Flughöhe als ein „in einem Netzwerk verteilter Register“ bezeichnet werden. Daten liegen in dieser Datenbank in Blöcken vor, welche aneinander angeschlossen und kryptographisch versiegelt werden. Es entsteht eine Kette aus Blöcken - die Blockchain. Daten, die einmal in eine Blockchain geschrieben wurden, gelten als unveränderlich („immutable“). Neue Blöcke integrieren die kryptografische Signatur ihres Vorgängers in die eigenen Daten, so dass Manipulationen an einer vorgelagerten Stelle unmittelbar auffallen und korrigiert werden können.
Das sinnvolle Anwendungsszenario von Blockchain beginnt, wenn
Ausdruck des Ersteren ist das mangelnde Vertrauen gegenüber Unbekannten. Um im Finanz-Kontext zu sprechen: Man würde ja auch keinem Fremden ohne weiteren Vertrag einfach Geld in die Hand drücken und gehen, in der Hoffnung es beim nächsten Treffen wiederzubekommen.
Beim zweiten Punkt kommt die Disintermediation, der Wegfall eines Mittelsmannes (hier Banken) mit ins Spiel. Um diese Eigenschaft herum ist ein großer Hype entstanden, bspw. in der Energiewirtschaft.
Die Algorithmen sind so ausgestaltet, dass die Hürde für die Übernahme des Netzwerkes immens hoch ist. Darüber hinaus sind aufgrund von vorherrschenden Regeln alle Teilnehmenden ähnlich einflussreich. Das Vertrauen stammt also vom Glauben in den Algorithmus. Ergänzend wird Vertrauen über regelbasierte Verträge (Smart Contracts) verstärkt. Letztere versichern die Übertragung von Daten, Rechten oder Währungseinheiten. Die den Smart Contracts zugrundeliegenden Daten sind "einsehbar" in der Blockchain gespeichert und können somit als Beweis fungieren.
Soweit sind die Mechanismen meist bekannt. Wie bei vielen Technologien gilt ab hier: Der erste Hype ist vorüber, aber es fehlen passende Projekte, weil das Problemfeld sehr dünn erscheint. Im Unternehmenskontext wäre bei mangelndem Vertrauen auch ein Joint-Venture mit gleich verteilten Unternehmensbeteiligungen eine valide Alternativlösung um den Einsatz einer Blockchain zu vermeiden und stattdessen auf eine herkömmliche Datenbanklösungen zu setzen.
Die Herausforderung besteht darin, Vertrauen in einer nicht-vertrauenswürdigen Umgebung zu schaffen. Dazu benötigt man u. a. Algorithmen, welche auch unter widrigen Vertrauensbedingungen eine Einigung unter allen Beteiligten schaffen sollen - die Konsens-Mechanismen.
Wir werden zwei Mechanismus-Gattungen genauer mit deren Untergruppen betrachten. Es geht an der Stelle nicht um bestimmte Ausgestaltungen bzw. Produkte wie Bitcoin oder Ethereum, sondern um generelle Unterschiede zwischen beweisbasierten Mechanismen („Proof-Of-X“) sowie Mechanismen, die auf Abstimmungen beruhen ("Vote-based").
Im Practical Byzantine Fault Tolerance Mechanismus wird für jeden Block einzeln abgestimmt, nacheinander.
Im Ripple Modell definiert jeder Teilnehmende eine Liste von vertrauenswürdigen Teilnehmern. Es entspricht Proof-Of-Authority, lässt aber das Schreiben direkt zu, da nicht mehrere, sondern nur einer das Recht erhält, zu schreiben.
Man merkt, dass die Aufzählung spätestens hier unübersichtlich wird. Dabei gibt es noch viele weitere Algorithmen: Proof-of-Burn, Proof-of-Capacity, Proof-of-Sequential Work, Proof-of-Storage, Proof-of-WorkOrKnowledge, Proof-of-ZeroKnowledge und und und ...
Zum einen stellt sich die Frage nach der Motivation, welche die Teilnehmer mitbringen, um in einem Blockchain Netzwerk zu partizipieren.
Ist diese extrinsisch, geleitet von Belohnungen (z. B. Kryptowährung) oder ist sie intrinsisch, geführt von den Daten und dem Informationsaustausch? Bei extrinsisch geleiteter Motivation bieten sich Kryptowährungen und somit Proof-Of-Mechanismen an. Bei intrinsischer Motivation, bspw. dem Interesse an dem System selbst, ist dies aber nicht nötig und es können (auch) die anderen Mechanismen benutzt werden. Es gilt generell: Sobald der kollektive Glaube an das System verloren geht, gehen die Daten verloren.
Eine andere Herangehensweise wäre die vermutete Anzahl der Teilnehmenden und der Datendurchsatz.
Proof-of-Work gilt als träge. Die Schwere der mathematischen Rätsel wird bewusst laufend an die Rechenleistung des Netzwerks angepasst, um Race-Conditions zu vermeiden. Hier sind abstimmungsbasierte Vorgehensweisen klar im Vorteil. Dies ändert sich allerdings mit steigenden Teilnehmerzahlen. Ist der (mathematische) Beweis gelungen, schweigen die anderen Teilnehmer in Proof-of-Mechanismen. Dem hingegen muss/soll jeder Teilnehmer in abstimmungsbasierten Mechanismen seinen Senf dazugeben – dies macht abstimmungsbasierte Netzwerke langsam.
Die Antwort liegt in der Umwandlung eines Zero-Trust-Szenarios unter den Beteiligten hin zu einem Szenario bei dem alle an einem Strang ziehen. Das Schreckensszenario eines solchen Systems ist die Übernahme durch eine Teilmenge des Netzwerkes, vergleichsweise zu einer Geiselnahme von digitalen Gütern. Falls dieser Worst Case eintritt, können die restlichen Knoten keine Änderungen mehr bewirken. Im Falle einer Kryptowährung könnte die dominierende Gruppe jegliche unliebsamen Transaktionen (buy/trade/sell) unterbinden. Im Falle von Smart Contracts könnten diese Gruppe die Auslösung von Smart Contracts verhindern, weil die Aufnahme der auslösenden Trigger-Events in die Blockchain absichtlich nicht durchgeführt werden.
Um dies zu verhindern, wurde die Metrik der (Byztantinischen) Fehlertoleranz definiert als die Schwelle, ab der ein Blockchain-Netzwerk 'kippen' kann. Bezüglich Fehlertoleranz gilt, je höher die byztantinische Toleranzschwelle, desto mehr Teilnehmer müssen zustimmen bzw. desto teurer wird der Konsens. Es ist entsprechend wichtig, für den Einsatzzweck den richtigen Algorithmus auszuwählen. Darüber hinaus bilden diese nun genannten Möglichkeiten nur die Spitze des Eisbergs - es ist viel Bewegung in der Konzeption neuer Konsens-Mechanismen und -Konzepte.
Letztlich muss das Problem des gegenseitigen Vertrauens im Kopf behalten werden, welches den Anstoßpunkt für diese Lösungen bereithält.