Vernetzte Punkte als Symbol für die Blockchain

Die Blockchain-Technologie eröffnet neue Möglichkeiten, um die Sicherheit von Transaktionen zu erhöhen. Doch was steckt dahinter? (Bild: AdobeStock_280062478)

Was ist die Blockchain und wie funktioniert sie? Ist Blockchain nicht dasselbe wie Bitcoin? Solche und ähnliche Fragen dürften sich aktuell viele stellen, denn die Blockchain beziehungsweise Distributed-Ledger-Algorithmen gehört laut Gartner Hype Cycle 2020 zu den 5 Themen, die die Zukunft verändern werden (Diese fünf Technologie-Trends aus 2020 sollen die Zukunft verändern).

Blockchain ist nicht gleich Bitcoin

Dezentrale Datenbankstruktur, die eine kryptografische Verkettung der Datensätze aufweist (z. B. als Basis digitaler Währungen) – so definiert der Duden die Blockchain. Doch um eines gleich vorweg zu nehmen: Bitcoin und die Blockchain, das sind zwei verschiedene, aber verwandte Dinge. Bitcoin verwendet die Blockchain-Technologie und ist die erste Anwendung dieser gewesen (allerdings gab es zuvor bereits einige rudimentäre Ansätze, die in diese Richtung gingen).

Wer hat die Blockchain erfunden?

Beides, also Bitcoin und Blockchain, entstammt dem sogenannten „Bitcoin Whitepaper”, das Ende 2008 im Netz auftauchte und unter dem Pseudonym Satoshi Nakamoto veröffentlicht wurde (Hier finden Sie die deutsche Version des Bitcoin Whitepapers). Ob hinter der Idee der Blockchain eine Gruppe an Personen oder ein Individuum steckt, ist bis heute nicht geklärt und die Spekulationen, um wen oder was es sich dabei handeln könnte, sind so alt wie die Blockchain selbst. Immer wieder behaupten verschiedene Personen, Erfinder:in von Bitcoin und damit der Blockchain zu sein.

Wer auch immer nun Satoshi ist oder war – klar ist, dass die erste rudimentäre Implementation des zugrunde liegenden Proof-of-Work-Konzepts bereits in den 1990er-Jahren in dem Projekt HashCash Anwendung fand. Ursprünglich entwickelt, um Spam E-Mails zu verhindern, benutzt Bitcoin heute Proof-of-Work als Basis des Consensus-Algorithmus, um so neue Transaktionen innerhalb des Netzwerkes zu bestätigen.

Was ist "Proof-of-Work"?

Der Proof-of-Work (PoW) Algorithmus ist ein Konsensmechanismus in Blockchain-Netzwerken. Teilnehmer konkurrieren, indem sie mathematische Rätsel lösen, um neue Blöcke zur Blockchain hinzuzufügen. Das Rätsel erfordert viel Rechenleistung und der erste Teilnehmer, der es löst, erhält Belohnungen. Der Computer probiert verschiedene Werte aus, bis eine bestimmte Bedingung erfüllt ist. Der PoW schützt vor Angriffen und ermöglicht dezentrale Kontrolle. Es gibt jedoch Nachteile wie den hohen Energieverbrauch.  

Die Blockchain ist die Basis für Kryptowährungen

Die Blockchain ist mittlerweile die technologische Basis für viele verschiedene Kryptowährungen, unter ihnen Bitcoin. Auch die Industrie interessiert sich immer mehr dafür. So gründete der VDMA beispielsweise im Juli 2021 ein Gremium zum Thema Blockchain, um Potenziale abzuklären. Aber wie funktioniert das Prinzip hinter der Blockchain? Um die Blockchain-Technologie zu verstehen, muss man zunächst die drei Technologien verstehen, die sie sich zunutze macht.

Kommunikation unter Gleichen: Peer-to-Peer-Netzwerke

Ein Peer-to-Peer Netzwerk ist ein Verbund aus mehreren Computern, die alle miteinander über Kommunikationskanäle (wie z.B. das Internet) verbunden sind und miteinander gleichberechtigt Informationen austauschen – also eine Kommunikation unter Gleichen.

Wozu braucht die Blockchain Hashfunktionen?

Eine Hashfunktion kann man sich als eine Art verschlüsselnden Daten-Schredder vorstellen. Jegliche Art von Daten, die eine Hashfunktion durchlaufen, kommen im Ergebnis als eine Zeichenfolge mit einer festen Anzahl an Zeichen wieder heraus. Diese Zeichenfolge wird als Hash bezeichnet und hat mit den Daten, die in die Hashfunktion eingegeben werden, nichts mehr zu tun – man kann also vom Hash nicht auf den Input schließen (Konfusion/Unumkehrbarkeit), ohne alle Möglichkeiten manuell zu prüfen. Dies wäre allerdings extrem aufwendig und oft wirtschaftlich nicht lohnenswert. Eine weitere wichtige Eigenschaft von Hashfunktionen: zwei verschiedene Inputs können niemals denselben Hash ergeben.

Eine wichtige Anwendungsmöglichkeit von Hashfunktionen besteht darin, die Integrität von Daten zu überprüfen. Bei der Übermittlung einer Nachricht könnte z.B. der/die Sender:in den Hash der Nachricht öffentlich bereitstellen. Der/die Empfänger:in kann dann die Nachricht ebenfalls hashen und das Ergebnis mit dem des Senders vergleichen. Stimmt das Ergebnis überein, wurde die Nachricht nicht verändert.

Was ist asymmetrische Kryptographie?

Asymmetrische Kryptografie lässt sich am einfachsten als ein Verschlüsselungsverfahren beschreiben, durch das sich Nachrichten sicher und privat austauschen lassen.(Autorisierung, Authentifizierung und Kryptographie erklärt: Das sind die grundlegenden Konzepte der sicheren Datenspeicherung) Hierzu werden zwei Schlüssel pro Person benötigt, der sogenannte Private- und Public-Key. Beide generiert ein spezieller Algorithmus aus einer Zufallszahl und sie sind mathematisch miteinander verbunden.

Wie sich aus dem Namen der Schlüssel bereits schließen lässt, muss der Private-Key sicher verwahrt werden (es ist extrem wichtig, dass keine andere Person ihn kennt), während der Public-Key ohne Bedenken öffentlich sein kann. Doch wozu sind solche Schlüsselpaare gut? Kurz gesagt: Mit dem Private-Key kann eine Nachricht entschlüsselt werden, die mit dem zugehörigen Public-Key verschlüsselt worden ist. Diese Eigenschaft ermöglicht schlussendlich die sichere Übermittlung von Nachrichten. Hierzu erstellen sowohl Versender:in als auch Empfänger:in ein Schlüsselpaar und teilen ihren jeweiligen Public-Keys miteinander. Anschließend signiert der/die Sender:in seine Nachricht digital mit seinem Private-Key und verschlüsselt die signierte Nachricht dann mit dem Public-Key des Empfängers.

Jetzt kann diese Nachricht ganz einfach über das Internet an den/die Empfänger:in geschickt werden – sie ist schließlich verschlüsselt und kann nur mit dem Private-Key des Empfängers entschlüsselt werden. Nachdem dieser das getan hat, sieht er die unverschlüsselte, signierte Nachricht. Nun kann er den Public-Key des Senders verwenden (der öffentlich verfügbar ist), um die Signatur des Senders zu prüfen und somit den Beweis zu haben, dass die Nachricht auch wirklich vom Sender stammt.

Wie funktioniert die Blockchain-Technologie?

Was hat das alles mit der Blockchain zu tun? Die Blockchain nutzt alle drei Technologien, um eine Art verteilte Datenbank zu schaffen, in der keiner den anderen Parteien vertrauen muss. Jeder auf der Welt kann mit einem Computer und Internetzugang auf die Blockchain zugreifen und diese verwenden. Wie genau dabei die Sicherheit garantiert wird und Transaktionen überhaupt zustande kommen, darum geht es im Folgenden.

Mittels Blockchain können Transaktionen durchgeführt werden (also Kryptowährungen versendet werden), ähnlich wie man bei einer Bank eine Währung transferieren kann. Alle Transaktionen werden dabei in sogenannten Blocks gespeichert, vergleichbar mit einer Computerdatei, und die Blockchain ist nun die Aneinanderreihung dieser einzelnen Blocks. (Das ist die Rolle der Blockchain-Technologie im IoT)

Was die Blockchain mit Brettspielen zu tun hat

In der Blockchain sind also alle je getätigten Transaktionen gespeichert. Zusätzlich zu einer Handvoll Transaktionen, die in einem Block gespeichert sind, enthält dieser außerdem zwei weitere wichtige Informationen: den Hash des vorangegangenen Blocks sowie den Hash aller in dem Block enthaltenen Transaktionen. So kann jede/r Akteur:in einfach die Integrität der Blockchain und aller anderen Teilnehmer:innen überprüfen – nämlich indem er/sie die Daten einfach selbst hasht und die Werte vergleicht. Manipulationen durch eine/n Teilnehmer:in im Blockchain-Netzwerk fallen so direkt auf, diese Teilnehmer:innen werden einfach vom Netzwerk ignoriert. Das Prinzip ist vergleichbar mit einem Brettspiel: ignoriert jemand die Regeln, lassen einen die anderen Mitspieler:innen nicht mitspielen.

Wer aber sind die Teilnehmer:innen einer Blockchain? Diese sind nichts anderes als sogenannte Nodes, also Computer, die innerhalb eines Peer-to-Peer-Netzwerks miteinander kommunizieren. Jede Node speichert dabei die gesamte Blockchain bestehend aus allen Blocks und damit aus allen bisher getätigten Transaktionen lokal ab. Gleichzeitig stehen alle Nodes permanent im Austausch mit anderen Nodes im Netzwerk und senden sich gegenseitig Informationen über neue Blocks zu. Durch diese Speicherung der Blockchain auf vielen verschiedenen Computern, die weltweit verteilt sind, wird die Dezentralität der Blockchain erreicht – die Blockchain kann demnach nicht einfach durch die Abschaltung einer Node gelöscht oder gar zerstört werden. Gleichzeitig dient die korrekte Speicherung der Blockchain als eine Art Eintrittskarte in das Netzwerk für die jeweilige Node. Würde sie mit einer gefälschten Version der Blockchain arbeiten, so würde dies, wie bereits erwähnt, sofort aufgrund der Unterschiede in den Hashwerten auffallen.

Damit nun Transaktionen innerhalb dieses Netzwerkes durchgeführt werden können, werden genaue Spielregeln benötigt – den sogenannten Konsensmechanismus (Consensus). Am besten erklärt man die Funktionsweise jetzt anhand einer tatsächlichen Transaktion im Bitcoin-Netzwerk, Schritt für Schritt.

So funktioniert eine Blockchain-Transaktion

  • Um eine Transaktion, beispielsweise bei Bitcoins, zu tätigen, benötigen Anwender zunächst Zugang zum Bitcoin-Netzwerk. Dies geschieht in Form eines Wallets, also einer digitalen Geldbörse. Jedes Wallet besitzt einen eigenen Public-Key, der gehasht die Adresse dieses Wallets im Bitcoin-Netzwerk darstellt. An eine solche Adresse können Bitcoin gesendet werden. Auf die hinter dieser Adresse hinterlegten Bitcoin kann man nur mit Hilfe des korrespondierenden Private-Keys zugreifen und über diese verfügen. Er stellt das Passwort für das Wallet dar und darf unter keinen Umständen in die falschen Hände gelangen.
  • Um nun Bitcoins zu versenden, benötigt man die Bitcoin-Adresse des Empfängers, erstellt die Transaktion, signiert diese mit seinem Private-Key (dies geschieht meist im Hintergrund des Wallets) und übergibt diese über eine Node an das Bitcoin-Netzwerk. Die Nodes im Netzwerk teilen nun die Transaktion miteinander. Diese ist aber noch nicht bestätigt!
  • Einige Nodes im Bitcoin-Netzwerk sind dabei zusätzlich auch sogenannte Miner. Sie sorgen dafür, dass Transaktionen bestätigt werden und neue Blocks an die Blockchain angeknüpft werden. Erreicht eine unbestätigte Transaktion einen Miner, wird diese Teil eines neuen Blocks, der zunächst nur bei diesem Miner gespeichert ist und noch kein Teil der Blockchain ist. Die Miner stehen in direktem Wettbewerb zueinander, bei dem es darum geht, eine Rechenaufgabe zu lösen. Diese Rechenaufgabe lässt sich im Wesentlichen wie folgt beschreiben: Finde einen Hash, der mit fünf Nullen beginnt.
  • An dieser Stelle erinnern wir uns, dass man von einem Hash niemals auf den Input schließen kann. Um diese Aufgabe zu lösen, müssen Miner also ein Ergebnis raten, dieses hashen und überprüfen, ob der Hash ihres zufälligen Inputs mit fünf Nullen beginnt. Dabei gilt: Je mehr Rechenkraft ein Computer besitzt, desto schneller kann er diese Aufgabe lösen. Das ist auch der Grund, weshalb mittlerweile ausschließlich Grafikkarten zum Mining verwendet werden, da diese eine höhere Rechenleistung haben.
  • Hat ein Miner die Rechenaufgabe gelöst, so übermittelt er sein Ergebnis zwecks Verifizierung an die anderen Miner. Er darf nun den nächsten Block erstellen und an die Blockchain anknüpfen. Dabei verifiziert er die Transaktionen (er prüft diese auf ihre Rechtmäßigkeit) und übermittelt den neuen Block an das Bitcoin-Netzwerk.  Im Gegenzug für seine Arbeit erhält er die Transaktionsgebühren der im Block enthaltenen Transaktionen sowie einen festgelegten Betrag an neuen Bitcoin. Hierdurch entsteht eine festgelegte Inflation, die im Falle des Bitcoin-Netzwerks mit zunehmender Zeit abnehmen und sogar auf 0 gehen wird.
  • Übrigens lässt sich über die Schwierigkeit der Rechenaufgabe auch der Zeitabstand zwischen den Blocks steuern. Für das Bitcoin-Netzwerk ist beispielsweise festgelegt, dass ein neuer Block circa alle 10 Minuten entstehen soll. Damit dieser Zeitabstand konstant bleibt, obwohl die Rechenkraft aller Miner variieren kann (es können jederzeit neue hinzukommen oder ihre Rechenkraft aufstocken/reduzieren), muss die Schwierigkeit der Rechenaufgabe regelmäßig angepasst werden. Dies geschieht über die Anzahl der Nullen, die der Hash als Ergebnis haben muss. Steigt die Rechenkraft, so könnte die neue Aufgabe lauten: finde einen Hash, der mit 7 Nullen beginnt.

Weitere Eigenschaften der Blockchain-Technologie

Doch die Blockchain-Technologie bietet darüber hinaus noch weitere Eigenschaften, die im Folgenden erklärt werden:

Sicherheit

Da jede/r Teilnehmer:in die Integrität der Blockchain sehr einfach überprüfen kann, kann nichts, was einmal in einem Block gespeichert wurde, rückwirkend verändert werden. Die Blockchain an sich ist also nicht „hackbar”. Hört man in den Nachrichten von Diebstählen von Kryptowährungen, so haben sich die Täter:innen meist Zugriff auf die Private-Keys der Opfer verschafft und anschließend die Wallets geleert.

Speicherung von Daten

Als Teil von jeder Transaktion können wenige Kilobyte an Daten in der Blockchain gespeichert werden. Genau wie die Transaktionen können auch diese Daten rückwirkend nicht mehr geändert werden. Natürlich könnte man so ein ganzes Dokument auf der Blockchain speichern – dies ist jedoch aufgrund der geringen Menge an Daten, die pro Transaktion möglich ist, oft unwirtschaftlich. Deshalb wird meist nur der Hash eines Dokuments in der Blockchain gespeichert, um zu beweisen, dass dieses Dokument in dieser Form bereits zu diesem Zeitpunkt existierte.

Transparenz

Alle je getätigten Transaktionen einer Blockchain sind für jedermann öffentlich einsehbar – im Fall von Bitcoin also bis hin zur ersten Transaktion im Januar 2009. Dies ist eine zentrale Eigenschaft von „Public” Blockchain-Technologien. Mittlerweile gibt es sogenannte Private-Blockchains, in denen nur ausgewählte Teilnehmer:innen Zugriff auf die Blockchain haben. Dies ist besonders dann sinnvoll, wenn die in der Blockchain gespeicherten Daten vertraulich sind. Dabei sind allerdings nur die Adressen und die Guthaben sowie die Transaktionen öffentlich einsehbar – nicht aber, wem die jeweilige Adresse gehört. Dennoch sind Kryptowährungen wie Bitcoin in der Praxis nicht völlig anonym! Mit etwas Aufwand und mit Hilfe von verschiedenen Analyse-Tools ist es den Strafverfolgungsbehörden verschiedener Länder bereits gelungen Kriminelle festzunehmen, die über Bitcoin Transaktionen durchgeführt haben.

Diese Eigenschaften nutzt beispielweise Minespider in Zusammenarbeit mit Stannol. Gemeinsam verwenden sie eine Blockchain, um sicherzustellen, dass Zinn aus einer fairen Mine kommt und dass sich kein Anbieter mit fragwürdigen Rohstoffenquellen in die Lieferkette geschmuggelt hat.

In Kürze

  • Die Blockchain ist eine dezentrale Datenbank, die Transaktionen transparent und sicher speichert.
  • Jeder Block enthält Daten und einen Hash des vorherigen Blocks, was eine chronologische Verkettung ermöglicht. Transaktionen werden von Teilnehmern überprüft und in Blöcken zusammengefasst.
  • Die Konsensmechanismen, wie Proof-of-Work oder Proof-of-Stake, gewährleisten Vertrauen und Sicherheit.
  • Die Blockchain findet Anwendung in Kryptowährungen, aber auch in verschiedenen Bereichen wie Lieferkettenmanagement oder Identitätsverifizierung. Smart Contracts ermöglichen automatisierte Verträge.
  • Die Technologie hat das Potenzial, Intermediäre zu umgehen und Prozesse effizienter und transparenter zu gestalten.

Sie möchten gerne weiterlesen?