Quantencomputerschutz für El Salvadors Bitcoin-Reserven

Als El Salvador Bitcoin als gesetzliches Zahlungsmittel einführte, legte man auch eine staatliche Reserve an. Nun werden die Bitcoins zur Sicherheit verteilt.

vorlesen Druckansicht

(Bild: Jessica Nachtigall/heise medien)

Lesezeit: 8 Min.
Inhaltsverzeichnis

Bis zum 30. August 2025 tummelten sich über 6000 Bitcoins im Wert von rund 700 Millionen US-Dollar auf einer einzigen Bitcoin-Adresse: der des Bitcoin Office von El Salvador, der Bitcoin-Verwaltungsbehörde des mittelamerikanischen Staats. Ein buchstäblich dicker Fisch, der nun in kleinere, jeweils 500 Bitcoins große Brocken aufgeteilt wurde – um die staatliche Bitcoin-Reserve vor etwaigen künftigen Angriffen mittels Quantencomputern zu schützen.

El Salvador war das erste Land, das Bitcoin als gesetzliches Zahlungsmittel einführte. Ab September 2021 konnte man überall mit Bitcoins statt mit US-Dollar bezahlen. Wichtige Ziele waren, Armen einen besseren Zugang zu Zahlungssystemen zu verschaffen und Exil-Salvadorianern eine günstige Möglichkeit zu bieten, Geld in die Heimat zu schicken – denn über traditionelle Banken kosten internationale Überweisungen hohe Gebühren.

Mehr zum Thema Krypowährung

Doch es gab große Bedenken, El Salvador könnte ein El Dorado für Geldwäsche werden: Zwar lassen sich alle jemals getätigten Bitcoin-Transaktionen von jedermann lückenlos in der Blockchain nachvollziehen, doch meist ist unklar, wem die beteiligten Adressen gehören. Deshalb entschied sich das Bitcoin Office, die Bitcoins der staatlichen Währungsreserve auf einer einzigen, öffentlich bekannt gegebenen Adresse zu verwahren – und diese dauerhaft für alle Transaktionen zu verwenden.

Das Verfahren wird auch als Address Reuse bezeichnet und bedeutet, dass man dieselbe Bitcoin-Adresse mehrfach in Transaktionen verwendet und Gelder damit empfängt. Das ist im Bitcoin-Regelwerk aber gar nicht vorgesehen, sondern funktioniert quasi nur aus Versehen.

Am 30. August verteilte das Bitcoin Office von El Salvador die staatliche Reserve von über 6000 Bitcoins auf neue Adressen. So müssten Angreifer schon mehrere Schlüssel knacken, um an den ganzen großen Fisch zu kommen.

Bitcoin-Adressen und die dahinterstehenden öffentlichen und privaten Schlüssel sind Einweg-Token, die lediglich in einer Transaktion ein einziges Mal zum Empfang von Geldern verwendet werden. Der Fachbegriff dafür lautet Bitcoin Invoice Address, denn die Adresse soll lediglich für die Bezahlung einer bestimmten Rechnung Verwendung finden, sodass man den auf die Rechnungsadresse transferierten Betrag unmittelbar zuordnen kann.

Der Geldbetrag, der an eine Adresse geschickt wurde, wird auch nicht Guthaben genannt, sondern als Unspent Transaction Output (UTXO) bezeichnet – das bisher nicht verbrauchte Ergebnis einer Transaktion, über das Sie genau einmal verfügen dürfen. Der Knackpunkt ist: Wollen Sie Geld aus einem UTXO für eine Zahlung oder Überweisung nutzen, so können Sie dafür keinen Teilbetrag angeben. Eine UTXO lässt sich immer nur einmalig und vollständig als Input für eine Transaktion verwenden – nach der Transaktion ist der als Input verwendete UTXO stets vollständig verbraucht.

Sie können jedoch auf der Empfängerseite, also bei den Invoice-Adressen, den zu transferierenden Betrag angeben. Wollen Sie nur einen Teilbetrag eines UTXO weiterleiten, um etwa eine Rechnung zu bezahlen, so müssen Sie den Rest des UTXO an sich selbst schicken, damit ihn nicht die Bitcoin-Miner als Transaktionsgebühr erhalten.

Haben Sie zum Beispiel einen UTXO von einem Bitcoin und wollen eine Rechnung über einen halben Bitcoin bezahlen, so müssen Sie eine zweite, eigene Invoice-Adresse angeben, auf die Sie die andere Hälfte des Bitcoins transferieren. Die Transaktion enthält dann eine einzelne UTXO-Adresse mit einem Bitcoin als Input und zwei Inovice-Adressen als Outputs, an die jeweils ein halber Bitcoin transferiert wird – wobei die zweite Invoice-Adresse Ihnen selbst gehört.

Bei den heute üblichen hierarchisch-deterministischen Wallets (HD-Wallets) ist das kein Problem mehr, die Clientsoftware wie zum Beispiel Electrum transferiert den überzähligen Betrag (abzüglich der Transaction Fee für die Miner – die bekommen stets den Rest) automatisch auf eine bislang unbenutzte Adresse, die sogenannte Wechselgeldadresse (Change Address).

Bevor es deterministische Wallets gab, waren Bitcoin-Wallets Sammlungen von untereinander unabhängigen Schlüsseln und Adressen, die nur bei Bedarf neu erzeugt wurden – und wovon sofort ein neues Backup erzeugt werden musste, denn im Backup von vor vier Wochen gab es die neue Adresse mit ihren Schlüsseln noch nicht. Unzählige Bitcoins gingen verloren, weil die neue Adresse, auf die nach der letzten Transaktion die restlichen Bitcoins transferiert wurden, nicht im Backup enthalten waren.

Die Lösung war, als Invoice-Adresse für das Wechselgeld dieselbe UTXO-Adresse anzugeben, die schon als Input verwendet wurde. So wurde erst der gesamte ursprüngliche Betrag der UTXO-Adresse verbraucht, aber im gleichen Atemzug das Wechselgeld als neuer UTXO für diese Adresse in der Blockchain hinterlegt – die UTXO-Adresse wurde also wiederverwendet. Bei sogenannten Paper Wallets, mit denen man Bitcoins sicher im Schließfach verwahrt, ist diese Praxis heute noch verbreitet.

Das Bitcoin Office von El Salvador nutzte Address Reuse als impliziten Herkunftsnachweis für die offizielle Bitcoin-Reserve, so konnte jedermann leicht nachvollziehen, wenn das Bitcoin Office die Reserve um weitere Bitcoins aufstockte oder Bitcoins aus der Reserve verkaufte – man musste nur diese eine Adresse überwachen.