Funktionsweise
Allgemein
- Blockchain:
dezentralisiertes, verteiltes Register (engl. Ledger)
- enthält digitale Datensätze, Ereignisse oder Transaktionen
in chronologischer Reihenfolge
für alle Teilnehmer nachvollziehbar
in Datenblöcken gespeichert („Block“)
nahezu unveränderbar miteinander verkettet („Chain“)
Eine Blockchain kann als Protokoll für den Austausch von Werten, statt nur Informationen, beschrieben werden.
[Blockchain-Wikipedia] [Blockchain-Bundesnetzagentur] [Blockchain-HSLU] [Blockchain-IBM] [Blockchain-Videos] [Blockchain-Computerwoche]
Akteure
Mitgliedern in Blockchain-Netzwerken können grundsätzlich drei unterschiedliche Gruppen von Akteuren zugeordnet werden, welche jeweils unterschiedliche Aufgaben und Funktionen übernehmen:
Teilnehmer
transaktionsberechtige Nutzer eines Blockchain-Netzwerks
erbringen in der Regel keine Rechenleistung
müssen keine Transaktionshistorien speichern
Nodes
Übernahme bestimmter Prüfaufgaben (ausreichendes Guthaben?, Signaturen authentisch?, korrekte Hash-Werte?, …)
Speichern dazu die Historie aller bisher im Netzwerk getätigten Transaktionen
Nicht besonders rechenintensiv
in der Regel nicht entlohnt (Anreize sind z.B.: Das Einsehen der gesamten Transaktionshistorie, Aktive Aufrechterhaltung der Integrität der Blockchain)
Miner
Bildung neuer Blöcke in einer Blockchain (i.d.R. durch Ermittlung von Hash-Werten)
können grundsätzlich auch Transaktionen auslösen
eigentlicher Anreiz: monetäre Entlohnung für die Blockbildung + möglicherweise Transaktionsgebühr (i.d.R. Kryptowährung)
In der Bitcoin-Blockchain:
Akteur |
Anzahl (2017) |
Anzahl (2022) |
---|---|---|
Teilnehmer |
~ 15 Milionen |
~ 80 Millionen |
Miner |
~ 100.000 |
k.A. |
Nodes |
~ 10.000 |
~ 15.000 |
[Blockchain-Bundesnetzagentur] [Blockchain-BDEW] [Blockchain-Stats]
Blöcke
Ein Block der Blockchain beinhaltet die zu sichernden Daten, meist ein zugehöriger Zeitstempel, sowie der Hash des Vorgängerblocks. Aus diesen Werten, sowie einer, für die Validierung des Blocks zu erratende, Nonce (Number only used once) wird der Hash des aktuellen Blocks errechnet, welcher ebenfalls mit gespeichert wird. Dieser Hash-Wert ist einzigartig und kann als digitaler Fingerabdruck des Blocks angesehen werden.

Blockchain-Block
Durch die Sicherung des Vorgänger-Hashes werden die Blöcke eindeutig in eine nicht unaufwändig veränderbare Reihe verkettet. Der erste, ursprüngliche Block, wird als Genesis Block bezeichnet, und hat als Wert des Vorgänger-Hashes einen fiktiven „Startwert“.

Blockchain-Verkettung durch Sicherung des Vorgänger-Hashes
Ein Block kann nicht rückwirkend geändert werden, ohne dass alle nachfolgenden Blöcke geändert werden müssen. Wird ein vorhergegangener Block manipuliert, so ändert sich dessen errechneter Hash-Wert, wodurch er und, aufgrund der Verkettung, auch alle folgenden Blöcke invalid werden. Somit lässt sich sagen, dass ein Block umso sicherer ist, je mehr Blöcke auf diesen folgen. Der Genesis Block ist somit der am schwierigsten zu manipulierende Block.
Durch die Nutzung der Hashwerte wird es den Teilnehmern ermöglicht, Transaktionen unabhängig und relativ kostengünstig zu überprüfen und zu kontrollieren.

Abweichung der Blockchain-Hashes nach Manipulation
[Blockchain-Demo] [Blockchain-Videos] [Blockchain-Bundesnetzagentur] [Blockchain-Computerwoche]
Verteilung
Die Blockchain ist die bekannteste Ausprägung der Distributed-Ledger-Technologien und wird so über ein Peer-to-Peer-Netzwerk verteilt verwaltet. Dabei besitzt jeder Teilnehmer eine Kopie der Blockchain. Um die Einheitlichkeit, sowie die Validität der Blockchain-Daten zu garantieren, muss ein Konsens beim hinzufügen neuer Blöcke an die bestehende Kette gefunden werden.

Konsens nötig bei verteilter, redundanter Speicherung
[Blockchain-Wikipedia] [Blockchain-Demo] [Blockchain-Bundesnetzagentur] [Blockchain-Videos] [Blockchain-Computerwoche]
Konsensmechanismen
Zur Konsensfindung zur Erstellung und Anfügung, neuer Blöcke noch nicht validierter Transaktionen, an die Blockchain, werden verschiedene Mechanismen genutzt:
Proof-of-Work
Da das reine Berechnen neuer Hashwerte für einen manipulierten und dessen folgenden Blöcke, auch bei sehr vielen Blöcken, schnell zu bewerkstelligen ist, soll diese Berechnung verzögert werden.
- Dazu wird der „Proof-of-Work“ genutzt:
Konkurrenz darum als erstes die Lösung eines kryptographischen Rätsels zu finden
Versuch den korrekten Hash-Wert des neuen Blockes zu finden (siehe Blöcke)
Dieser Hash muss unterhalb eines definierten Schwellwerts liegen. (z.B. erste vier Ziffern ‚0‘)
Schwellwert umgekehrt proportional zur Schwierigkeit / Dauer
Generierung eines passenden Hash-Werts durch Variabilität der Nonce
Hash-Wert kann nur durch rechenintensives Ausprobieren vieler verschiedener Nonces gefunden werden.
Sobald ein passender Hash-Wert ermittelt wurde, wird der Block, inklusive Nonce und Hashwert, zur Überprüfung an das Netzwerk gesendet.
Zur Überprüfung muss lediglich der Block, inklusive der Nonce gehasht werden und mit dem angegeben Hash-Wert verglichen werden.
Bei einem Konsens im Netzwerk über die Korrektheit des Hash-Werts, so kann der Block mit dem bestätigten Hash-Wert an die bisherige Blockchain angefügt werden.
Proof-of-Stake
Aufgrund der hohen benötigten Rechenleistung, sowie der limitierten Transaktionsgeschwindigkeit, werden oft, insbesondere bei konsortialen und privaten Blockchains, andere Konsensmechanismen genutzt.
- So wird beispielsweise der „Proof-of-Stake“ genutzt:
Wahl von Mitglieder des Blockchain-Netzwerks zur Bildung neuer Blöcke (größeres Vermögen -> wahrscheinlicher gewählt)
Annahme, dass wohlhabende Teilnehmer ein hohes Interesse am Fortbestand und Integrität der Blockchain haben.
Haften mit ihrem eingesetzten Vermögen für die Korrektheit der Blockbildung.
Setzt Vertrauenswürdigkeit voraus -> das Lösen des kryptographischen Rätsels kann deutlich einfacher ausgestaltet werden
Die Bildung neuer Blöcke ist deshalb wesentlich schneller und ressourcenschonender als beim Proof-of-Work.
Geringere Sicherheit wegen nötigem Vertrauen in gewählte Akteure
Proof-of-Authority
- Besonders bei privaten Blockchains kommt auch das Konsensverfahren „Proof-of-Authority“ zur Anwendung:
einzelne Teilnehmer, denen die Verwaltung des Blockchain-Netzwerks obliegt, werden für die Blockbildung bestimmt
deutlich schneller und ressourcenschonender als der Proof-of-Stake
setzt allerdings ein sehr hohes Vertrauen in die blockbildenden Teilnehmer voraus
[Blockchain-Wikipedia] [Blockchain-Demo] [Blockchain-Bundesnetzagentur] [Bitcoin-Proof-of-Work] [Blockchain-HSLU] [Blockchain-Videos] [Blockchain-Computerwoche]
Digitale Signatur
Um sicher zu stellen, dass Transaktionen auch nur von autorisierten Personen ausgeführt werden, wird ein asymmetrisches Kryptosystem (Public-Key) zur digitalen Signierung genutzt. Dabei wird der Hash der Nachricht mit einem privaten Schlüssel (private key) verschlüsselt, wodurch man eine digitale Signatur erhält. Diese kann, nach der Entschlüsselung mithilfe des passenden öffentlichen Schlüssel (public key), mit dem Hash der erhaltenen Daten verglichen werden, um die nichtabstreitbare Urheberschaft und Integrität der Daten zu prüfen.
Digitale Signatur
Von Bananenfalter🍌🦋 - Eigenes Werk, CC0, https://commons.wikimedia.org/w/index.php?curid=17500025
[Blockchain-Wikipedia] [Blockchain-Demo] [Blockchain-Bundesnetzagentur] [Digital-Signature-Wikipedia] [Digital-Signature-Videos]
Blockchain-Varianten
Blockchain-Varianten lassen sich durch Ausgestaltung der Zugangsberechtigungen unterscheiden. So lassen sie sich grundsätzlich in öffentlich zugängliche (public blockchains bzw. permissionless blockchains) und geschlossene Blockchains (private bzw. permissioned blockchains) unterteilen. Eine Mischform hieraus stellen konsortiale Blockchains dar.
Vergleich öffentliche, private, konsortiale Blockchains
(siehe [Blockchain-Bundesnetzagentur] Seite 15 - Tabelle 1)
Öffentlich |
Privat |
Konsortial |
|
---|---|---|---|
Zugang |
Offen zugänglich |
Nur für zugelassene Teilnehmer |
Nur für zugelassene Teilnehmer |
Personenbezug |
Pseudonyme Nutzung |
Herstellbar |
Herstellbar |
Bildung neuer Blöcke |
Dezentral durch Ressourceneinsatz der Miner |
Zentral durch einzelne Instanz |
Je nach Ausgestaltung |
Konsensmechanismus |
i. d. R. Proof-of-Work, z. T. auch Proof-of-Stake |
i. d. R. Proof-of-Stake oder Proof-of-Authority |
Je nach Ausgestaltung |
(IT)-Sicherheit |
Sehr hoch, kein SinglePoint-of-Failure, Manipulationen kaum möglich |
Eingriffe durch zentralen Akteur möglich, SinglePoint-of-Failure |
Je nach Ausgestaltung |
Energieverbrauch |
Hoch (beim Proof-of-Work) |
Tendenziell niedrig |
Je nach Ausgestaltung |
Transparenz |
Hoch durch offene Transaktionshistorie |
Nur für ausgewählten Teilnehmerkreis |
Nur für ausgewählten Teilnehmerkreis |
Systemänderungen |
Niedrige Flexibilität |
Hohe Flexibilität |
i. d. R. Konsens im Konsortium notwendig |
Änderungen an bereits durchgeführten Transaktionen |
Nicht möglich |
Möglich durch zentrale Instanz |
Möglich (z. B. durch Mehrheitsbeschluss) |
Geschwindigkeit der Transaktionen |
Gering (beim Proof-of-Work) |
Tendenziell schnell |
Tendenziell schneller als bei öffentlichen Blockchains |
Kryptowährung |
i. d. R. als Anreizmechanismus zur Bildung neuer Blöcke notwendig |
Optional |
Optional |
[Blockchain-Bundesnetzagentur] [Blockchain-Wikipedia] [Blockchain-Computerwoche]