Segwit – o co tutaj chodzi?

 

10.07.2017

Tutaj sprawdzicie aktualną listę firm kryptowalutowych gotowych na Segwit:

https://bitcoincore.org/en/segwit_adoption/

Obecny stan Segwit:

Segwit

Segwit

UASF –  User Activated Soft Fork. Jest to mechanizm, w którym czas aktywacji soft forka występuje w określonej dacie wymuszonej przez większość węzłów tzw. master nodów. UASF wymaga dużo wsparcia i koordynacji, co jest dobrym rozwiązaniem dla ewentualnych hard forków, które wymagają jeszcze większej koordynacji. W przeszłości UASF został pomyślnie przeprowadzony w celu uruchomienia soft forka P2SH (BIP16). Koncepcja UASF została połączona z aktywacją SegWit w propozycji BIP148, która znajduje się tutaj: github.com/bitcoin/bips/blob/master/bip-0148.mediawiki.

MASF – oznacza Miner Activated Soft Fork. Jest to mechanizm, za pomocą którego górnicy uruchamiają aktywację soft forka, gdy większość sygnalizuje gotowość do uaktualnienia. Pozwala to na szybszy czas aktywacji soft forka, pozostawiając pełne węzły do ​​uaktualnienia w czasie wolnym. Ta metoda jest kompromisem, ponieważ moc obliczeniowa tak naprawdę egzekwuje nowe zasady. Jeśli nie, może to powodować różne nieprawidłowe łańcuchy w sieci. Na przykład było to w przypadku BIP66 kiedy wskazano, że dokonano aktualizacji, gdy w rzeczywistości ponad 50% nie była dokonana. Drugi kompromis polega na tym, że metoda ta pozwala niewielkim udziałem wstrzymać aktywację soft forka dla każdego w sieci. Ogólnie, jeśli wszyscy współpracują, metoda ta jest bardzo wygodna i została wykorzystana do skutecznego aktywowania wielu soft forków w przeszłości, takich jak BIP65 CLTV i BIP112 CSV.

BIP148 –  to UASF, który ma spowodować, że istniejące wdrożenie MASF w SegWit powoduje aktywację we wszystkich istniejących węzłach oprogramowania SegWit (obecnie 80% węzłów sieciowych). Jak działa BIP148? Od 1 sierpnia 2017 r. Górnicy zobowiązani są do sygnalizacji gotowości do utworzenia bloków za pomocą bitowej wersji 1. Dzięki temu wszystkie węzły gotowe SegWit, które stanowią ponad 80% sieci, służą do uruchamiania. Link: luke.dashjr.org/programs/bitcoin/files/charts/software.html. Górnicy muszą również sprawdzić bloki przed własnymi i upewnić się, że również sygnalizują SegWit i budują tylko te bloki.

Dlaczego BIP148 a nie UASF dla Segwit?

Jasne jest, że BIP148 to soft fork, który wymaga od górników aktywacji istniejącego wdrożenia SegWit. Nie jest to norma dla UASF, ponieważ zwykłe węzły mogłyby właśnie rozpocząć egzekwowanie w danym “dniu flagowym”. Jednak prawie 80% sieci zostało już zmodernizowane na oprogramowanie węzłowe obsługujące SegWit, w oczekiwaniu na aktywację przez górników. Nowe wdrożenie “SegWit UASF” wymagałoby ponownego uaktualnienia wszystkich węzłów, co zajmie dużo czasu. Z tego powodu skrócona ścieżka do aktywacji SegWit wymaga blokowania sygnałów do aktywacji SegWit. Ogólnie rzecz biorąc, mechanizm sygnalizacji bloku ma być tylko metodą koordynacji, która umożliwia przyspieszoną aktywację. W 2012 r. P2SH został uruchomiony przez UASF.

BIP148 został stworzony, aby uniknąć zmuszania większości użytkowników do uaktualnienia oprogramowania. Zdecydowana większość węzłów obecnie rozmieszczonych jest świadomych sygnalizacji BIP9 dla SegWit. BIP148 ma na celu zmotywowanie górników do sygnalizowania SegWit, tak aby było ono włączane w taki sposób, że nawet użytkownicy, którzy nie korzystają z BIP148, otrzymali korzyści związane z aktywacją SegWit.


Co użytkownicy muszą zrobić, aby wymusić BIP148?

Użytkownicy powinni używać klientów wymuszających BIP148. Użytkownicy lekkich klientów (np. Portfele mobilne) powinni dowiedzieć się u swoich wydawców oprogramowania o wsparcie dla BIP148.


Co górnicy muszą zrobić, aby wymusić BIP148?

Górnicy powinni zaktualizować swoje oprogramowanie wydobywcze, aby utworzyć bloki z bitem wersji 1 włączonym przed 1 sierpnia 2017 r. Górnicy nie muszą tworzyć bloków SegWit ani wprowadzać żadnych innych zmian. Po aktywacji SegWit  powinni upewnić się co do tego, że mają węzeł graniczny, który wykrywa nieprawidłowe bloki.


Jakie są różne scenariusze, które mogą się zdarzyć z BIP148?

BIP148 wymaga wsparcia ze strony większości, w szczególności giełd, kantorów i portfeli. Jeśli to nie nastąpi, oprogramowanie węzłowe obsługujące BIP148 nie powinno być uruchamiane po 1 sierpnia, ponieważ spowoduje to podział łańcucha, co doprowadzi do rezygnacji z BIP148. Istnieją silne bodźce w systemie Bitcoin dla węzłów do współpracy i pozostaną w zgodzie, aby zapobiec rozszczepieniom łańcucha. Nie postępując zgodnie ze sobą, trudno byłoby sprzedawać monety wydobywane po 1 sierpnia, ponieważ klucze nie byłyby akceptowane przez większość.

Niektórzy górnicy mogli zrezygnować z BIP148 i próbować podzielić łańcuch, ale to wymagałoby większości górników, którzy nie zgodzą się z resztą.

Jeśli większość jest za BIP148, wszystkie węzły będą śledzić łańcuch bez względu na to, czy są one uruchomione przez BIP148. Bloki niezgodne z wymaganiami będą osierocone. Wszystkie węzły w końcu aktywują SegWit.

Jeśli mniejsza część mocy binarnej (poniżej 51%) jest zgodna z BIP148, węzły z systemem BIP148 będą w porządku, ale te, które nie działają BIP148, nie zgodzą się z resztą. W tym scenariuszu im więcej tych, które wprowadzą BIP148, tym lepiej.


Dlaczego została wybrana data 1 sierpnia 2017?

Ponieważ BIP9 jest oparty na czasie, BIP148 musi uwzględniać możliwość wygaśnięcia niektórych haseł (np. W celu wykopania innego soft forka), które powodowałyby dłuższe odstępy między blokami. Data 1 sierpnia pozwala większości skutecznie aktywować SegWit. Teoretycznie, jeśli moc obliczeniowa spadnie do 85%, może to potrwać do 13 tygodni, aby zakończyć okres aktywacji. W tym scenariuszu SegWit będzie nadal aktywny dla wszystkich węzłów zgodnych z BIP148.


Czy BIP148 może zostać anulowany?

Tak. Jeśli większość nie obsługuje BIP148, użytkownicy powinni usunąć oprogramowanie wymuszające BIP148. Uaktywnienie “flag day” dla SegWit byłoby następnym krokiem logicznym i wymaga koordynacji społeczności, najprawdopodobniej pod koniec 2018 roku.


Czy liczba węzłów decyduje o aktywacji?

Nie. Użytkownicy decydujący się na wymuszenie nowych zasad będą przestrzegać tylko bloków zgodnych z istniejącymi regułami, co z kolei spowoduje, że górnicy aktywują program SegWit. UASF mógłby być egzekwowany przez dowolną liczbę węzłów.


Czy UASF spowoduje rozszczepienie łańcucha?

Soft forki polegają na motywacjach ekonomicznych większości górników i podmiotów gospodarczych do odrzucania nieprawidłowych bloków opartych na nowych regułach. Ponieważ nowe reguły BIP148 są bardziej rygorystyczne niż stare reguły, jakiekolwiek podziały łańcucha oznaczają, że łańcuch z starymi zasadami może być odrzucony. Jeśli większość górników wymusi wykonanie nowego zestawu reguł, wszystkie bloki, które są nieprawidłowe w nowym zestawie reguł, zostaną osierocone. Ta popycha górników do egzekwowania nowych reguł. UASF stosuje podobne zachęty ekonomiczne.

Jeśli większość górników nie będzie egzekwować reguł, nastąpi podział łańcucha.


Czy BIP148 jest hard forkiem?

Nie, BIP148 nie jest hard forkiem. Hard fork często jest mylony z rozszczepem łańcucha. Hard fork to rodzaj rozszczepienia łańcucha, w którym zasady są rozluźniane, co pozwala na wcześniejsze niedozwolone bloki lub transakcje. Soft fork to zaostrzenie zasad.


Myślałem, że górnicy głosują na propozycje?

Ostatecznie konsensus jest ustalany przez węzły, ponieważ zatwierdzają łańcuch i angażują się w danej sieci. W końcu węzły są egzekwowane przez nawet najmniejsze open forki (MASF). Górnicy po prostu aktywują aktywację w węzłach.

Jak mogę się upewnić, że jestem chroniony w przypadku rozszczepienia łańcucha?

Zależy to od rodzaju używanego portfela. W przypadku portfela online, giełdy, kantoru  tzw. “scentralizowanego serwisu” upewnij się, że węzły, z których korzystają, są uaktualniane. W przypadku czegoś takiego jak Electrum upewnij się, że używasz serwera Electrum, który jest uaktualniany. Ostatecznie, każdy portfel w pełni weryfikuje informacje o saldach z weryfikującego węzła. Musisz podjąć wszelkie kroki, aby upewnić się, że portfel jest podłączony do uaktualnionych węzłów BIP148.