Bitcoin fork Co to jest fork?

Jeśli śledziłeś ostatnio sytuację Bitcoina, mogłeś zauważyć wzmożoną dyskusję w temacie “forka”.

Nie takiego jaki mógłbyś znaleźć na stole (“fork” z ang. “widelec”), lecz w Blockchainie. Fork jest technicznym pojęciem, odnoszącym się do zmian, które następują przy wspólnej zgodzie uczestników kryptowaluty.

Najprościej mówiąc, forkiem nazywamy zdarzenie, w którym Blockchain rozchodzi się w dwie potencjalne ścieżki w związku z historią transakcji, lub nową zasadą, która decyduje o akceptacji transakcji.

W rezultacie, użytkownicy blockchaina muszą zaakceptować i wesprzeć jedną lub drugą drogę.

Jednak występuje wiele typów forków, a nauka opisująca je wciąż jest nowinką. Póki co, wiemy że niektóre forki rozwiązują się same, jednak inne, napędzane różnicą zdań pośród społeczności, mogą doprowadzić do permanentnego rozłamu sieci na dwa Blockchainy, a w rezultacie dwie niezależne waluty.

W tym temacie pojawia się sporo dezorientacji na temat typów forków, ich przyczyn i zagrożeń które sobą przedstawiają.

Aby rozjaśnić owe zagadnienie, przygotowaliśmy mały poradnik.

Podstawy

Zanim przejdziemy do klasyfikacji, warto wspomnieć że forki Bitcoina zdarzają się dość często.

Jako produkt uboczny powszechnej zgody co do stanu Blockchaina, fork zdarza się za każdym razem kiedy dwóch kopaczy znajdzie blok w bardzo małym odstępie czasu. Wybór jednej ścieżki nad drugą następuje w momencie dołączenia do niej kolejnych bloków, przez co staje się ona dłuższym łańcuchem. Krótszy łańcuch zostaje “osierocony” (lub “porzucony”) przez sieć.

Forki mogą też być umyślnie włączone do sieci. Ma to miejsce kiedy developerzy chcą zmienić zasady wedle których oprogramowanie decyduje o poprawności transakcji.

Kiedy blok zawiera niepoprawną transakcję, jest on ignorowany przez sieć, a kopacz który go odnalazł nie dostaje nagrody. Z tego powodu minerzy kopią tylko poprawne bloki, na najdłuższym rozgałęzieniu łańcucha.

Poniżej opisaliśmy niektóre z najczęściej występujących forków i ich następstwa.

Hard Fork

Czym jest? Twardy fork jest aktualizacją oprogramowania, która wprowadza nową zasadę, która nie jest kompatybilna z poprzednimi wersjami. Można go rozumieć, jako rozszerzenie zasad. (Na przykład nowa zasada, według której blok może mieć wielkość 2MB zamiast 1MB wymagałaby hard forka).

Co się dzieje? Węzły które będą działały na niezaktualizowanym oprogramowaniu uznają nowe transakcje za nieprawidłowe. Aby przełączyć się na nowy łańcuch i kopać prawidłowe bloki, wszystkie węzły w sieci muszą zastosować się do nowych zasad.

Co może pójść nie tak? Problemy pojawiają się wraz z wewnętrznymi konfliktami, kiedy część społeczności decyduje się pozostać przy starych regułach. Moc sieci starego łańcucha nie ma znaczenia. Liczy się to, że jego zawartość (i zbiór reguł) jest uznawana za wartościową przez kopaczy, którzy będą chcieli ją kopać, i deweloperów, chcących go rozwijać.

DAO hard fork Ethereum jest świetnym przykładem rozłamu społeczności wobec zmiany reguł. W tej chwili mamy dwa blockchainy, korzystające z różnych wariantów oprogramowania – Ethereum i Ethereum Classic. Oba kierują się różnymi wartościami i obsługują inną walutę.

Soft Fork

Czym jest? Soft fork polega na uściślaniu reguł. Na przykład zamiast 1MB bloku, nowa zasada może zezwalać jedynie na bloki wielkości 500K. Soft fork jest wstecznie kompatybilny.

Co się dzieje? Niezaktualizowane węzły będą postrzegały nowe transakcje jako poprawne (500k<1MB, więc spełnia “stare” zasady). Jednak bloki znalezione przez te węzły nie będą akceptowane przez zaktualizowaną część sieci. Z tego powodu soft forki potrzebują większości mocy sieci, aby doszły do skutku.

Co może pójść nie tak? Kiedy soft fork jest wspierany tylko przez mniejszą część sieci, może stać się krótszym łańcuchem i zostać “osieroconym”. Lub, może zachować się jak hard fork, czyli stworzyć odrębny łańcuch.

“Miękkie” forki były, póki co, najczęściej używaną metodą aktualizowania Blockchaina Bitcoina, ponieważ uznaje się że przedstawiają najmniejsze ryzyko podziału łańcucha. Przykładami udanych soft forków są, między innymi, aktualizacje takie jak BIP 66 (który odpowiadał za walidację podpisów) i P2SH (który zmienił formatowanie adresów).

User-activated soft fork

Czym jest? User-activated soft fork (UASF) jest kontrowersyjnym pomysłem badającym jak można wprowadzić zmiany do Blockchaina bez wsparcia węzłów zapewniających moc sieci. Idea stojąca za UASF zakłada pominięcie wsparcia kopalń i nadanie mocy sprawczej giełdom, portfelom i pełnym węzłom.

Co się dzieje? Większość giełd musiałoby publicznie ogłosić wsparcie dla zmian, zanim wprowadzono by aktualizację. Następnie nowa wersja oprogramowania (z ustalonym momentem aktywacji) zostałaby zainstalowana w węzłach.

Co może pójść nie tak? Ten sposób wymaga znacznie więcej czasu na wprowadzenie zmian niż polegający na mocy obliczeniowej soft fork. Uważa się, że pełen proces napisania kodu i przygotowania wszystkich do aktualizacji mógłby potrwać nawet rok.

Ponadto, jeśli większość kopaczy postanowi nie czekać i wprowadzi zmiany od razu, to mogą użyć swojej mocy do rozbicia łańcucha i podzielenia sieci.

W tej chwili ta metoda istnieje tylko teoretycznie i nie była zaimplementowana.

Zapraszam także do przeczytania artykułu, w którym wyjaśnione są wszystkie propozycje wzrostu przepustowości sieci Bitcoin:

Podziel się z innymi

News, Poradnik dla początkujących