Die Art und Weise, wie neue Bitcoin kreiert werden sowie die strikt begrenzte maximale Anzahl Coins, welche je existieren werden sind essentielle Eigenschaften von Bitcoin.
Dadurch unterscheidet sich Bitcoin von FIAT-Währungen und wird daher manchmal und etwas salopp als digitales Gold bezeichnet. Wie Gold werden auch Bitcoin unter Aufwand von Energie gefunden (mined), während FIAT-Geld ohne Aufwand aus dem Nichts, d.h. per Tastendruck, geschaffen wird.
In diesem Artikel gehen wir in vier Teilen der Frage nach, warum denn so eine Eigenschaft als unveränderlich angeschaut wird, wo es sich bei Bitcoin doch um Software handelt, die immer wieder Änderungen erfährt1.
Der Artikel ist relativ lang und ausführlich. Auch wenn Du nicht alles lesen magst, so wirst Du erkennen, dass es praktisch ausgeschlossen ist, dass sich aus Versehen ein dummer Fehler einschleicht, wie das sonst bei vielen Softwareprojekten der Fall ist. Bitcoin ist viel, viel, viel sicherer gebaut als Standard-Projekte.
Wenn Du mit dem Studium durch bist, dann wirst Du wissen, dass Bitcoin entgegen den Einwänden von Ignoranten, einen inneren Wert besitzt.
Artikel-Übersicht
- Teil 1 – Konsens unter Bitcoinern
- Teil 2 – Änderungen am Bitcoin Protokoll
- Teil 3 – Der Code der 21 Millionen
- Teil 4 – Verlorene und vernichtete Bitcoin
- Satoshis schlafende Bitcoin
Teil 1 – Konsens unter Bitcoinern
In diesem Abschnitt geht es nicht um den sog. Nakamoto-Konsensus, der entscheidet, welche Bitcoin-Transaktion gültig und welche ungültig ist. Hier wird der Konsens angesprochen, den die Bitcoiner erreichen müssen, damit Änderungen am Bitcoin-Protokoll selber ausgeführt werden können.
Das Verfahren, nachdem sich die Welt auf eine Änderung am Bitcoin-Protokoll einigt, unterliegt selber laufenden Anpassungen und entwickelt sich durch die Nutzung weiter, ohne dass eine zentrale Autorität Vorgaben macht oder Ratifikationen vornimmt.
Diese Evolution durch Nutzung ist vergleichbar mit der Weiterentwicklung der Sprache2. Dies ist kein Zufall, denn Computer-Code ist Sprache, es handelt sich in beiden Fällen um ein und dasselbe Phänomen.
Wie werden nun also Änderungen besprochen? Ich möchte das anhand des Verbesserungsvorschlags BIP-1193 (engl. Bitcoin Improvement Proposal) illustrieren. Es wird darin vorgeschlagen, dass man im Vornherein festlegen kann, wie Coins ausgegeben werden können.
Zum Beispiel, dass die Coins, wenn Marius signiert, nur an eine vorbestimmte Adresse verschickt werden können, wenn jedoch Marius und Ivan signieren, die Coins überallhin geschickt werden können. Oder man kann festlegen, dass vor Ablauf einer vorgegebenen Frist, die Coins nur auf eine vorbestimmte Adresse überwiesen werden können, danach aber überall hin, etc. Mit diesen Werkzeugen kann man Bitcoin besser gegen Verlust durch Diebstahl schützen und auch die Vererbung wird technisch einfacher.
Vorgeschlagen wird die Erweiterung der Bitcoin Skript-Sprache um den Befehl OP_CTV:
- 2019: Veröffentlichung von BIP-119 durch Jeremy Rubin
- 2020-2021: Code-Implementierung und Softwaretests
- 2022: (fehlgeschlagener) Aktivierungsversuch mit Speedy Trial
- 2023-heute: laufende Diskussionen an Tagungen, in Podcasts4, auf X
An diesem Beispiel kann man erkennen, wie aufwändig es geworden ist, Änderungen am Protokoll zu erwirken. Jameson Lopp hat in diesem super coolen Interview (ab Minute 31, in E) eindrücklich erklärt, wo heute Bitcoin steht, und warum er für BIP-119 ist:
- spürbare Ossifikations-Tendenzen, da Bitcoin bereits zwei Billionen Dollar sichert, und die Whales lieber keine weiteren Risiken eingehen wollen
- die Hauptanwendung von Bitcoin ist im Moment die Aufbewahrung relativ grosser Beträge durch relativ wenige (gemessen an der Weltbevölkerung) Personen
- soll Bitcoin auch in Zukunft für alle frei zugänglich (permissionless) sein, muss sich das Protokoll weiterentwickeln, denn heute können maximal ca. 20 bis 50 Millionen Personen via Lightning teilnehmen
- Personen, die sich für eine Änderung einsetzen müssen ein extrem dickes Fell haben und bereit sein, sich über mehrere Jahre konsequent für die Änderung einzusetzen.
Die Diskussionen weiten sich schnell von technischen auf finanzielle, staatspolitische, bürgerrechtliche, philosophische und ethische Themen aus.
Teil 2 – Änderungen am Bitcoin Protokoll
Wie würde konkret eine Erhöhung auf 22 Millionen im Bitcoin-Protokoll ablaufen?
- Als erstes müsste man ein BIP schreiben und veröffentlichen. Das kann jeder, man braucht keine speziellen Berechtigungen, muss sich jedoch an das BIP-Format halten.
- Als nächstes muss man das neue BIP in der Bitcoin Entwickler-Gemeinde bekannt machen (Bitcoin mailing list, IRC, Telegram-Gruppen, Podcasts, Tagungen). Stösst man auf positives Echo, dann beginnen die Entwickler das BIP zu begutachten und zu kommentieren.
- Sind die Rückmeldungen darauf erfolgsversprechend (oder auch sonst) wird nun erst die Änderung programmiert und als Vorschlag (pull request) im Bitcoin code repository (GitHub) eingestellt. Dieses wird von einem BIP Editor formal geprüft.
- Damit der Prozess weitergeht, muss nun ein grossmehrheitlicher Konsensus in der gesamten Community (Entwickler, Miner, Börsen, Händler, Node-Betreiber, User, Investoren, etc.) gefunden werden.
- Hat das Proposal alles erfolgreich überstanden beginnt die Aktivierungsphase, für die in der Vergangenheit verschiedene Verfahren angewendet wurden. Dieser Prozess sieht vor, dass Miner und Full-Node-Betreiber die neue Software installieren. Die Änderung ist danach idealerweise auf den meisten Rechnern installiert aber noch nicht aktiv. Die Änderung wird nun aktiviert, falls in einem definierten Zeitabschnitt ein gewisser Prozentsatz von Blöcken Bereitschaft signalisiert, die Änderung durchzuführen (z.B. 95% aller Blöcke innerhalb eines 2-Wochen-Zeitabschnitts signalisieren Bereitschaft).
Teil 3 – Der Code der 21 Millionen
Wie genau sieht nun der Code aus, der sicherstellt, dass nicht mehr als 21 Millionen Bitcoins ausgegeben werden?
Die Funktion GetBlockSubsidy entscheidet darüber, wie viele Coins maximal pro Block neu kreiert werden:
CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams)
{
int halvings = nHeight / consensusParams.nSubsidyHalvingInterval;
// Force block reward to zero when right shift is undefined.
if (halvings >= 64)
return 0;
CAmount nSubsidy = 50 * COIN;
// Subsidy is cut in half every 210,000 blocks which will occur approximately every 4 years.
nSubsidy >>= halvings;
return nSubsidy;
}
Der entscheidende Input für obige Formel ist nSubsidyHalvingInterval: damit sind die Anzahl Blöcke gemeint, nach denen jeweils ein Halving stattfindet.
consensus.nSubsidyHalvingInterval = 210000;
Die Anzahl Bitcoins, die jemals ausgegeben werden entspricht folgender Formel und konvergiert gegen 21 Millionen:

Aufgrund von Rundungen auf ganze Satoshis wird sich die genaue Anzahl ausgegebener Bitcoin dereinst auf 20,999,999.9769 BTC belaufen.
Um nun künftig mehr Bitcoins zu generieren, müsste man ein BIP schreiben, das vorschlägt, entweder die Zahl 50 oder die Zahl 210’000 zu erhöhen. Danach müsste man die oben beschriebenen Phasen durchlaufen.
Da kein Bitcoiner seine Bitcoin verwässert haben möchte, sind die Chancen auf Erfolg bei diesem BIP nahezu null :-(.
Teil 4 – Verlorene und vernichtete Bitcoin
Die Anzahl Bitcoin wird also 21 Millionen nicht erreichen. In der Praxis ist es sogar so dass die Anzahl weit darunter liegen wird. So können z. B. die ersten 50 BTC des Genesis-Blocks nie ausgegeben werden können.
Des weiteren gibt es BTC, die nachweislich verbrannt wurden, also an eine Adresse geschickt wurden, für die es höchstwahrscheinlich keinen privaten Schlüssel gibt, beispielsweise die Adresse 1BitcoinEaterAddressDontSendf59kuE.
Ausserdem sein hier noch die vielen verlorenen Wallet-Dateien, Passphrases, PINs, etc. erwähnt. Die wohl bekanntesten sind James Howells (entsorgte Harddisk mit 8’000 BTC) und Stefan Thomas (Passwort vergessen und nur noch zwei Versuche auf seinem IronKey USB Stick mit 7’002 BTC).
Satoshis schlafende Bitcoin
Satoshi hat an die eine Million Bitcoin gefunden, wovon er bisher nur zehn ausgegeben hat. Und zwar in der allerersten Bitcoin Transaktion, die er an die Adresse von Hal Finney schickte und die in Block 170 verewigt wurde.
- Der Artikel behandelt nicht, warum Satoshi die Gesamtmenge auf 21 Millionen Bitcoin (oder exakter: 2.1 Billiarden Satoshi) festgelegt hat. ↩︎
- Während frühere Generationen Wörterbücher als Hüter und Verteidiger der „richtigen Sprache“ angesehen haben, ist dies heute nicht mehr der Fall. Die meisten bedeutenden Wörterbücher konzentrieren sich nun auf die Beschreibung der Sprache, die von den Menschen gesprochen wird, und lassen dabei ganz bewusst wissenschaftlich-pedantische Einwendungen außer Acht. (Quelle) ↩︎
- Hier ist der Link zum BIP-119 Vorschlag, sowie einer Besprechung auf Deutsch. ↩︎
- Andrew Poelstra on Covenants (OP_CAT vs OP_CTV) ↩︎
Schreibe einen Kommentar