SegWit2x

SegWit2x UPDATE czyli cisza przed burzą

Tak jak wspominałem, wraz ze zbliżającą się okresem aktywacji SegWit mamy coraz więcej klarownych informacji ( jeżeli w ogóle można mówić tutaj o klarowności w tej politycznej burzy ostatnich tygodni ).

W ostatnich dniach została wypuszczona wersja Beta SegWit2x. Kod, bazujący na Bitcoin Core 0.14 jest wzbogacony o BIP91 ( czyli usprawnienie mające na celu między innymi zapobieżenie kolizji pomiędzy SegWit2x, a „strasznym” BIP148 i powodowanym przez niego UASF ), zmodyfikowany BIP102 ( propozycję późniejszej zwiększenia rozmiaru bloku do 2MB ) i nowy testnet.

BIP102

Zdecydowana większość z was słyszy o tym BIP ( Bitcoin Improvement Proposal ). Nie jest to jednak nowa inicjatywa, a napisana przez Jeff’a Garzik’a propozycja wypuszczona 16 lipca 2015. Wprowadza ona hard fork mający na celu zmianę rozmiaru bloku do 2MB i w pierwotnej formie miało to zostać wyegzekwowane w konkretnym dniu i czasie według czasu uniksowego ( flag day )

Temat powrócił po prawie dwóch latach, ponieważ jednym z założeń SegWit2x jest właśnie zwiększenie rozmiaru bloku, a jednym z głównych developerów SegWit2x jest nie kto inny jak Jeff Garzik. W tym wypadku jednak hard fork miałby nastąpić po 90 dniach od aktywacji SegWit ( 144*90 bloków ).

Przewidywany rozkład jazdy

Daty determinowane przez konkretne bloki opisane poniżej mogą być zmienne z uwagi na niejednoznaczny czas wydobycia bloku.

  • 14 lipca
    Do tego dnia organizacje, które podpisały porozumienie nowojorskie mają uruchomić i przetestować nowe oprogramowanie
  • 21 lipca
    Do tego czasu SegWit2x ma zostać oficjalnie wypuszczony i ma się rozpocząć sygnalizowanie bloków wspierających SegWit2x.
  • 23 lipca
    Jeżeli 80% z 336 bloków ( 269 bloków ) będzie sygnalizowało wsparcie, BIP91 wejdzie w stan „lock-in”.
  • 26 lipca
    Po 336 blokach BIP91 zostanie aktywowany. Bloki niewspierające SegWit ( czyli samego BIP141, wspieranego przez team Core ) będą w tym momencie odrzucane przez sieć ( podobnie jak miałoby to miejsce w BIP148 ).
    W tym momencie potrzebne jest 95% wsparcia BIP141 przez następny okres zmiany trudności wydobycia trwający 2016 bloków, by nastąpił „lock-in”.
  • 10 sierpnia
    Tego dnia możemy się spodziewać wydobycia bloku 479808, który oficjalnie wprowadziłby SegWit w status „lock-in”.
  • 23 sierpnia
    W tym dniu zostanie prawdopodobnie wydobyty blok 481824, który zamknie okres aktywacji i SegWit oficjalnie wejdzie w życie. Od tego momentu w życie wchodzi zmodyfikowany BIP102 i po wydobyciu kolejnych 12960 bloków nastąpi hard fork mający na celu zmianę rozmiaru bloku ( okolice połowy listopada ).

Podsumowanie

Wydaje się, że zagrożenie związane z BIP148 minęło i bardzo prawdopodobne, że nie dojdzie do rozłamu łańcucha, którego się wszyscy obawiali. Wymagane jest jednak by twórcy SegWit2x zdążyli na czas. W takim wypadku następnym okresem podczas, którego mogłyby nastąpić turbulencje w sieci jest okres wprowadzenia hard forka. Jeśli im jednak się nie uda, proszę stosować się do poprzednich zaleceń z poprzedniego artykułu i uważać na transakcje po 1 sierpnia.

Możliwe jest również, że SegWit2x będzie obsługiwany później przez Bitcoin Core, gdyż jego twórcy się nie dystansują od tego pomysłu. Wszystko leży w jednak w rękach Core.

Cały czas trwa burza polityczna, ale przynajmniej wiemy, w którym kierunku iść.

AKTUALIZACJA 20.07

Postanowiłem zachować ciąg informacji zebranych w jednym artykule, dla większej klarowności przekazu.

Karuzela o nazwie SegWit2x nabiera rozpędu. Z kilkudniowym opóźnieniem 17 lipca 2017r. zostało wypuszczone oprogramowanie, które pozwala sygnalizować wsparcie BIP91 czyli pierwszego etapu prowadzącego do aktywacji Segregated Witness poporzez Segwit2x. Obecne wsparcie sieci oscyluje w granicy wymaganych 80%. Osobom korzystającym z klienta Bitcoin Core pojawił się następujący komunikat:

“Warning: Unknown block versions being mined! It’s possible unknown rules are in effect”

Nie należy się niczego obawiać w takim wypadku, gdyż monety nie są zagrożone. To powiadomienie oznacza, że więcej niż 50 z 100 ostatnich wydobytych bloków zostało wykopanych przez inną wersję klienta. Jest to właśnie potwierdzenie przerzucenia się części przemysłu wydobywczego na oprogramowanie sygnalizujące wsparcie BIP91, a tym samym SegWit2x. Każdy posiadający monety na klientach Bitcoin Core 0.13.1+ jest bezpieczny o swoje monety, aż do momentu zbliżającego się hard forka mającego zmienić rozmiar bloków na 2x1MB ( czyli drugiego etapu SegWit2x, którego nie wspierają developerzy Core ). Osoby posiadające portfele sprzętowe TREZOR są również zabezpieczone przed możliwym podziałem łańcucha ( chain split ) w przypadku UASF ( User Activated Soft Fork ) jak i późniejszego hard forka.

Sprawa nie ma się tak jasno w przypadku klientów lekkich. Developerzy Electrum, portfela lekkiego, który polecamy, ciężko pracują nad wersją softu 2.9 zwaną Independance posiadającą automatyczną detekcję podziału łańcucha. Ta aktualizacja przygotuje portfel nie tylko pod ewentualny soft fork w przypadku BIP148, ale i możliwe hard forki w przyszłości.  Dzieje się tak z powodu konstrukcji klientów SPV, które nie rozpoznają czy fork jest hard forkiem lub soft forkiem. W przypadku podziału, Electrum wykryje i zacznie wspierać oba łańcuchy.

Wspominana wcześniej przeze mnie manipulacja Bitmain, potentata na rynku koparek opartych na układach ASIC, zaczyna nabierać realny kształt. Na konferencji „Future of Bitcoin” propozycja wprowadzenia UAHF ( User Activated Hard Fork ) została ogłoszona mianem „Bitcoin ABC”, która miałaby zostać wprowadzona w życie po aktywacji BIP148 i nieudanej aktywacji BIP91 przed 29 lipca ( SegWit2x nie doszedłby wtedy do skutku ). Opiera się ona na idei Bitcoina, jednak nie bierze w ogóle pod uwagę wprowadzenia Segregated Witness, a jedynie regulowanej wielkości bloku. Historia już zaserwowała nam taki przykład, a jest nim Bitcoin Unlimited. Wysoce prawdopodobne jest scenariusz, gdzie po sukcesywnym hardforku, węzły Bitcoin Unlimited dołączą się do Bitcoin ABC. Kopalnia ViaBTC ogłosiła, że już wspiera wydobycie Bitcoin ABC.

Warto zauważyć jeden znamienny fakt. Bitmain wspiera zarówno ideę SegWit2x jak i Bitcoin ABC. Obie propozycje mają jeden ważną cechę wspólną: zmiana rozmiaru wydobywanych bloków. Łatwo więc wysunąć wniosek, że Jihan Wu, CEO Bitmain, zależy tylko na zmianie bloków, czy to z SegWit, czy bez. Jeśli BIP91 nie zostanie aktywowany i pierwszy plan SegWit2x nie dojdzie do skutku, nie będzie już możliwości zmiany rozmiaru bloków i zostanie tylko możliwość aktywacji SegWit poprzez BIP148, a to już Panu Wu jest wybitnie nie na rękę. Sam SegWit nie jest w pełni skonfigurowany do współpracy z ASICBoost, czyli technologii z której korzysta jego firma. Powodowałoby to od 20% do 30% zwiększone zużycie energii podczas kopania. Osoby kopiące na własną rękę wiedzą jak bardzo jest energooszczędność koparki wpływa na zyski z kopania. Nie jest to nic innego zatem jak dbanie o własne interesy.

Możemy sytuację rozpisać na kilka scenariuszy, które rozjaśnią nam sytuację w głowie.

BIP91 aktywowany w pierwszym możliwym okresie

  • 21 lipca
    56 godzin ( 10:00 czasu GMT ) po rozpoczęciu sygnalizacji i wsparciu sieci powyżej 80% BIP91 wchodzi w stan „lock-in”.
  • 23 lipca
    Po 336 blokach BIP91 zostanie aktywowany. Bloki niewspierające SegWit ( czyli samego BIP141, wspieranego przez team Core ) będą w tym momencie odrzucane przez sieć ( podobnie jak miałoby to miejsce w BIP148 ).
  • Okolice 27 lipca
    Zaczyna się nowy okres zmiany trudności wydobycia sieci trwający 2016 bloków. W tym momencie potrzebne jest 95% wsparcia BIP141 przez następny okres zmiany trudności wydobycia trwający 2016 bloków, by nastąpił „lock-in”.
  • 1 sierpnia
    O północy czasu GMT dochodzi do BIP148 zostaje aktywowany bez konsekwencji dla sieci w postaci chain splita.
  • 10 sierpnia
    Tego dnia możemy się spodziewać wydobycia bloku 479808, który oficjalnie wprowadziłby SegWit w status „lock-in”.
  • 23 sierpnia
    W tym dniu zostanie prawdopodobnie wydobyty blok 481824, który zamknie okres aktywacji i SegWit oficjalnie wejdzie w życie. Od tego momentu w życie wchodzi zmodyfikowany BIP102 i po wydobyciu kolejnych 12960 bloków nastąpi hard fork mający na celu zmianę rozmiaru bloku ( okolice połowy listopada ).
  • Okolice 18 listopada
    90 dni ( 144*90 bloków ) po aktywacji SegWit dochodzi do hard forka zmieniającego rozmiar bloku do 2*1MB.

BIP91 zostaje aktywowany w późniejszych okresach

  • 21 lipca
    Sygnalizowane wsparcie sieci dla BIP91 nie wynosi więcej niż 80%. Następuje możliwy okres aktywacji.
  • 23 lipca lub 26 lipca
    To są jedyne możliwe daty, w których BIP91 mógłby wejść w stan „lock-in” jeśli miałoby dojść do SegWit2x. W obu przypadkach po 336 blokach dojdzie do aktywacji BIP91. „Lock-in” BIP91 23 lipca oznacza aktywację 26 lipca ( okolice godziny 02:00 czasu GMT ). „Lock-in” 26 lipca powoduje, że BIP91 zostałby aktywowany  28 lipca ( okolice godziny 10:00 czasu GMT ). Bloki niewspierające SegWit ( czyli samego BIP141, wspieranego przez team Core ) będą w tym momencie odrzucane przez sieć.
  • Okolice 27 lipca
    Zaczyna się nowy okres zmiany trudności wydobycia sieci trwający 2016 bloków. W tym momencie potrzebne jest 95% wsparcia BIP141 przez następny okres zmiany trudności wydobycia trwający 2016 bloków, by nastąpił „lock-in”.
  • 1 sierpnia
    O północy czasu GMT dochodzi do BIP148 zostaje aktywowany bez konsekwencji dla sieci w postaci chain splita.
  • 10 sierpnia
    Tego dnia możemy się spodziewać wydobycia bloku 479808, który oficjalnie wprowadziłby SegWit w status „lock-in”.
  • 23 sierpnia
    W tym dniu zostanie prawdopodobnie wydobyty blok 481824, który zamknie okres aktywacji i SegWit oficjalnie wejdzie w życie. Od tego momentu w życie wchodzi zmodyfikowany BIP102 i po wydobyciu kolejnych 12960 bloków nastąpi hard fork mający na celu zmianę rozmiaru bloku ( okolice połowy listopada ).
  • Okolice 18 listopada
    90 dni ( 144*90 bloków ) po aktywacji SegWit dochodzi do hard forka zmieniającego rozmiar bloku do 2*1MB.

BIP91 nie zostaje aktywowany w wymaganym okresie

  • 1 sierpnia
    O północy czasu GMT dochodzi do BIP148 zostaje aktywowany poprzez soft fork i sieć dzieli się na dwa łańcuchy.
    Od tego momentu istnieje kilka możliwości rozwoju sytuacji.
  • BIP148 aktywuje się ze wsparciem większym niż 50%
    W tym wypadku głównym łańcuchem bloków zostaje blockchain opowiadający się za BIP148. O 12:20 czasu GMT Bitmain zaczyna wspierać Bitcoin ABC i oficjalnie oddziela się od sieci tworząc hard fork. Wysoce prawdopodbne jest, że węzły Bitcoin Unlimited przyłączą się do tej propozycji. Te dwa łańcuchy będą walczyć o wsparcie sieci i z tego pojedynku wyłoni się „nowy Bitcoin”.
    W wyniku soft forku na „łańcuchu BIP148” zostaną odrzucane bloki nie sygnalizujące  gotowości wsparcia SegWit. Najwcześniej 10 sierpnia możemy się spodziewać rozpoczęcia nowego okresu zmiany trudności wydobycia i 2016 bloków później ( około 23 sierpnia ) SegWit może wejść w stan lock-in. Wymagane jest jednak wsparcie sieci większe niż 95%, które nie byłoby trudne do uzyskania z powodu działania BIP148.
  • BIP148 aktywuje się ze wsparciem mniejszym niż 50%
    Jeśli łańcuch wspierający BIP148, będący obecnie w mniejszości, utworzy dłuższy łańcuch niż ten niewspierający BIP148 może nastąpić wymazanie jego łańcucha. Nie jest możliwe, by łańcuch niewspierający BIP148 zastąpił „łańcuch BIP148”.
    Jeśli do godziny 12:20 czasu GMT dnia 1 sierpnia „łańcuch BIP148” będzie nadal aktywny, nastąpi wsparcie Bitcoin ABC przez Bitmain. Istnieje prawdopodobieństwo, że gdy wsparcie BIP148 spadnie poniżej 15% do 15 sierpnia lub będzie realne zagrożenie zastąpieniem go przez inny łańcuch może nastąpić zmiana algorytmu Proof-of-Work. Zmiana ta byłaby wymierzona bezpośrednio w górników kopiących sprzętem opartym na układach ASIC. Możliwy jest w tym wypadku powrót do koparek CPU bądź GPU.

Podsumowanie i rekomendacje

  • Proszę się stosować do zaleceń przedstawionych w tym artykule i poprzednim na temat BIP148. Szczególnie odradzam trzymanie na giełdach BTC w okolicach 1 sierpnia aż do wyklatowania się sytuacji. Coinbase już zapowiedziało, że nie wspiera UAHF i Bitcoin ABC. Bycie chciwym może tutaj odbić się czkawką. Najważniejsza jest ZAWSZE kontrola kluczy prywatnych. Poniżej przedstawiam w pełni bezpieczne opcje trzymania monet.
  • Paper wallet
    Jest to portfel zimny i nie dotyczą jego wszystkie perturbacje. W zależności od rozwoju wydarzeń, po zaimportowaniu klucza prywatnego do odpowiednich portfeli będą dostępne odpowiednie monety.
  • Portfele sprzętowe TREZOR i Ledger Nano S
    Satoshi Labs poczyniło już wcześniej przygotowania, by dostosować swój portfel do UASF jak i UAHF.
  • Bitcoin Core
    Referencyjny portfel jest bezpieczny w tym wypadku.
  • Electrum
    Wersja 2.9 Independance będzie dostosowana do potencjalnych forków. Przed UASF lub UAHF należy zmienić wersję.

Dla osób chcących być na bieżąco z aktywacją BIP91, SegWit2x, BIP148, UASF i UAHF radzę przyglądać się uważnie stronie coin.dance. Na bieżąco są tam aktualizowane informacje dotyczące wsparcia sieci.

Podziel się z innymi

Bitcoin, Blockchain, News