HARDE VORKEN VERSUS ZACHTE VORKEN: PRAKTISCHE VERSCHILLEN UITGELEGD
Ontdek hoe hard- en soft forks blockchainprotocollen veranderen, gebruikers beïnvloeden en invloed hebben op cryptovaluta-ecosystemen.
In blockchaintechnologie verwijst een fork naar een splitsing in het protocol of de codebase van een blockchainnetwerk. Deze splitsing resulteert in uiteenlopende paden, waarbij de ene de bestaande regels volgt en de andere wijzigingen introduceert. Forks zijn een essentieel onderdeel van het onderhouden, upgraden of beheren van gedecentraliseerde netwerken. Ze ontstaan meestal door:
- Updates of upgrades van het blockchainprotocol
- Verschillen in consensus binnen de community over governance
- Bugfixes of het aanpakken van beveiligingsproblemen
- Meningsverschillen over fundamentele principes, zoals schaalbaarheid of transactiekosten
Forks worden onderverdeeld in twee hoofdtypen: hard forks en soft forks. Elk heeft verschillende implicaties voor achterwaartse compatibiliteit, consensus en ketencontinuïteit. Inzicht in de technische mechanismen en praktijkvoorbeelden van elk is essentieel voor ontwikkelaars, investeerders en gebruikers die door het blockchain-ecosysteem navigeren.
Een hard fork is een radicale wijziging in het protocol van een blockchain die niet achterwaarts compatibel is. Nodes of gebruikers die niet zijn geüpgraded naar de nieuwe versie van de software, kunnen blokken of transacties die op de nieuwe blockchain zijn geproduceerd, niet valideren of ermee communiceren. Een hard fork creëert daardoor een permanente afwijking van de vorige blockchainversie, wat leidt tot twee afzonderlijke grootboeken als er geen unanieme acceptatie is.
Belangrijke kenmerken van een hard fork zijn:
- Niet-achterwaarts compatibel: Oudere knooppunten wijzen blokken af van de nieuwe blockchain.
- Chain splitsen: De blockchain splitst zich in tweeën als niet alle knooppunten upgraden.
- Nieuwe tokencreatie (vaak): De fork kan resulteren in een nieuwe cryptocurrency.
- Vereist consensus: Deelname van de community is noodzakelijk voor de levensvatbaarheid van de fork op de lange termijn.
Praktisch voorbeeld: Bitcoin Cash (BCH)
In augustus 2017 vond er een hard fork plaats op het Bitcoin-netwerk, wat resulteerde in de creatie van Bitcoin Cash. Het grootste meningsverschil binnen de Bitcoin-gemeenschap ging destijds over hoe het netwerk geschaald moest worden om meer transacties te kunnen verwerken. Bitcoin Cash verhoogde de blokgrootte van 1 MB naar 8 MB (en verhoogde deze later nog verder), waardoor meer transacties per blok mogelijk werden en de kosten werden verlaagd.
Deze upgrade was niet achterwaarts compatibel en Bitcoin Cash werd een aparte blockchain met eigen regels en tokens (BCH), los van Bitcoin (BTC). Gebruikers die ten tijde van de fork Bitcoin bezaten, ontvingen na de splitsing een gelijkwaardig bedrag in BCH.
Andere opvallende hard forks:
- Ethereum Classic (ETC): Geforkt van Ethereum in 2016 na de DAO-hack, vanwege meningsverschillen over het terugdraaien van een diefstal.
- Monero Hard Forks: Vinden periodiek plaats om privacyprotocollen te upgraden of ASIC-mining tegen te gaan.
- Cardano Alonzo Hard Fork: Introduceerde slimme contracten voor Cardano in 2021, waarvoor een protocolupgrade nodig was die niet compatibel was met oudere versies.
Hard forks zijn doorgaans verstorender dan soft forks, maar bieden een schone oplossing wanneer de community sterk verdeeld is of wanneer een fundamentele verandering nodig is.
In tegenstelling tot hard forks is een soft fork een wijziging in het blockchainprotocol die achterwaarts compatibel is. Dit betekent dat zelfs niet-geüpgradede (oudere) nodes nog steeds blokken van de geüpgradede nodes kunnen herkennen en valideren, zolang die blokken voldoen aan de oude regels. Soft forks resulteren niet noodzakelijkerwijs in een splitsing van de blockchain, op voorwaarde dat de meerderheid van het netwerk akkoord gaat met de nieuwe regels en deze toepast.
Essentiële kenmerken van een soft fork:
- Achterwaartse compatibiliteit: Oudere nodes blijven functioneren op het aangepaste netwerk.
- Geen nieuwe muntencreatie: De bestaande cryptocurrency blijft intact.
- Vereist meerderheidshashkracht: Nieuwe regels worden gehandhaafd door de meerderheid van de miningkracht.
- Beveiliging door consensus: Stimuleert uniforme protocoluitlijning binnen het netwerk.
Praktisch voorbeeld: Bitcoin SegWit-upgrade
Een van de bekendste soft forks vond plaats in augustus 2017, toen de upgrade van het Segregated Witness (SegWit)-protocol werd geactiveerd op het Bitcoin-netwerk. SegWit wijzigde de manier waarop transactiegegevens worden opgeslagen, door de handtekeninggegevens (witness) effectief uit het transactieblok te verwijderen en in een aparte structuur te plaatsen. Deze wijziging maakte het mogelijk om meer transacties in één blok op te slaan zonder de blokgroottelimiet te verhogen.
Omdat SegWit-transacties nog steeds geldig waren volgens de regels van het oude Bitcoin-protocol (hoewel oudere clients deze niet volledig gebruikten), was de wijziging achterwaarts compatibel. Als gevolg hiervan konden oudere nodes nog steeds blokken valideren en werd er geen nieuwe munt gecreëerd.
Andere belangrijke soft forks zijn onder andere:
- Ethereum’s Byzantium Upgrade: Verbeteringen in privacy en efficiëntie geïmplementeerd, terwijl de netwerkintegriteit behouden bleef en achterwaartse compatibiliteit werd gegarandeerd.
- Litecoin MimbleWimble-integratie: Geïmplementeerd als een soft fork voor optionele, niet-verplichte vertrouwelijke transacties.
- BIP66 (Bitcoin Improvement Proposal): Strikte DER-handtekeningen afgedwongen via een soft fork om consensusregels veilig te verbeteren.
Soft forks worden over het algemeen verkozen wanneer incrementele wijzigingen of optimalisaties moeten worden doorgevoerd, terwijl de netwerkcoherentie behouden blijft en het risico (en de kosten) van een splitsing worden vermeden.
Soft forks kunnen echter omstreden zijn als niet alle gebruikers het eens zijn, en een poging tot soft fork kan nog steeds resulteren in in een hard fork als consensus mislukt, zoals is gebleken bij enkele historische upgrades.
Uiteindelijk hangt de keuze tussen een hard- en een soft fork af van de doelen van de upgrade, de mate van overeenstemming binnen de community en de aard van de wijziging in het protocol.