Fork
Forks in Kürze
- Fork bezeichnet eine Abspaltung oder eine Regeländerung.
- Da Bitcoin & Co. auf verteilten Netzwerken basieren, muss der Großteil der Teilnehmer mit den Regeln einverstanden sein.
- Nimmt der Großteil der Teilnehmer die Regeländerung an, ergibt sich ein Soft Fork ("sanfte Gabelung").
- Bei Uneinigkeit im Netzwerk kommt es zu einem Hard Fork ("harte Gabelung") und der Abspaltung von der bisherigen Blockchain.
Was ist ein Fork?
"Fork" kommt aus dem Englischen und steht für Gabelung. Der Begriff bezeichnet eine Aufteilung der Blöcke in der Blockchain in zwei separate Stränge. Ein Fork tritt ein, wenn im Blockchain-Netzwerk Uneinigkeit über die Konsensregeln herrscht.
Alle Nodes arbeiten unter den gleichen Konsensregeln. Änderungen können aber notwendig werden, zum Beispiel durch ein Update der Software. Damit das System weiterhin funktioniert, müssen alle Nodes den Regeln zustimmen. Passiert das nicht, spaltet sich die Blockchain auf.
Kategorien von Forks
Forks lassen sich in mehrere Arten unterteilen. Sie können sowohl unbeabsichtigt als auch beabsichtigt stattfinden. Bei letzteren unterscheidet man zwischen Soft und Hard Forks.
Eine andere Kategorisierung besteht in der Art der Initialisierung.
Unbeabsichtigter Fork
Ein unbeabsichtigter Fork tritt auf, wenn zwei Miner zur selben Zeit einen Block finden. Ein Block wird der Kette hinzugefügt, der andere "verwaist". Transaktionen, die in diesem Block enthalten sind, gehen zurück in den Pool. Diese Art des Forks ist relativ häufig und hat keinen langfristigen Einfluss auf die Blockchain.
Soft Fork
Bei einem Soft Fork handelt es sich um eine "sanfte" Änderung, wie der Name besagt. Wenn es eine Änderung der Software gibt, ist quasi ausgeschlossen, dass alle Nodes gleichzeitig upgraden. Meist nutzt ein Teil der Nodes das Update, während andere Nodes noch vor der Umstellung stehen. Bei einem Soft Fork ist allerdings sichergestellt, dass beide Versionen der Software weiterhin funktionieren. Die Software ist abwärtskompatibel. Das bedeutet, dass Nodes mit der alten Software die Entscheidungen nach den Regeln der neuen Software annehmen.
Diese Art des Forks benötigt eine Mehrheit in der Unterstützung. Andernfalls droht eine Spaltung, die man als Hard Fork bezeichnet.
Hard Fork
Zu einem Hard Fork kommt es, wenn Teilnehmer (insbesondere Miner) des Blockchain-Netzwerks keine Einigung zu einer Änderung finden. Das kann zum Beispiel eintreten, wenn die Konsenregeln grundsätzlich modifiziert werden.
Damit sind die neue und alte Version der Software nicht kompatibel. Nodes kommunizieren ab diesem Zeitpunkt auf unterschiedlicher Grundlage. Die Blockchain spaltet sich von der bestehenden ab. Wenn beide Versionen Miner haben, die Blocks produzieren, entsteht eine neue Währung. Ein Beispiel hierfür war die geplante Abspaltung von Bitcoin Cash von Bitcoin.
User-activated Soft Fork
Wird der Fork nicht von Minern aktiviert, spricht man von einem "user-activated fork". Er kann nur erreicht werden, wenn die Full Nodes eine wirtschaftliche Mehrheit erzielen. Das bedeutet in der Regel eine Zustimmung unter Teilnehmern mit deutlichem Einfluss auf das Netzwerk.
Beim nutzeraktivierten Soft Fork legen sich die Nodes zunächst auf ein bestimmtes Datum fest. Ab diesem Zeitpunkt werden die neuen Regeln durchgesetzt. Nehmen die meisten Nodes die Regelungen an, ist der Soft Fork gelungen.
User-activated Hard Fork
In dieser Art des Forks fügen die Entwickler der Software eine obligatorische Änderung hinzu. Auf diese Weise werden Blocks, die zuvor ungültig waren, valide.
Beispiele für Forks
BIP 66 ist ein Soft Fork für Bitcoin, der 2015 für mehr Sicherheit sorgte. Es handelt sich dabei um die Überarbeitung der Signatur-Validierung. P2SH änderte die Formatierung der Adressen für Bitcoin.
Das beste Beispiel für einen Hard Fork ist die Spaltung von Ethereum in zwei verschiedene Währungen. Sie sind seit diesem Zeitpunkt als Ethereum (ETH, neue Regeln) und Ethereum Classic (ETC, alte Regeln) bekannt. Der Hintergrund für diese Entscheidung lässt sich hier nachlesen.
- https://en.wikipedia.org/wiki/Fork_(blockchain)
- https://en.wikipedia.org/wiki/User_activated_soft_fork
- https://admiralmarkets.de/wissen/articles/forex-basics/was-sind-blockchain-forks
- https://www.investopedia.com/terms/h/hard-fork.asp
- https://www.btc-echo.de/tutorial/der-fork-guide-was-ist-eine-fork-und-welche-arten-gibt-es-soft-fork-hard-fork-uasf-masf/
- https://bitcoin.org/en/glossary/fork
- https://cointelegraph.com/explained/uasf-vs-uahf-explained