Schweizerische Nationalbank
Wie funktioniert Bitcoin?
Geld, Währung, Finanzen
()
492 Aufrufe
Wie funktioniert Bitcoin?
Freitag, 09. Februar 2018

Im Jahr 2017 hat sich der Wert einer Bitcoin-Einheit mehr als verzehnfacht. Kein Wunder ist die Kryptowährung in aller Munde. Erfahren Sie hier, wie das Geld aus dem Internet genau funktioniert.

Eine sogenannte Bitcoin Mining-Farm: Tausende Rechenchips laufen Tag und Nacht in der Hoffnung, neue Bitcoins zu erschaffen. Bild: flickr - Marko Ahtisaari (CC)

Will man die Funktionsweise von Bitcoin verstehen, beginnt man am besten bei der Frage, was Bitcoin von Währungen wie dem Schweizer Franken oder dem US-Dollar unterscheidet. Zwei Unterschiede sind hervorzuheben:

Erstens existiert Bitcoin nur in virtueller Form und kennt im Gegensatz zu herkömmlichem Geld keine physische Entsprechung wie Banknoten oder Münzen. Zweitens funktioniert Bitcoin gänzlich dezentral. Das heisst, um die Aufgaben Geldschöpfung, Kontoführung und Transaktionen, also die Geldüberweisungen von einem Konto auf ein anderes, kümmern sich nicht Zentral- und Geschäftsbanken, sondern die User selber. Damit stellen sich natürlich Probleme, die Bitcoin aber mit der Blockchain-Technologie («Block-Kette») löst.

Ein Problem bei dezentralem virtuellem Geld ist die Frage nach dem Konsens, wem wie viele Bitcoins gehören. Wie kann eine Person beweisen, dass sie ein gewisses virtuelles Guthaben hält und wie kann sie Teile davon an Dritte übertragen? Von der modernen Wirtschaftswelt sind wir uns virtuelles Geld in Form von elektronischem Buchgeld der Banken längst gewohnt. Wir vertrauen darauf, dass die Banken eingezahltes Bargeld auf unser Konto gutschreiben und Überträge zwischen verschiedenen Konti korrekt miteinander verrechnen.

Bitcoin kommt ohne solche Institutionen aus und verlässt sich bei der Kontoführung auf ein öffentliches Register, die Bitcoin-Blockchain. Diese schafft für die User einen Konsens über die virtuellen Besitzstände. Um die Fälschung der Bestände zu erschweren, besitzt jeder Anwender eine Kopie der Blockchain. Wechselt ein Bitcoin von einer Userin zur anderen, wird dies automatisch verzeichnet und auf allen Kopien angepasst und gespeichert.

Die Bitcoin-Blockchain

Wie der Name suggeriert, besteht die Blockchain aus einer Kette von Datenblöcken. Zuerst schauen wir uns die Blöcke an, anschliessend dann, wie diese Blöcke miteinander verkettet werden.

Im Durchschnitt wird der Bitcoin-Blockchain alle zehn Minuten ein neuer Block hinzugefügt. In jedem Datenblock sind die Transaktionsnachrichten abgelegt, die seit dem letzten gültigen Datenblock im Bitcoin-Netzwerk versandt wurden (siehe Abbildung 1). Block 2 hält alle Transaktionen und Bestandsänderungen fest, die seit der letzten Bestandsaufnahme in Block 1 getätigt wurden.

Die Blockchain dient also als zentrales, öffentlich einsehbares Register, in dem alle Transaktionen aufgezeichnet werden, die je im Bitcoin-System stattgefunden haben. Dadurch lässt sich automatisch ablesen, welcher User über wie viele Bitcoins verfügt. Denn zieht man von allen Transaktionen, die auf ein Konto eingegangen sind, alle ausgehenden Transaktionen ab, erhält man den aktuellen Kontostand.

Aber wie können User das virtuelle Geld ausgeben oder anders gefragt, wie kommen die Transaktionen in die Blockchain? Wer Bitcoins ausgeben will, sendet eine sogenannte Transaktionsnachricht an das Bitcoin Netzwerk. Sie enthält die Information: «Ich übertrage X Bitcoins an Y.» Erhält ein User eine Transaktionsnachricht, überprüft der Computer anhand der lokal gespeicherten Blockchain automatisch, ob die Absenderin wirklich im Besitz von X Bitcoins ist. Trifft dies zu und werden einige andere Kriterien erfüllt, ist die Transaktion gültig und wird weitergeleitet. Dieser Prozess wiederholt sich, bis die Nachricht im gesamten Netzwerk verbreitet wurde.

Mit der Verbreitung der Transaktionsnachricht ist die Transaktion selbst noch nicht vollzogen. Erst wenn die Überweisung in der Blockchain festgehalten ist, kann der Empfänger Y über die X Bitcoins verfügen. Bestimmte User, die Miner («Schürfer»), sammeln die Transaktionsnachrichten und verarbeiten sie zu einem Block, der der Kette angehängt wird. Wäre diese Blockerstellung jedoch ein einfacher Vorgang, würde sich die Blockchain jede Sekunde mehrmals verlängern und es würde mehr Chaos als Konsens herrschen. Um dieses Problem zu umgehen, muss jeder Block ein Gültigkeitskriterium erfüllen, nämlich einen sogenannten Hashwert unter einem gewissen Schwellenwert aufweisen. Dieses Kriterium macht das Mining («Schürfen») eines gültigen Datenblocks extrem aufwändig.

Die kryptologische Hashfunktion

Im Zentrum der Pflege des Blockchain-Registers steht der Vorgang des Hashens («zerkleinern»). Ein kurzer Exkurs in die Kryptologie reicht, um das Kernstück des Mining-Prozesses zu verstehen. Die im Bitcoin-Kontext gebräuchliche Hashfunktion heisst SHA-256 und wandelt einen beliebig langen Text (Input) in einen 64 Zeichen langen Code (Output) um. Ob man also Tolstois Roman Krieg und Frieden «hasht» oder nur einen einzelnen Leerschlag: die Hashfunktion wird in beiden Fällen einen Code mit gleicher Länge generieren. Als Zeichen für den Code kommen dabei die Ziffern 0-9 und die Buchstaben A-F in Frage. Das interessante daran: Die Hashfunktion erstellt mit an Sicherheit grenzender Wahrscheinlichkeit für jeden Input einen komplett anderen Zahlencode. Dieser Zahlencode ist zudem deterministisch, das heisst, der gleiche Input resultiert immer im selben Output.

Dies lässt sich ganz einfach illustrieren. Speist man beispielsweise den Titel dieses Blogs «Wie funktioniert Bitcoin?» in die Hashfunktion SHA-256, erhält man als Output folgenden Code:

2A61906DA0ED9CADF7FC9C86A755EE13A93A6B06203D1433C04D3D8D5A253E0E.

Sie dürfen es gerne selbst überprüfen. Ändert man im Titel nur einen Buchstaben und schreibt «Wie Funktioniert Bitcoin?», erhält man hingegen den Hashwert

47D9C0E3CA0C2CD22CB074C4240D2092C94EDEA34DF97AF6C27CB9DD192CC887.

Auf den ersten Blick ist es offensichtlich, dass es sich um einen ganz anderen Code handelt. Daraus lässt sich automatisch schliessen, dass der Input verschieden sein muss. Sei es auch nur ein Satzzeichen, ein Leerschlag, ein Absatz oder eben die Gross- und Kleinschreibung: Jede kleinste Änderung am Input führt zu einem ganz anderen Hashwert. Doch was hat das mit Bitcoin zu tun?

Das Bitcoin-Mining

Wir haben gesagt: Die Blockchain ist eine Technologie um Daten zu sichern. Im Fall von Bitcoin sind diese Daten die Transaktionen. Miner machen nun nichts anderes als die Liste der gesammelten Transaktionsnachrichten in die Hashfunktion zu schicken (siehe Abbildung 2). Wie zuvor erwähnt, gibt das Bitcoin-System vor, dass nur ein Block mit einem Hashwert unter einem gewissen Schwellenwert gültig ist. Zum Beispiel kann das Kriterium sein, dass der Hashwert an den ersten zehn Stellen des Codes eine Null aufweisen muss.

Hat eine Minerin die Transaktionsnachrichten beisammen, die sie in der Blockchain festlegen will, «hasht» sie diesen Input immer wieder bis an den ersten 10 Stellen jeweils eine Null steht. Wir wissen aber, dass der gleiche Input immer denselben Output generiert. Wie kann die Minerin also unterschiedliche Hashwerte erzeugen, ohne die Transaktionen zu verändern, die sie besichern will?

Dazu gibt es eine bestimmte Stelle in den Daten, die die Miner mit beliebigen Zeichen auffüllen können. In einem ersten Versuch «hasht» ein Miner zum Beispiel nur die Transaktionenliste. Wenn der resultierende Wert nicht dem Gültigkeitskriterium entspricht, schreibt er einen Buchstaben hin und probiert es erneut. Ergibt auch das keinen gültigen Block, versucht er es mit dem nächsten Buchstaben und so weiter, bis eben zehn Nullen an erster Stelle stehen (siehe Abbildung 3).

Die Wahrscheinlichkeit, dass der Output dabei zehn Nullen aufweist, ist (1/16)10. Anders gesagt, braucht es im Schnitt 1’099’511’627’776 Hashwert-Berechnungen, um einen gültigen Block zu finden. Aktuell liegt das Kriterium im Bitcoin-System bei 18 Nullen. Dies zeigt, was für eine unglaubliche Rechenleistung für die Pflege der Bitcoin-Blockchain verbraucht wird. Das Kriterium wird nämlich automatisch so angepasst, dass ein gültiger Block im Schnitt alle 10 Minuten geschürft wird. Wenn mehr User zu schürfen beginnen, wird der Schwellenwert tiefer gesetzt und umgekehrt. So wird garantiert, dass Transaktionen im Schnitt innerhalb von 10 Minuten bestätigt werden. Da der Mining-Prozess aber grundsätzlich wie Würfeln ein rein zufälliger Prozess ist, kann die konkrete Zeit, die die Miner brauchen einen gültigen Block zu finden, beträchtlich variieren.

Dezentralisierte Geldschöpfung und Verbreitung des Konsenses

Bleibt noch zu klären, welchen Anreiz die Miner haben, die Fixkosten für den Kauf der Mining-Hardware und die Stromkosten für deren Betrieb einzugehen. Die Antwort lautet: Das Schürfen eines gültigen Blocks wird mit einigen Bitcoins entlohnt. Diese Belohnung stammt nicht etwa von den anderen Usern, sondern die Bitcoins werden neu geschaffen. Jeder Miner und jede Minerin schreibt in die lange Liste von Transaktionen eine Geldschöpfungstransaktion, meist an das eigene Konto adressiert. Wer es schafft, zuerst einen gültigen Block in die Blockchain einzubetten, validiert damit gleichzeitig die Transaktion, die die neu geschaffenen Bitcoins überweist.

Wird ein gültiger Block geschürft, versendet der Finder den Block an das Netzwerk. Jeder Knoten überprüft die Gültigkeit des Blockkandidaten und verbreitet ihn weiter. Dadurch wird der neue Konsens über die virtuellen Besitzstände im Bitcoin-System kommuniziert.

Die Fälschungssicherheit der Blockchain

Wie das Mining funktioniert, wissen wir nun. Doch wenn jeder beliebige User an der Blockchain mitarbeitet: Wie wird sichergestellt, dass niemand im Nachhinein das Register fälscht? Eine Userin könnte beispielsweise eine Transaktion aus der Blockchain löschen. Damit wären diese Ausgaben rückgängig gemacht und sie wäre wieder im Besitz des übertragenen Betrags.

Hier kommt nun die Kettenstruktur der Blockchain ins Spiel. Jeder gültige Block muss nicht nur einen bestimmten Hashwert aufweisen, sondern muss zudem eine Referenz enthalten auf den letzten akzeptierten Block, also auf den letzten Konsenszustand des Systems, auf den er sich bezieht. Zum Beispiel besagt Block 2 in Abbildung 4: «Seit den Kontoständen zum Zeitpunkt 1, die implizit in Block 1 mit dem Hashwert 0000000006C… repräsentiert sind, sind folgende Transaktionen erfolgt.» So ergibt sich die Kette von Datenblöcken, und die längste Version der Blockchain repräsentiert immer den Konsens, wer wie viele Bitcoins besitzt.

Angenommen, eine Minerin möchte eine Transaktion, die in Block 2 besichert ist, rückgängig machen, dann kann sie eine konkurrierende Version der Blockchain beginnen, in der die Transaktion nicht vorkommt. Dazu löscht sie im Block 2 den unerwünschten Übertrag raus. Dadurch verändert sich aber der Hashwert von Block 2 und dieser wird mit grosser Wahrscheinlichkeit ungültig. Zudem bezieht sich Block 3 noch auf den «alten» Hashwert von Block 2. Das heisst, die Minerin müsste nun einen gültigen Hashwert für den modifizierten Block 2 finden plus einen gültigen Block 3 schürfen, der sich auf ihren neuen Block 2 bezieht. In der selben Zeit arbeiten aber unzählige Miner an der aktuellen Version weiter und suchen bereits nach einem Block 4. Da immer die längste Blockchain vom Netzwerk als Konsens akzeptiert ist, hat der einzelne Miner praktisch keine Chance, eine vergangene Transaktion zu löschen oder ändern.

Vielseitige Blockchain

Auf diese Weise schafft die Bitcoin-Blockchain fortlaufend Klarheit über die Besitzstände der knapp 17 Millionen Bitcoins, die sich zurzeit im Umlauf befinden, und schützt diese gleichzeitig vor Manipulationen. Diese Fähigkeit, dezentral Eigentumsverhältnisse verwalten und sichern zu können, macht die Blockchain-Technologie nicht nur für Kryptowährungen interessant. Sie kann auch bei Vertragsabwicklungen oder beispielsweise im Urheberrecht Transaktionskosten senken. Ob und in welchen Bereichen die Blockchain sich schliesslich durchsetzen wird, wird sich in den nächsten Jahren zeigen.

Das Buch Bitcoin, Blockchain und Kryptoassets von Prof. Dr. Aleksander Berentsen und Dr. Fabian Schär (beide Universität Basel) vermittelt fundiertes Wissen zu Bitcoin und Blockchain auf zugängliche Weise.

Zum Thema
× Vielen Dank für Ihren Kommentar. Er wurde erfolgreich zur Überprüfung übermittelt.

Kommentare

Anzahl verbleibender Zeichen: 800
captcha

Orlando_Holenweger - sehr hilfreich

Ich habe schon unzählige Blockchain und Bitcoin Artikel gelesen, doch dieser was bisher am einfachsten zu verstehen!

21.02.2018 Antworten