Ein Guthaben, zwei Aufträge
Stell dir vor, Alice kontrolliert zehn Einheiten digitalen Werts. Fast gleichzeitig signiert sie eine Zahlung über zehn Einheiten an Bob und eine Zahlung derselben zehn Einheiten an Eva. Das sind nicht zwei durch zwanzig Einheiten gedeckte Zahlungen, sondern zwei widersprüchliche Vorschläge, die dieselbe Quelle verwenden.
Derselbe körperliche Geldschein kann nicht gleichzeitig in zwei Kassen liegen, sofern er nicht gefälscht oder gestohlen wird. Digitale Nachrichten nehmen jedoch unterschiedliche Wege und Computer können sie in verschiedener Reihenfolge empfangen. Ohne gemeinsame Entscheidung könnten Bob und Eva beide glauben, ihre Zahlung sei zuerst angekommen.
Warum eine gültige Signatur nicht genügt
Alice kann beide Aufträge mit einem gültigen Schlüssel signieren. Die Signatur bestätigt ihre Autorisierung, sagt dem gesamten Netz aber nicht, welche Nachricht zuerst gelten soll. Die Uhrzeit vom Rechner des Absenders ist unzuverlässig: Uhren können falsch stehen und Nachrichten brauchen unterschiedlich lange.
Herkömmliche digitale Zahlungen überlassen den Konflikt einer Bank oder einem Token-Herausgeber. Der Verwalter führt Salden oder eine Liste verbrauchter Einheiten und lehnt die zweite Zahlung ab. Auch frühere Entwürfe für digitales Bargeld behielten oft eine Bank, die Seriennummern prüfte oder eine wiederholte Ausgabe nachträglich aufdeckte.
Wie Bitcoin eine gemeinsame Geschichte auswählt
Bitcoin-Transaktionen werden im Netz verbreitet. Knoten lehnen eine Transaktion ab, wenn sie nach ihrem gültigen Zustand einen bereits ausgegebenen Output verwendet. Miner sammeln gültige Transaktionen in Blockkandidaten und suchen einen Proof of Work. Jeder Block verweist auf den vorherigen und bildet so eine geordnete Geschichte.
Entstehen vorübergehend zwei gültige Zweige, folgen die Knoten der gültigen Kette mit dem größten angesammelten Proof of Work. Eine der widersprüchlichen Zahlungen kann im angenommenen Zweig landen, die andere wird ungültig. Weitere Blöcke erhöhen die Kosten einer Umschreibung; deshalb wartet man bei größeren Beträgen meist auf mehr Bestätigungen.
- ein Knoten prüft Signaturen und ob Inputs noch nicht ausgegeben wurden
- Proof of Work verleiht einer vorgeschlagenen Geschichte messbares Gewicht
- Bestätigungen senken das Umkehrrisiko, schaffen aber keine sofortige mathematische Endgültigkeit
Die Lösung ist weder Magie noch absolute Gewissheit
Eine noch nicht in einem Block enthaltene Zahlung kann mit einer anderen kollidieren; der Empfänger muss dieses Risiko berücksichtigen. Auch danach ist Sicherheit probabilistisch: Je mehr Arbeit über dem Block liegt, desto teurer wird eine stärkere alternative Geschichte. Die angemessene Zahl der Bestätigungen hängt von Betrag, Umständen und Risikotoleranz ab.
Das Modell setzt außerdem voraus, dass ein Angreifer nicht dauerhaft den entscheidenden Anteil der Rechenleistung kontrolliert und dass Nutzer Regeln mit vertrauenswürdiger Software prüfen. Bitcoin macht Betrug nicht unter allen Umständen unmöglich; es macht die Änderung der Geschichte messbar teuer und öffentlich überprüfbar.