In de softwareontwikkeling is een fork een nieuwe tak van code die in zijn eigen richting gaat.
Vaak is het ook (in open-source software die buiten een bedrijf is ontwikkeld) een meningsverschil in de gemeenschap die de originele code heeft gebouwd en onderhouden.
In crypto is een fork een meningsverschil tussen nodes.
De onenigheid kan gaan over welke code wordt uitgevoerd, of welke blokken in de blockchain zijn opgenomen.
Een dergelijke onenigheid zorgt ervoor dat de blockchain in twee parallelle blockchains wordt gesplitst.
Er zijn twee soorten forks.
Een soft fork komt vaak voor tijdens software-upgrades van het protocol.
Dit type “soft fork” resulteert niet in een permanente splitsing van het netwerk en heeft meer weg van een netwerkmigratie of -upgrade.
Met andere woorden, nodes op het netwerk blijven compatibel met elkaar.
Een harde fork ontstaat wanneer nodes in het netwerk geen consensus bereiken.
In dit geval splitst de blockchain zich op het laatste punt van overeenstemming op in twee of meer takken.