More
    StartBlockchain & KryptoHard Fork und Soft Fork erklärt

    Hard Fork und Soft Fork erklärt

    Einführung

    Wenn Sie aufgefordert werden, Ihre digitale Banking-App auf Ihrem Smartphone zu aktualisieren, denken Sie wahrscheinlich nicht einmal zweimal darüber nach. Vielleicht aktualisiert sich Ihr Telefon sogar automatisch, ohne dass Sie es merken. Schließlich ist dies ein notwendiger Prozess – wenn Sie nicht die neueste Version der Software installieren, laufen Sie Gefahr, dass Ihnen der Zugang zu den Diensten verwehrt wird.

    Bei quelloffenen Kryptowährungen liegen die Dinge ganz anders. Sie müssen nicht jede Zeile des Codes lesen, der die Basis für Bitcoin zugrunde liegt, um sie zu nutzen, aber die Möglichkeit, dies zu tun, ist wichtig. Denn hier gibt es keine Hierarchie und keine Bank, die einfach Updates einspielen und Dinge nach Belieben ändern kann. Daher kann die Implementierung neuer Funktionen in Blockchain-Netzwerken eine Herausforderung sein.

    In diesem Artikel werden wir untersuchen, wie Kryptowährungsnetzwerke trotz des Fehlens einer zentralen Autorität aufgerüstet werden können. Dazu verwenden sie zwei verschiedene Mechanismen: Hard Forks und Soft Forks.

    Wer trifft die Entscheidungen in einem Blockchain-Netzwerk?

    Um zu verstehen, wie Abzweigungen funktionieren, ist es wichtig, zunächst die Teilnehmer zu verstehen, die am Entscheidungsfindungsprozess (oder der Steuerung) des Netzes beteiligt sind.

    Bei Bitcoin kann man grob zwischen drei Untergruppen von Teilnehmern unterscheiden: Entwickler, Miner und Full-Node-Nutzer. Dies sind die Parteien, die tatsächlich zum Netzwerk beitragen. Light Nodes (d. h. die Wallets auf Ihren Telefonen, Laptops usw.) werden ausgiebig genutzt, sind aber keine wirklichen „Teilnehmer“, was das Netzwerk betrifft.

    Entwickler

    Die Entwickler sind für die Erstellung und Aktualisierung des Codes verantwortlich. Bei Ihrer typischen Coins kann jeder zu diesem Prozess beitragen. Der Code ist öffentlich zugänglich, sodass sie Änderungen einreichen können, die andere Entwickler überprüfen können.

    Bergleute

    Die Miner sind diejenigen, die das Netzwerk sichern. Sie führen den Code der Kryptowährung aus und widmen ihre Ressourcen dem Hinzufügen neuer Blöcke zur Blockchain. Im Bitcoin-Netzwerk zum Beispiel tun sie dies über Proof of Work. Sie werden für ihre Bemühungen in Form einer Blockbelohnung belohnt.

    Vollknoten-Benutzer

    Vollknoten sind das Rückgrat des Kryptowährungsnetzwerks. Sie validieren, senden und empfangen Blöcke und Transaktionen und führen eine Kopie der blockchain.

    Oft überschneiden sich diese Kategorien. Sie könnten zum Beispiel ein Entwickler und ein Full-Node-Benutzer sein, oder ein Miner und ein Full-Node-Benutzer. Sie können alle drei oder keine sein. Tatsächlich nehmen viele, die wir als Kryptowährungsnutzer bezeichnen, keine dieser Rollen ein. Stattdessen entscheiden sie sich für die Nutzung von Light Nodes oder zentralisierten Diensten.

    Wenn man sich die obigen Beschreibungen anschaut, könnte man starke Argumente dafür anführen, dass Entwickler und Miner die Entscheidungen für das Netzwerk treffen. Entwickler erstellen den Code – ohne sie gäbe es keine lauffähige Software und niemanden, der Fehler behebt oder neue Funktionen hinzufügt. Miner sichern das Netzwerk – ohne einen gesunden Mining-Wettbewerb könnte die Kette gekapert werden oder zum Stillstand kommen.

    Wenn diese beiden Kategorien versuchen würden, den Rest des Netzes mit Gewalt zu zwingen, ihrem Willen zu folgen, würde das allerdings nicht gut ausgehen. Für viele liegt die wahre Macht bei den Vollknoten. Das liegt vor allem daran, dass das Netz auf freiwilliger Basis funktioniert, d. h. die Nutzer können selbst entscheiden, welche Software sie verwenden.

    Die Entwickler brechen nicht in Ihr Haus ein und zwingen Sie mit vorgehaltener Waffe, die Bitcoin Core Binaries herunterzuladen. Wenn die Miner eine „Mein Weg oder der Highway“-Haltung einnehmen, um den Nutzern eine unerwünschte Änderung aufzuzwingen, nun, dann werden die Nutzer einfach den Highway nehmen.

    Diese Parteien sind keine allmächtigen Machthaber – sie sind Dienstleister. Wenn Menschen sich entscheiden, das Netzwerk nicht zu nutzen, verliert der Coin an Wert. Der Wertverlust wirkt sich direkt auf die Miner aus (ihre Belohnungen sind weniger wert, wenn sie in Dollar angegeben werden). Was die Entwickler betrifft, so können sie von den Nutzern einfach ignoriert werden.

    Es ist ja nicht so, dass die Software urheberrechtlich geschützt ist. Sie können jede beliebige Änderung vornehmen, und wenn andere Ihre geänderte Software verwenden, können Sie alle miteinander kommunizieren. In diesem Fall spalten Sie die Software und schaffen damit ein neues Netzwerk.

    Was ist eine Fork?

    Eine Software-Fork entsteht an einem Punkt, an dem Software kopiert und verändert wird. Das ursprüngliche Projekt lebt weiter, aber es ist jetzt von dem neuen Projekt getrennt, das eine andere Richtung einschlägt. Nehmen wir an, das Team Ihrer Lieblings-Website für Kryptowährungsinhalte ist sich nicht einig, wie es weitergehen soll. Ein Teil des Teams könnte die Website auf einer anderen Domain replizieren. Aber in Zukunft würden sie andere Arten von Inhalten veröffentlichen als das Original.

    Die Projekte bauen auf einer gemeinsamen Grundlage auf und haben eine gemeinsame Geschichte. Wie eine einzige Straße, die sich später in zwei teilt, trennen sich ihre Wege nun dauerhaft.

    Beachten Sie, dass diese Art von Dingen in Open-Source-Projekten häufig vorkommt und schon lange vor dem Erscheinen von Bitcoin oder Ethereum. Die Unterscheidung zwischen Hard Forks und Soft Forks ist jedoch eine, die es fast nur im Blockchain-Bereich gibt. Lassen Sie uns diese ein wenig mehr diskutieren.

    Hard Forks vs. Soft Forks

    Obwohl sie ähnliche Namen tragen und letztlich demselben Zweck dienen, unterscheiden sich harte und Soft Forks erheblich. Werfen wir einen Blick auf beide.

    Was ist ein Hard Fork?

    Hard Forks sind rückwärtskompatible Software-Aktualisierungen. Sie treten in der Regel auf, wenn Knoten neue Regeln in einer Weise hinzufügen, die mit den Regeln alter Knoten in Konflikt steht. Neue Knoten können nur mit anderen kommunizieren, die die neue Version verwenden. Infolgedessen spaltet sich die Blockchain und es entstehen zwei getrennte Netzwerke: eines mit den alten Regeln und eines mit den neuen Regeln.

    hard fork
    Knoten werden blau, wenn sie aktualisiert werden. Die älteren gelben Knoten lehnen sie ab, während die blauen eine Verbindung zueinander herstellen.

    Es gibt jetzt also zwei Netzwerke, die parallel laufen. Beide werden weiterhin Blöcke und Transaktionen verbreiten, aber sie arbeiten nicht mehr auf derselben Blockchain. Alle Knoten hatten bis zum Zeitpunkt der Abspaltung eine identische Blockchain (und diese Geschichte bleibt bestehen), aber danach werden sie unterschiedliche Blöcke und Transaktionen haben.

    fork

    Aufgrund der gemeinsamen Geschichte haben Sie am Ende Coins in beiden Netzwerken, wenn Sie sie vor der Abspaltung besessen haben. Angenommen, Sie hatten 5 BTC, als die Abspaltung bei Block 600.000 stattfand. Sie könnten diese 5 BTC auf der alten Kette in Block 600.001 ausgeben, aber sie wurden nicht in Block 600.001 der neuen Blockchain ausgegeben. Unter der Annahme, dass sich die Kryptografie nicht geändert hat, enthalten Ihre privaten Schlüssel immer noch fünf Coins im gespaltenen Netzwerk.

    Ein Beispiel für eine Hard Fork war die Fork im Jahr 2017, bei der Bitcoin in zwei getrennte Ketten aufgespalten wurde – die ursprüngliche, Bitcoin (BTC), und eine neue, Bitcoin Cash (BCH). Die Abspaltung erfolgte nach einem heftigen Streit über den besten Ansatz zur Skalierung. Die Befürworter von Bitcoin Cash wollten die Blockgröße erhöhen, während die Befürworter von Bitcoin diese Änderung ablehnten.

    Eine Erhöhung der Blockgröße erfordert eine Änderung der Regeln. Vor der SegWit-Soft-Fork (mehr dazu in Kürze) akzeptierten die Knoten nur Blöcke, die kleiner als 1 MB waren. Wenn Sie einen 2MB-Block erstellen, der ansonsten gültig ist, würden andere Knoten ihn trotzdem ablehnen.

    Nur Knoten, die ihre Software so geändert haben, dass sie Blöcke mit einer Größe von mehr als 1 MB zulassen, konnten diese Blöcke annehmen. Das würde sie natürlich inkompatibel mit der vorherigen Version machen, so dass nur Knoten mit denselben Protokolländerungen kommunizieren könnten.

    Was ist eine Softfork?

    Ein Soft Fork ist ein rückwärtskompatibles Upgrade, das heißt, dass die aktualisierten Knoten weiterhin mit den nicht aktualisierten kommunizieren können. Typischerweise wird bei einem Soft Fork eine neue Regel hinzugefügt, die nicht mit den älteren Regeln kollidiert.

    Eine Verkleinerung der Blöcke kann zum Beispiel durch Soft-Forking erreicht werden. Zur Veranschaulichung dieses Punktes sei noch einmal auf Bitcoin verwiesen: Es gibt zwar eine Grenze für die Größe eines Blocks, aber keine Grenze dafür, wie klein er sein darf. Wenn Sie nur Blöcke unter einer bestimmten Größe akzeptieren wollen, müssen Sie einfach größere Blöcke ablehnen.

    Dadurch werden Sie jedoch nicht automatisch vom Netz getrennt. Sie kommunizieren weiterhin mit Knoten, die diese Regeln nicht anwenden, aber Sie filtern einige der Informationen, die sie Ihnen übermitteln.

    Ein gutes Beispiel für eine Soft Fork war die bereits erwähnte Segregated Witness (SegWit) Fork, die kurz nach der Bitcoin/Bitcoin Cash Abspaltung stattfand. SegWit war ein Update, das das Format von Blöcken und Transaktionen änderte, aber es war raffiniert gemacht. Alte Nodes konnten Blöcke und Transaktionen immer noch validieren (die Formatierung hat die Regeln nicht gebrochen), aber sie würden sie einfach nicht verstehen. Einige Felder sind nur lesbar, wenn die Knoten auf die neuere Software umgestellt werden, die es ihnen ermöglicht, zusätzliche Daten zu parsen.

    Soft fork

    Selbst zwei Jahre nach der Aktivierung von SegWit haben noch nicht alle Knoten ein Upgrade durchgeführt. Das hat zwar Vorteile, aber es besteht keine wirkliche Dringlichkeit, da es keine netzwerkzerstörende Veränderung gibt.

    Hard Forks vs. Soft Forks – was ist besser?

    Grundsätzlich dienen die beiden oben genannten Arten von Forks unterschiedlichen Zwecken. Umstrittene Hard Forks können eine Gemeinschaft spalten, während geplante Forks die Freiheit bieten, die Software im Einvernehmen mit allen zu verändern.

    Soft Forks sind eine sanftere Option. Im Allgemeinen sind Sie in Ihren Möglichkeiten stärker eingeschränkt, da Ihre neuen Änderungen nicht mit den alten Regeln kollidieren dürfen. Wenn Ihre Aktualisierung jedoch so gestaltet werden kann, dass sie kompatibel bleibt, brauchen Sie sich keine Sorgen über eine Fragmentierung des Netzes zu machen.

    Abschließende Gedanken

    Hard Forks und Soft Forks sind entscheidend für den langfristigen Erfolg von Blockchain-Netzwerken. Sie ermöglichen es uns, Änderungen und Upgrades in dezentralen Systemen vorzunehmen, obwohl es keine zentrale Autorität gibt.

    Forks ermöglichen es Blockchains und Kryptowährungen, neue Funktionen zu integrieren, während sie entwickelt werden. Ohne diese Mechanismen bräuchten wir ein zentralisiertes System mit Top-Down-Kontrolle. Andernfalls würden wir während der gesamten Lebensdauer des Protokolls mit genau denselben Regeln arbeiten.

    Lesen Sie den Originalartikel hier.

    Was ist The Sandbox (SAND)?

    Wie man MetaMask verwendet

    Was ist das Metaverse?