Kurz gesagt
- «Double Spend» heisst auf Deutsch Doppelausgabe: dasselbe Geld zweimal ausgeben.
- Digitale Daten lassen sich beliebig kopieren. Digitales Geld könnte deshalb mehrfach ausgegeben werden.
- Satoshi Nakamoto hat Bitcoin so gebaut, dass genau das verhindert wird – ohne zentrale Stelle.
In einem Netzwerk wie Bitcoin gibt es keine zentrale Instanz, die alles kontrolliert. Trotzdem gibt es Angriffe, die einem solchen Netzwerk oder seinen Teilnehmenden schaden könnten. Einer der wichtigsten ist die Doppelausgabe.
Was ist eine Doppelausgabe?
Stell dir vor, du bezahlst im Laden mit einer Fünfzigernote – und nimmst sie danach heimlich wieder aus der Kasse, um damit ein zweites Mal zu bezahlen. Mit Bargeld ist das kaum möglich: Wer eine Note weitergibt, hat sie nicht mehr. Und wer Noten fälschen will, braucht Spezialpapier, Druckmaschinen und viel Aufwand.
Digitale Daten dagegen sind nur Bits, und Bits lassen sich mit einem Klick beliebig oft kopieren. Ein Foto, das du verschickst, hast du danach immer noch. Wäre digitales Geld einfach eine Datei, könnte man es kopieren und mehrfach ausgeben. Ein Angreifer mit einem einzigen Bitcoin könnte ihn gleichzeitig an mehrere Empfänger schicken und so alle betrügen. Oder er könnte die Bitcoin aus einer Überweisung kopieren und sie sich selbst ein zweites Mal auszahlen.
Lange Zeit galt dieses Problem ohne eine zentrale Stelle, die jede Zahlung genehmigt – also ohne Bank –, als unlösbar. Bitcoin war das erste System, das es ohne Mittelsmann gelöst hat.
Wie Bitcoin das verhindert
Im Bitcoin-Netzwerk lassen sich Bitcoin nicht einfach kopieren: Jeder Betrag ist im öffentlichen Kassenbuch eindeutig erfasst. Bleibt das Problem, dass jemand versuchen könnte, denselben Betrag zweimal auszugeben – etwa indem er zwei widersprüchliche Überweisungen gleichzeitig verschickt.
Dafür prüft jeder Knoten im Netzwerk bei jeder neuen Überweisung, ob die verwendeten Bitcoin schon einmal ausgegeben wurden. Von zwei widersprüchlichen Überweisungen kann nur eine gültig werden: die, die zuerst in einem Block landet. Die andere wird abgelehnt.
Das funktioniert aber nur, wenn sich die Vergangenheit nicht nachträglich ändern lässt. Könnte jemand die Geschichte umschreiben, könnte er eine bereits bestätigte Zahlung wieder verschwinden lassen und das Geld ein zweites Mal ausgeben. Genau davor schützt der Mechanismus, mit dem neue Blöcke entstehen.
Proof of Work
Bei Bitcoin werden neue Blöcke durch einen energieaufwendigen Vorgang erstellt, das Mining. Wer einen alten Eintrag ändern wollte, müsste mindestens so viel Energie aufwenden, wie seit diesem Eintrag ins gesamte Netzwerk geflossen ist – und dabei schneller sein als alle anderen Miner zusammen. Das macht nachträgliche Änderungen extrem schwierig und vor allem unwirtschaftlich.
Daraus folgt eine praktische Regel: Je mehr Blöcke nach dem Block mit deiner Überweisung entstanden sind, desto sicherer ist sie. Man spricht von Bestätigungen. Nach einer Bestätigung ist eine Doppelausgabe bereits sehr unwahrscheinlich, nach sechs Bestätigungen – also rund einer Stunde – gilt eine Zahlung auch bei grossen Beträgen als endgültig.
Proof of Stake
Andere Kryptowährungen setzen auf ein anderes Verfahren, Proof of Stake. Dort wird ausgewählt, wer den nächsten Block erstellen darf, je nachdem, wie viele Münzen jemand als Pfand hinterlegt hat. Wer eine Doppelausgabe versuchen wollte, müsste einen sehr grossen Teil der Münzen des Netzwerks besitzen und riskiert, sein Pfand zu verlieren. Auch das macht Angriffe teuer – allerdings auf Kosten der Unabhängigkeit, weil die grössten Besitzer den meisten Einfluss haben.
Kein Konsens, sondern Schutz
Oft liest man, Proof of Work und Proof of Stake seien «Konsensprotokolle». Das stimmt so nicht ganz. Worauf sich das Netzwerk einigt, legen die Regeln fest, die jeder Knoten selbst prüft. Proof of Work und Proof of Stake sorgen dafür, dass diese Einigung nicht von Angreifern unterlaufen werden kann – etwa durch Doppelausgaben oder durch Sybil-Angriffe, bei denen jemand massenhaft falsche Identitäten erzeugt.