
Blockchain Fork: Što je, Kako ga Napraviti i Najpoznatiji Primjeri
Blockchain tehnologija je osnova modernih kriptovaluta i decentraliziranih sustava. Međutim, zbog različitih tehničkih, sigurnosnih i ideoloških razloga, ponekad dolazi do podjele lanca (forka), čime nastaju nove verzije blockchain mreža. Ovaj članak pruža detaljno objašnjenje blockchain forkova, njihove vrste, razloge za njihovo nastajanje te tehnički vodič korak po korak kako stvoriti vlastiti fork iz aktivne blockchain mreže, uključujući realne primjere i tehničke izazove s kojima se programeri susreću.
1. Što je Blockchain Fork?
Blockchain fork je situacija u kojoj se postojeći blockchain dijeli na dvije ili više verzija, bilo privremeno ili trajno. Forkovi se javljaju kada čvorovi mreže više ne mogu postići konsenzus o pravilima protokola, bilo zbog softverskih nadogradnji, nesuglasica unutar zajednice ili sigurnosnih razloga.
Fork može biti:
- Soft Fork – manja, unatrag kompatibilna promjena pravila. Stariji čvorovi mogu i dalje raditi, ali s ograničenom funkcionalnošću.
- Hard Fork – fundamentalna promjena koja rezultira trajnom podjelom blockchaina, gdje se stariji čvorovi više ne mogu povezati s novim lancem.

2. Soft Fork: Evolucijske Promjene u Blockchainu
Soft fork je blaži oblik nadogradnje blockchain mreže koji ne zahtijeva da svi sudionici ažuriraju svoj softver. Stariji čvorovi koji nisu ažurirani i dalje mogu validirati transakcije, ali ne mogu iskoristiti nove funkcionalnosti.
Primjeri Soft Forkova
- Segregated Witness (SegWit) – Bitcoin
- Cilj: Skalabilnost Bitcoina smanjenjem veličine transakcijskih podataka.
- Tehnički aspekt: SegWit odvaja digitalne potpise iz transakcija, omogućujući većem broju transakcija da stane u jedan blok.
- Rezultat: Bolja efikasnost i manji troškovi transakcija bez potrebe za kreiranjem novog lanca.
- BIP 66 (Bitcoin Improvement Proposal 66)
- Cilj: Poboljšanje sigurnosti digitalnih potpisa u Bitcoin mreži.
- Tehnički aspekt: Uvođenje strožih pravila za validaciju ECDSA potpisa kako bi se spriječile ranjivosti.
3. Hard Fork: Stvaranje Potpuno Novog Blockchaina
Hard fork je velika promjena u blockchain protokolu koja zahtijeva od svih sudionika da ažuriraju softver. Ako dio zajednice ne prihvati novi protokol, dolazi do podjele lanca i stvaranja novog blockchaina.
Poznati Hard Forkovi
- Bitcoin Cash (BCH)
- Godina: 2017
- Razlog: Skalabilnost Bitcoina
- Promjena: Povećanje veličine bloka s 1 MB na 8 MB kako bi se omogućile brže i jeftinije transakcije.
- Ethereum Classic (ETC)
- Godina: 2016
- Razlog: DAO hack i nesuglasice oko poništenja ukradenih sredstava.
- Promjena: Ethereum Classic nastavio s izvornim blockchainom, dok je Ethereum (ETH) poništio transakcije povezane s hakom.
- Monero (XMR) – Hard Fork radi Sigurnosti
- Razlog: Zaštita privatnosti i sprječavanje ASIC rudarenja.
- Promjena: Algoritam rudarenja modificiran kako bi se spriječila dominacija specijaliziranih rudarskih uređaja.
4. Kako Napraviti Blockchain Fork?
Napraviti blockchain fork može biti tehnički zahtjevno, posebno ako se radi o forkanju aktivnog blockchaina. Proces se može podijeliti u nekoliko ključnih koraka:
1. Definiranje Cilja Forka
Prije nego što započnete, trebate jasno definirati što želite postići:
- Skalabilnost (veći blokovi, brže transakcije)
- Promjena algoritma rudarenja (zaštita od ASIC rudarenja)
- Bolja privatnost (anonimne transakcije)
- Nova pravila konsenzusa (Proof-of-Stake umjesto Proof-of-Work)
2. Preuzimanje Izvornog Koda Blockchaina
Blockchain projekti su uglavnom open-source, pa se kod može pronaći na GitHubu. Najčešće korišteni su:
- Bitcoin Core – za Bitcoin forkove.
- Ethereum Geth – za Ethereum bazirane forkove.
- Litecoin Core – za forkove Litecoina.
3. Mijenjanje Parametara u Kodu
Unutar koda blockchaina možete promijeniti:
- Veličinu bloka – za povećanje ili smanjenje skalabilnosti.
- Algoritam rudarenja – mijenjanje iz SHA-256 (Bitcoin) u Scrypt (Litecoin) ili RandomX (Monero).
- Vrijeme generiranja blokova – koliko sekundi je potrebno za potvrdu transakcije.
- Genesis blok – kreiranje novog prvog bloka u lancu.
4. Rekompilacija i Pokretanje Testne Mreže
Prije nego što pokrenete fork, morate ga testirati:
- Pokrenuti testnet čvorove.
- Provjeriti validaciju transakcija.
- Ispraviti eventualne bugove.
5. Lansiranje Forka i Migracija Korisnika
- Objavljivanje izvornog koda novog blockchaina.
- Omogućavanje rudarenja i sinkronizacije čvorova.
- Stvaranje digitalnih novčanika za korisnike.
5. Stvaranje Forka iz Živog Blockchaina: Detaljni Primjer
Zamislimo da želimo forknuti Bitcoin kako bismo stvorili novi coin s bržim transakcijama i nižim naknadama. Evo kako bi proces izgledao:
- Preuzimanje Bitcoin Core koda:
git clone https://github.com/bitcoin/bitcoin.git cd bitcoin
- Modifikacija parametara bloka:
- Otvoriti
chainparams.cpp
i promijeniti veličinu bloka, vrijeme potvrde, početni coin supply itd.
- Otvoriti
- Promjena genesis bloka:
- Generirati novi hash prvog bloka koristeći alat poput
genesis.py
.
- Generirati novi hash prvog bloka koristeći alat poput
- Ponovno kompajliranje koda:
./autogen.sh ./configure make
- Pokretanje testne mreže i lansiranje novog blockchaina.
Zaključak
Forkanje blockchaina je moćan alat za inovacije u kripto svijetu. Soft fork omogućuje postupne nadogradnje unutar postojećeg ekosustava, dok hard fork stvara novi lanac i valutu. Proces kreiranja forka uključuje preuzimanje izvornog koda, modifikaciju ključnih parametara, testiranje i konačno lansiranje novog blockchaina. Kroz primjere poput Bitcoin Casha, Ethereum Classica i Monera, vidimo kako forkovi mogu riješiti tehničke probleme ili odražavati filozofske podjele unutar zajednice.
Ako planirate kreirati vlastiti fork, potrebno je detaljno razumjeti blockchain protokole, kriptografske algoritme i mrežnu infrastrukturu. Dobro planiranje i testiranje ključni su za uspješan fork i dugoročno održavanje mreže.