Przejdź do głównej zawartości

Twardy widelec i miękki widelec

U
Napisane przez UKey Wallet

W technologii blockchain hard forki i soft forki to dwa różne sposoby uaktualniania i aktualizowania protokołów sieciowych. Różnią się one znacząco sposobem implementacji, a różnice te mogą bezpośrednio wpływać na strukturę i działanie sieci blockchain.

Hard Fork

Hard fork to zmiana reguły, w wyniku której nowa wersja sieci nie jest już kompatybilna ze starą wersją. W rezultacie blockchain dzieli się na dwie odrębne gałęzie, które działają równolegle i nie wpływają na siebie.

Miękki widelec

Miękki fork to zmiana reguły, w ramach której węzły, które przyjmują nowe reguły, mogą nadal wchodzić w interakcję z węzłami, które nie zostały zaktualizowane. W takim przypadku nowa wersja sieci pozostaje kompatybilna ze starą wersją.


Porównanie

Twardy widelec

  • Przykład: DAO 2016

  • Stara wersja nie jest kompatybilna z nową siecią

  • Działa w ramach różnych protokołów

Miękki widelec

  • Przykład: SegWit 2017

  • Nowa sieć pozostaje kompatybilna ze starą wersją

  • Działa w ramach tej samej ogólnej struktury protokołu


Analiza sytuacji

Hard Fork

Załóżmy na przykład, że połowa węzłów sieciowych chce zwiększyć rozmiar bloku z 2MB do 3MB. Jeśli blok 3MB zostanie wysłany do węzłów starej wersji, węzły te odrzucą je, ponieważ ich reguły nadal definiują 2MB jako maksymalny rozmiar bloku. W tym przypadku sieć dzieli się na dwa osobne protokoły, a każdy oddział może posługiwać się inną walutą. Wszystkie salda kont są kopiowane z oryginalnej sieci do nowej sieci. Na przykład, jeśli użytkownik trzymał 20 BTC przed forkiem, wówczas miałby 20 BTC w pierwotnym łańcuchu i 20 nowych BTC w nowym łańcuchu.

Miękki widelec

Na przykład, jeśli pierwotny rozmiar bloku wynosi 2MB, a połowa węzłów sieci wprowadzi bardziej rygorystyczną regułę ograniczającą rozmiar bloku do 1MB, bloki większe niż 1MB będą traktowane jako nieprawidłowe przez zmodernizowane węzły. Jednak węzły starej wersji mogą nadal odbierać i rozgłaszać bloki. W tej sytuacji nowa sieć może nadal obejmować wszystkie węzły, bez ograniczeń wynikających z różnych wersji reguł. Segregated Witness (SegWit) Bitcoina jest typowym przykładem miękkiego forka. To uaktualnienie w sprytny sposób wprowadziło nowy format bloków i transakcji. Węzły, które nie zostały zaktualizowane, mogą nadal otrzymywać informacje blokowe, ale nie biorą udziału w walidacji nowego formatu transakcji.

Czy to odpowiedziało na twoje pytanie?