Kurz gesagt
- Ein «Fork» – auf Deutsch Gabelung – bedeutet allgemein, dass sich ein Software-Projekt aufspaltet und getrennt weiterentwickelt wird.
- «Soft Fork» und «Hard Fork» beschreiben bei Bitcoin, in welche Richtung die Regeln geändert werden: strenger oder lockerer.
- Beide können zu einer Spaltung des Netzwerks führen, eine Hard Fork aber viel eher.
- Die Soft Fork ist der sanftere Weg, weil die neuen Regeln aus Sicht der alten keinen Widerspruch darstellen.
Was ist ein «Fork»?
In der Welt der offenen Software spricht man von einem Fork, wenn sich ein Projekt in zwei aufteilt. Das passiert oft, wenn sich die Beteiligten nicht über die Richtung einigen können: Eine Gruppe kopiert den Programmcode und entwickelt ihn auf eigene Faust weiter. Diese Möglichkeit ist wertvoll, weil sich Projekte so nicht in endlosen Streitereien festfahren.
Bei Bitcoin ist der Begriff allerdings mehrdeutig, und oft ist nicht klar, was genau gemeint ist. Zudem ist eine Abspaltung hier viel schwieriger als bei einer gewöhnlichen App: Das Netzwerk ist gross und dezentral, und jede Änderung der Regeln betrifft alle Nutzerinnen, Nutzer und Knoten.
Die Konsensregeln
Die Konsensregeln legen fest, welche Blöcke und Überweisungen gültig sind. Sie sind das Herzstück von Bitcoin: Jeder Knoten prüft jeden Block nach diesen Regeln und lehnt ab, was nicht passt. Änderungen an diesen Regeln sind nur in zwei Richtungen möglich: Man kann sie verschärfen oder lockern. Genau das unterscheiden Soft Fork und Hard Fork. Ob es dabei zu einer Spaltung kommt, ist eine andere Frage, auf die ich weiter unten eingehe.
Wie eine Soft Fork aktiviert wird
Damit eine Regeländerung nicht zu einer Spaltung führt, wird sie bei Bitcoin sorgfältig vorbereitet. Ein Vorschlag wird als «Bitcoin Improvement Proposal» (BIP) veröffentlicht und oft über Jahre diskutiert. Ist die Software bereit, wird festgelegt, wann und unter welchen Bedingungen die neuen Regeln gelten. Häufig wurde dafür ein Signal der Miner verwendet: Sie markieren in ihren Blöcken, dass sie bereit sind. Erst wenn innerhalb eines Zeitraums ein grosser Teil der Blöcke dieses Signal trägt – zum Beispiel 90 Prozent –, treten die Regeln in Kraft. So stellt man sicher, dass kaum noch Miner mit alter Software ungültige Blöcke erzeugen.
Das Signal der Miner ist allerdings keine Abstimmung: Entscheidend ist, welche Regeln die Knoten der Nutzer durchsetzen. Was passiert, wenn Miner und Nutzer uneins sind, zeigt die Geschichte in Die Spaltung des Bitcoin-Netzwerks. Bei Taproot 2021 kam ein beschleunigtes Verfahren namens «Speedy Trial» zum Einsatz: Die Miner hatten drei Monate Zeit, ihre Bereitschaft zu signalisieren – sie taten es, und Taproot wurde im November 2021 aktiv.
Ein Beispiel aus dem Restaurant
Ein vegetarisches Restaurant serviert nur fleischlose Gerichte. Seine Stammgäste sind Vegetarier und Veganer.
- Verschärfung: Das Restaurant wird vegan. Vegetarier können weiterhin dort essen – alles, was jetzt serviert wird, ist auch nach ihren Regeln in Ordnung. Niemand wird ausgeschlossen. Das entspricht einer Soft Fork.
- Lockerung: Das Restaurant bietet nur noch Fleischgerichte an. Jetzt können Vegetarier und Veganer dort nicht mehr essen – sie müssen die Änderung akzeptieren oder ein anderes Restaurant suchen. Das entspricht einer Hard Fork.
Soft Fork
- Die Regeln werden verschärft oder es kommen neue Einschränkungen hinzu.
- Es sind danach weniger Blöcke gültig als vorher.
- Vorwärtskompatibel: Neue Blöcke halten auch die alten Regeln ein. Knoten mit alter Software akzeptieren sie weiterhin.
- Nicht alle müssen ihre Software aktualisieren, damit die Änderung in Kraft tritt.
Ein Knoten mit alter Software merkt von einer Soft Fork oft gar nichts. Er akzeptiert die neuen Blöcke weiterhin, versteht aber die neuen Regeln nicht und prüft sie deshalb auch nicht. Für volle Sicherheit lohnt es sich also trotzdem, die Software zu aktualisieren – aber niemand ist dazu gezwungen.
Gut geplante Soft Forks verlaufen in der Regel ohne Spaltung. Ganz ausgeschlossen ist sie aber nicht: Erzeugen Miner mit alter Software weiterhin Blöcke, die nach den neuen Regeln ungültig sind, und hat diese alte Software genügend Rechenleistung, können zwei Ketten entstehen.
Fast alle grossen Verbesserungen von Bitcoin wurden als Soft Fork eingeführt, etwa P2SH im Jahr 2012, SegWit 2017 und Taproot 2021.
Hard Fork
- Die Regeln werden gelockert oder Einschränkungen fallen weg.
- Es sind danach mehr Blöcke gültig als vorher.
- Nicht vorwärtskompatibel: Neue Blöcke verletzen die alten Regeln. Knoten mit alter Software lehnen sie ab.
- Alle müssen gleichzeitig aktualisieren, um eine Spaltung zu vermeiden.
Wer seine Software nicht aktualisiert, bleibt bei einer Hard Fork auf der alten Kette zurück. Er sieht die neuen Blöcke nicht mehr, und seine Überweisungen gelten nur noch auf der alten Kette. Bei einer unumstrittenen Änderung, die alle mittragen, stirbt die alte Kette schnell aus. Bei einer umstrittenen dagegen können beide weiterleben.
Bei umstrittenen Änderungen ist es praktisch ausgeschlossen, dass alle mitziehen. Hard Forks enden deshalb oft in zwei getrennten Netzwerken mit zwei verschiedenen Währungen. Das bekannteste Beispiel ist Bitcoin Cash, das sich im August 2017 abgespalten hat – die Geschichte dazu erzähle ich in Die Spaltung des Bitcoin-Netzwerks.
Spaltungen der Kette
Eine Spaltung (englisch Chain Split) liegt vor, wenn gleichzeitig zwei oder mehr konkurrierende Blöcke an der Spitze der Kette stehen. Das kann auch ohne jede Regeländerung passieren: Finden zwei Miner fast gleichzeitig einen Block, gibt es für kurze Zeit zwei Versionen. Das löst sich meist mit dem nächsten Block von selbst.
Wichtig ist also: Forks und Spaltungen sind zwei verschiedene Dinge. Eine Hard Fork muss nicht zu einer Spaltung führen, wenn alle mitmachen – und eine Soft Fork kann trotzdem eine verursachen. Auch durch Programmfehler kann es zu Spaltungen kommen: Im März 2013 führte eine neue Version der Bitcoin-Software ungewollt zu einer Spaltung, weil sie einen Block akzeptierte, den ältere Versionen ablehnten. Die Entwickler und grossen Miner einigten sich innert Stunden, zur alten Kette zurückzukehren.
Beispiel: die Blockgrösse
Die maximale Blockgrösse ist eine fest einprogrammierte Grenze. Man kann sie in zwei Richtungen ändern:
Verkleinern – eine Soft Fork
Wird die Grenze zum Beispiel von 1 Megabyte auf 0,5 Megabyte gesenkt, sind manche bisher gültigen Blöcke künftig ungültig. Aus Sicht der alten Software ist jeder neue, kleinere Block aber weiterhin gültig – es handelt sich um eine Verschärfung. Die Gefahr einer Spaltung ist gering, wenn die Aktualisierung gut abgestimmt ist. Sie besteht nur, wenn Miner mit alter Software weiterhin grössere Blöcke erzeugen.
Vergrössern – eine Hard Fork
Wird die Grenze von 1 auf 10 Megabyte angehoben, bleiben alle alten Blöcke gültig. Aber die neuen, grösseren Blöcke lehnt die alte Software ab: Es gibt keine Vorwärtskompatibilität. Aus Sicht der neuen Software ist die alte zwar verträglich, aus Sicht der alten nicht. Die Gefahr einer Spaltung ist hoch, wenn nicht alle aktualisieren.
Beispiel: SegWit
SegWit wurde 2017 als Soft Fork eingeführt, obwohl es auf den ersten Blick eine grössere Blockgrösse zu brauchen schien. Der Trick: Die Grenze von 1 Megabyte blieb für die alte Software bestehen. Die Signaturdaten – der sogenannte «Witness» – werden getrennt übertragen und an den Block angehängt. Ältere Knoten sehen diese Daten gar nicht, also entsteht für sie kein Widerspruch. Die Überweisungen sind so gebaut, dass sie aus Sicht der alten Software auch ohne die Signaturdaten gültig sind.
Die Lehre daraus: Auch komplexe Änderungen, die scheinbar eine Hard Fork erfordern, lassen sich mit geschickter Gestaltung oft als Soft Fork umsetzen. Genau deshalb bevorzugt die Bitcoin-Gemeinschaft diesen Weg.
Für dich als Nutzerin oder Nutzer heisst das: Bei einer Soft Fork musst du in der Regel nichts tun, deine Bitcoin und deine Wallet funktionieren weiter. Bei einer Hard Fork mit Spaltung besitzt du plötzlich Münzen auf beiden Ketten. Dann ist Vorsicht geboten: Betrüger nutzen solche Situationen gerne mit gefälschten Wallets aus, und eine unbedachte Überweisung auf der einen Kette kann unter Umständen auch auf der anderen gelten. Abwarten, bis seriöse Anbieter Anleitungen veröffentlichen, ist dann die beste Strategie.
Wer tiefer eintauchen will, wie Änderungen an Bitcoin vorgeschlagen, diskutiert und umgesetzt werden, dem empfehle ich das Buch «The Blocksize War» von Jonathan Bier über den Streit um die Blockgrösse von 2015 bis 2017.