KAPITEL 1
Einführung
Was ist Bitcoin?
Bitcoin ist eine Sammlung von Konzepten und Technologien, die ein Ökosystem für digitales Geld bilden. Währungseinheiten namens Bitcoin werden genutzt, um Werte zu speichern und sie zwischen den Teilnehmern des Bitcoin-Netzwerks zu übertragen. Bitcoin-Nutzer kommunizieren miteinander über das Bitcoin-Protokoll. Das geschieht hauptsächlich über das Internet, andere Transportprotokolle sind aber auch möglich. Der Bitcoin-Protokollstack steht als Open-Source-Software zur Verfügung und ist auf einer Vielzahl von Geräten (einschließlich Laptops und Smartphones) lauffähig, d.h., der Zugang zu dieser Technik gestaltet sich einfach.
Nutzer können Bitcoin über das Netzwerk transferieren und damit das tun, was man auch mit normalem Geld macht: Güter kaufen und verkaufen, Geld an Menschen oder Organisationen überweisen oder jemandem einen Kredit gewähren. Bitcoin kann an speziellen Börsen gekauft, verkauft und gegen andere Währungen getauscht werden. Bitcoin ist in gewissem Sinn das perfekte Geld für das Internet, da es schnell und sicher ist und keine Grenzen kennt.
Im Gegensatz zu traditionellen Währungen ist Bitcoin vollständig virtuell. Es gibt keine Münzen im herkömmlichen Sinn und auch keine digitalen Münzen. Die Münzen (also die Coins) sind in Transaktionen enthalten, die Werte vom Sender zum Empfänger transferieren. Bitcoin-Nutzer verfügen über Schlüssel, die den Besitz von Bitcoins im Bitcoin-Netzwerk nachweisen. Mit diesen Schlüsseln können sie Transaktionen signieren, um den Betrag freizugeben und an einen neuen Eigentümer zu transferieren. Die Schlüssel werden häufig in einer digitalen Geldbörse (der Wallet) auf dem Computer oder Smartphone des Nutzers gespeichert. Der Besitz des Schlüssels, mit dem eine Transaktion signiert werden kann, ist die einzige Voraussetzung, um Bitcoins auszugeben, d.h., die Kontrolle liegt vollständig in den Händen der Nutzer.
Bitcoin ist ein verteiltes Peer-to-Peer-System. Daher gibt es keinen »zentralen« Server oder Kontrollpunkt. Bitcoins werden in einem als Mining bezeichneten Prozess erzeugt, bei dem darum gerungen wird, wer als Erster die Lösung eines mathematischen Problems findet, während die Bitcoin-Transaktionen verarbeitet werden. Jeder Teilnehmer am Bitcoin-Netzwerk (d. h. jeder, auf dessen Gerät der vollständige Bitcoin-Protokollstack läuft) kann als Miner fungieren und die Rechenleistung seines Computers nutzen, um Transaktionen zu verifizieren und festzuhalten. Im Schnitt ist alle zehn Minuten jemand in der Lage, die Transaktionen der letzten zehn Minuten zu verifizieren, und wird dafür mit neuen Bitcoins belohnt. Im Grunde dezentralisiert das Mining die Geldausgabe und die Abrechnung (das Clearing), wodurch eine Zentralbank überflüssig wird.
Das Bitcoin-Protokoll enthält fest eingebaute Algorithmen, die die Mining-Funktion innerhalb des Netzwerks regeln. Der Schwierigkeitsgrad (die Difficulty) der Rechenaufgabe, die die Miner lösen müssen, wird dynamisch so angepasst, dass im Durchschnitt alle zehn Minuten jemand erfolgreich ist, und zwar unabhängig davon, wie viele Miner (und wie viel Rechenleistung) gerade an der Lösung arbeiten. Das Protokoll halbiert alle vier Jahre die Geschwindigkeit, mit der neue Bitcoins erzeugt werden, und beschränkt die Gesamtzahl der Bitcoins auf etwas unter 21 Millionen. Das führt dazu, dass die im Umlauf befindlichen Bitcoins einer einfach vorhersagbaren Kurve folgen, nach der die 21 Millionen im Jahr 2140 erreicht werden. Durch die sinkende Geschwindigkeit der Ausgabe ist die Währung Bitcoin auf lange Sicht deflationär. Darüber hinaus kann der Bitcoin nicht »aufgeblasen« werden, indem man neue Coins über oder unter der erwarteten Ausgaberate »druckt«.
Hinter den Kulissen ist Bitcoin auch der Name eines Protokolls, eines Peer-to-Peer-Netzwerks und einer Innovation in Sachen Distributed Computing. Tatsächlich ist die Währung Bitcoin nur die erste Anwendung dieser innovativen Technik. Bitcoin repräsentiert den Höhepunkt jahrzehntelanger Forschung zu den Themen Kryptografie und verteilte Systeme. Sie fasst vier Schlüsselinnovationen in einer einmaligen und leistungsfähigen Kombination zusammen. Bitcoin besteht aus:
- einem dezentralisierten Peer-to-Peer-Netzwerk (dem Bitcoin-Protokoll),
- einem öffentlichen Kassenbuch (der Blockchain),
- einer Reihe von Regeln für die unabhängige Validierung von Transaktionen und die Geldausgabe (Konsensregeln) sowie
- einem Mechanismus, mit dem ein globaler, dezentralisierter Konsens zur jeweils gültigen Blockchain erreicht wird (Proof-of-Work-Algorithmus).
Als Entwickler sehe ich Bitcoin als eine Art Internet des Geldes, als Netzwerk für die Verteilung von Werten und die Sicherung des Eigentums an digitalen Vermögenswerten mithilfe verteilter Berechnungen. Hinter Bitcoin steht viel mehr, als es auf den ersten Blick scheint.
In diesem Kapitel wollen wir einige der wesentlichen Konzepte und Begriffe erläutern, uns die notwendige Software beschaffen und Bitcoin für einfache Transaktionen nutzen. In den folgenden Kapiteln sehen wir uns dann schrittweise die tieferen Schichten der Technik an, die Bitcoin möglich machen, und untersuchen das Innenleben des Bitcoin-Netzwerks und -Protokolls.
Digitale Währungen vor Bitcoin
Das Aufkommen brauchbarer digitaler Währung ist eng mit den Entwicklungen in der Kryptografie verknüpft. Das ist nicht weiter überraschend, wenn man die Herausforderungen betrachtet, vor denen man steht, wenn man Bits nutzt, um Werte zu repräsentieren, die gegen Güter und Dienste getauscht werden können. Für jeden, der digitales Geld akzeptiert, stellen sich drei grundlegende Fragen:
- 1. Kann ich sicher sein, dass das Geld echt und nicht gefälscht ist?
- 2. Kann ich sicher sein, dass digitales Geld nur einmal ausgegeben werden kann (das sogenannte »Double-Spending-Problem«)?
- 3. Kann ich sicher sein, dass niemand außer mir dieses Geld für sich beansprucht?
Die Herausgeber von Papiergeld bekämpfen das Fälschungsproblem mit immer ausgefeilteren Papieren und anspruchsvoller Drucktechnik. Physikalisches Geld verhindert das Problem des doppelten Ausgebens ganz einfach, weil eine Banknote nicht an zwei Orten gleichzeitig sein kann. Natürlich wird konventionelles Geld häufig digital gespeichert und überwiesen. In diesen Fällen werden Fälschungen und Double-Spending verhindert, indem alle elektronischen Transaktionen durch zentrale Instanzen verarbeitet werden, die eine globale Übersicht über alle im Umlauf befindlichen Währungen haben. Bei digitalem Geld, das nicht auf esoterische Tinten oder Hologramme zurückgreifen kann, bildet Kryptografie die Basis für das Vertrauen in die Legitimität eines Besitzanspruchs. Insbesondere kryptografische digitale Signaturen ermöglichen es einem Nutzer, ein digitales Gut oder eine Transaktion zu signieren und so das Eigentum an diesem Gut zu beweisen. Mit der richtigen Architektur können digitale Signaturen auch verwendet werden, um das Double-Spending-Problem in den Griff zu bekommen.
Als die Kryptografie in den späten 1980ern einer breiteren Masse zur Verfügung stand und besser verstanden wurde, versuchten viele Forscher, Kryptografie zum Aufbau digitaler Währungen zu nutzen. Diese frühen Projekte gaben digitales Geld heraus, das durch eine nationale Währung oder ein Edelmetall wie Gold gedeckt war.
Zwar funktionierten diese frühen digitalen Währungen, doch sie waren zentralisiert und dementsprechend von Regierungen und Hackern einfach anzugreifen. Frühe digitale Währungen nutzten (genau wie das traditionelle Bankensystem) eine zentrale Abrechnungsstelle, um alle Transaktionen in regelmäßigen Intervallen abzuwickeln. Leider gerieten die meisten dieser aufstrebenden digitalen Währungen ins Visier besorgter Regierungen und wurden letztendlich auf dem Rechtsweg aus dem Weg geschafft. Einige gingen spektakulär unter, als das Mutterunternehmen unvermittelt abgewickelt wurde. Um gegen Interventionen durch Antagonisten gewappnet zu sein, war eine dezentralisierte digitale Währung nötig, um einen zentralen Angriffspunkt zu vermeiden. Bitcoin ist ein solches System, es wurde bereits von Grund auf dezentralisiert entworfen. Es kommt vollständig ohne zentrale Autorität oder einer zentralen Kontrollstelle aus, die angegriffen oder geschädigt werden könnte.
Geschichte des Bitcoins
Bitcoin wurde 2008 in einem Papier mit dem Titel »Bitcoin: A Peer-to-Peer Electronic Cash System«1 vorgestellt, das unter dem Pseudonym Satoshi Nakamoto (siehe Anhang A) veröffentlicht worden war. Nakamoto kombinierte verschiedene frühere Erfindungen wie b-money und Hashcash, um ein vollständig dezentralisiertes Electronic-Cash-System zu entwickeln, das völlig unabhängig war von einer zentralen Instanz für Geldausgabe und Abrechnung sowie die Validierung von Transaktionen. Die Kerninnovation war die Nutzung eines verteilten Rechensystems (das als Proof-of-Work-Algorithmus bezeichnet wird), um alle zehn Minuten eine globale »Wahl« durchzuführen, die dem dezentralisierten Netzwerk zu einem Konsens über den Zustand der Transaktionen verhilft. Das löst auf elegante Weise das Double-Spending-Problem, bei dem eine einzelne Währungseinheit zweimal ausgegeben werden kann. Bis dahin war das Double-Spending-Problem eine Schwäche digitaler Währungen, die dadurch gelöst wurde, dass alle Transaktionen über eine zentrale Abrechnungsstelle verarbeitet wurden.
Das Bitcoin-Netzwerk startete 2009 basierend auf einer Referenzimplementierung von Nakamoto, die seitdem von vielen anderen Programmierern überarbeitet wurde. Die Leistung der Proof-of-Work-Implementierung (Mining), die für die Sicherheit und Belastbarkeit des Bitcoins sorgt, ist exponentiell angestiegen und übertrifft mittlerweile die kombinierte Rechenleistung der Top-Supercomputer auf der Welt. Die Marktkapitalisierung des Bitcoins kratzt (je nach aktuellem Bitcoin-Dollar-Wechselkurs) an der 100-Milliarden-Dollar-Marke (Stand Oktober 2017). Die bisher größte durch das Netzwerk verarbeitete Transaktion war 150 Millionen Dollar schwer, wurde sofort übertragen und ohne Gebühren verarbeitet.
Satoshi Nakamoto zog sich im April 2011 zurück und übergab die Verantwortung für die Entwicklung des Codes und des Netzwerks an eine Gruppe von Freiwilligen. Die Identität der Person oder Personen hinter Bitcoin ist bisher nicht bekannt. Ungeachtet dessen kontrolliert weder Satoshi Nakamoto noch irgendwer sonst das Bitcoin-System. Es arbeitet auf vollständig transparenten mathematischen Prinzipien, Open-Source-Code und dem Konsens zwischen den Teilnehmern. Diese Erfindung ist für sich genommen schon bahnbrechend und hat bereits zu neuen Forschungen in den Bereichen Distributed Computing, Wirtschaftswissenschaften und Ökonometrie geführt.
Eine Lösung für ein Distributed-Computing-Problem
Satoshi Nakamotos Erfindung liefert auch eine praktische und neue Lösung für ein Problem des Distributed Computing, das als »Problem der byzantinischen G...