Wie funktioniert eine Blockchain?

Bei einer Blockchain handelt es sich um eine verteilte Datenbank mit unverwüstlichen (en. unbreakable) und unwiderlegbaren (en. non-refutable) öffentlichen digitalen Transaktionen.
Eine Blockchain lässt sich mit einer dezentral geführten Buchhaltung vergleichen bei der ein Konsens über den richtigen Zustand der Buchführung erzielt wird, genannt Distributed-Ledger-Technologie (DLT). Spätere Transaktionen bauen auf früheren Transaktionen auf und bestätigen diese. Es ist daher nicht möglich die Existenz oder den Inhalt der früheren Transaktionen zu verändern oder zu löschen ohne gleichzeitig die nachfolgenden Transaktionen ungültig zu machen. Andere Teilnehmer der dezentralen Buchführung im Netzwerk erkennen eine manipulierte Kopie durch Inkonsistenzen in den Berechnungen. (Schlatt et al., 2018, S. 9-11; Jacobovitz, 2016, S. 2)

Eine Blockchain ist eine Kette von Blöcken. Die Verbindunglieder sind Hashes1. Auf der Inputseite Referenzen auf die früheren Outputs und auf der Outputseite dann Informationen für bestimmte Empfänger. Eine Blockchain ist verteilt und alle verständigen sich auf den aktuellen Status (die Geschichte der Kette) und sind damit einverstanden. Sie vertrauen sich gegenseitig aber nicht. Es gibt auch keine zentrale Stelle, welche für die Vertrauenswürdigkeit einsteht. (Kelsey, 2016, S.1-10)

Die Funktionsweise einer Blockchain soll am Beispiel von Bitcoin illustriert werden (Schlatt et al., 2018, S. 9-11; Nakamoto, 2008, S. 2-3):
blog_setpark_blockchain

Zu Beginn steht eine Transaktion mit der Weitergabe eines Betrages an einen bestimmten Adressaten. Diese Transaktion wird in das Netzwerk eingespeist. Als erstes dann die Transaktionsverifikation. Der passive Netzknoten (1) prüfen mittels eines Cache, dem Unspent Transaction Output (UTXO), ob...
  • in der Transaktion referenzierte Outputs noch nie verwendet wurden,
  • die Summe der Inputs ≥ der Summe der Outputs und
  • die Signatur gültig ist (Nachweis Besitz).

Falls die Transaktion in Ordnung ist, wird die Transaktion an viele weitere passive Netzknoten verteilt (2). In diesen weiteren Knoten wird die Transaktion ebenfalls überprüft und erstmal in die Datenbank der unbestätigten Transaktionen aufgenommen.
blog_setpark_blockchain_netzwerk

Die Transaktion wird nun durch die Mining-Netzknoten als Block bearbeitet (3). Es wird durch ein Proof-of-Work (PoW) Schema bei der Block-Validierung ein Konsens erreicht um zu verhindern, dass...
  • eine mehrfache Weitergabe des gleichen Betrages (en. double spending) stattfindet und
  • unterschiedliche Transaktionen (der gleichen Transaktion) in Netzknoten existieren.
Der Konsens über mehrere Mining-Knoten wird über die längste bekannte Blockchain erreicht um Gabelungen aufzulösen. Der Konsens sollte nicht zu rasch erfolgen. Dadurch könnenKonflikte vermieden werden.

In jedem Block findet sich neben den unbestätigten Transaktionen ein Block-Header. Der Block-Header verfügt über eine Referenz zum vorherigen Block, ein Zielwert-Hash, ein Zeitstempel und eine Nonce2. Die Nonce wird geändert bis der Hash kleiner als der Zielwert-Hash ist. Den Hash zu verändern bis das Muster passt ist sehr zeit- und rechenintensiv. Nun wird der Block als bestätigte Transaktion an das Netzwerk gesendet und alle berechnen wiederum den Hash und nehmen den Block auf.
Ein Blockchain-Update hat stattgefunden.


1 Eine Hashfunktion (Streuwertfunktion) ist eine Abbildung, die eine grosse Eingabemenge (Schlüssel) auf eine kleinere Zielmenge (Hashwerte) abbildet.
2 Zeichenkombination, die nur ein einziges Mal im jeweiligen Kontext verwendet wird.



Jacobovitz, O. (2016). Blockchain for Identity Management. Beer Sheva: The Lynne and William Frankel Center for Computer Science Department of Computer Science, Ben-Gurion University.
Kelsey, J. (2016). Introduction to Blockchains. Gaithersburg, MD: National Institute of Standards and Technology.
Nakamoto, S. (2008). Bitcoin - A Peer-to-Peer Electronic Cash System. www.bitcoin.org.
Schlatt, V., Schweizer, A., Urbach, N., & Fridgen, G. (2018). Blockchain - Grundlagen, Anwendungen und Potenziale. Bayreuth: Fraunhofer-Institut für Angewandte Informationstechnik FIT.
setpark GmbH | Rathausplatz 3 | 3600 Thun | Schweiz | +41 33 221 76 70 | @