Fork (blockchain)

Uit Wikipedia, de vrije encyclopedie

In blockchain wordt een fork op verschillende manieren gedefinieerd:

  • wat er gebeurt wanneer een blockchain zich splitst in twee mogelijke toekomstige paden
  • een wijziging in het protocol
  • een situatie die "optreedt wanneer twee of meer blokken dezelfde blokhoogte hebben[1]

Forks zijn gerelateerd aan het feit dat verschillende partijen gemeenschappelijke regels moeten gebruiken om de geschiedenis van de blockchain te onderhouden. Wanneer partijen het niet eens zijn, kunnen alternatieve ketens ontstaan. Hoewel de meeste forks van korte duur zijn, zijn sommige permanent. Kortstondige forks zijn te wijten aan de moeilijkheid om snel consensus te bereiken in een gedistribueerd systeem. Daarentegen zijn permanente forks (in de zin van protocolwijzigingen) gebruikt om nieuwe functies aan een blockchain toe te voegen, maar ze kunnen ook worden gebruikt om de effecten van hacking om te keren, zoals het geval was bij Ethereum en Ethereum Classic, of catastrofale bugs op een blockchain te voorkomen, zoals het geval was bij de bitcoin-fork op 6 augustus 2010.[bron?] Blockchain-forks zijn veel besproken in het kader van het schaalbaarheidsprobleem van de bitcoin.[2][3][4]

Soorten forks[bewerken | brontekst bewerken]

Forks kunnen worden ingedeeld als per ongeluk of opzettelijk. Een per ongelukse fork gebeurt wanneer twee of meer miners bijna tegelijkertijd een blok vinden. De fork wordt opgelost wanneer er vervolgens blokken worden toegevoegd en één van de ketens langer wordt dan de andere(n). Het netwerk laat de blokken die niet in de langste keten zitten achter (ze worden weesblokken genoemd).

Opzettelijke forks die de regels van een blockchain wijzigen, kunnen als volgt worden ingedeeld:

Hard fork[bewerken | brontekst bewerken]

Een hard fork is een verandering in het blockchainprotocol die niet achterwaarts compatibel is en vereist dat alle gebruikers hun software upgraden om door te kunnen gaan met deelname aan het netwerk. Bij een hard fork splitst het netwerk zich in twee aparte versies: één die de nieuwe regels volgt en één die de oude regels volgt. Bijvoorbeeld: Ethereum werd in 2016 hard geforked om "heel te maken" de investeerders in The DAO, die waren gehackt door een kwetsbaarheid in de code. In dit geval resulteerde de fork in een splitsing, waarbij de Ethereum en Ethereum Classic-ketens werden gemaakt. In 2014 werd de Nxt-community gevraagd om een hard fork te overwegen die zou hebben geleid tot een terugdraaiing van de blockchain-records om de effecten van een diefstal van 50 miljoen NXT van een grote cryptocurrency-uitwisseling te beperken. Het hard fork-voorstel werd afgewezen en sommige van de fondsen werden teruggevorderd na onderhandelingen en losgeldbetaling. Als alternatief kunnen om een permanente splitsing te voorkomen, een meerderheid van de knooppunten die de nieuwe software gebruiken, terugkeren naar de oude regels, zoals het geval was bij de bitcoin-split op 12 maart 2013.[5]

Een meer recent voorbeeld van een hard fork is van Bitcoin in 2017, wat resulteerde in een splitsing waarbij Bitcoin Cash werd gemaakt.[6] De netwerksplitsing was voornamelijk te wijten aan een meningsverschil over hoe het aantal transacties per seconde moest worden verhoogd om aan de vraag te voldoen.[7]

In Nederland tellen in box 3 na een hard fork de bezittingen in beide takken mee, ook als de belastingplichtige afziet van het claimen van die in de nieuwe tak wegens risico's die dat met zich meebrengt, maar niet als hij de ontstane cryptomunten niet zal kunnen gebruiken, bijvoorbeeld als hij ten tijde van de hard fork niet zelf over de private key beschikt (zoals soms bij een gebruiker van een online wallet) en de exchange de hard fork niet ondersteunt en ook niet zal gaan ondersteunen.[8]

Soft fork[bewerken | brontekst bewerken]

Een soft fork is een achterwaarts compatibele verandering in het blockchainprotocol waarmee nieuwe regels kunnen worden geïntroduceerd zonder dat alle gebruikers hun software hoeven te upgraden. Bij een soft fork implementeert een meerderheid van de miners in het netwerk de nieuwe regels en begint ze de bijgewerkte versie van de blockchain te volgen. De rest van het netwerk kan de oude versie van de blockchain blijven volgen, maar ze kunnen geen nieuwe blokken valideren die de bijgewerkte regels volgen. Omdat een soft fork achterwaarts compatibel is, leidt het niet tot de creatie van een nieuwe blockchain of de splitsing van het netwerk. In plaats daarvan maakt het een geleidelijke overgang naar de nieuwe regels mogelijk terwijl het nog steeds compatibel blijft met de oude regels.