Wokół najcenniejszej i najpopularniejszej kryptowaluty coraz częściej pojawiają się nurtujące pytania - Czy bitcoin wymaga poprawek? W jaki sposób odbywa się wprowadzanie zmian w jego zdecentralizowanym systemie? Dlaczego rozwój protokołów zdecentralizowanych, na których opierają się wszystkie kryptowaluty, jest zupełnie inny od dotychczasowego modelu scentralizowanych aplikacji bankowych? Czy podziały (hard fork) głównego łańcucha kryptowaluty mogą zagrozić jej stabilności i w konsekwencji wciąż rosnącym notowaniom? Odpowiedzi na te palące kwestie znajdziesz w artykule.
Chcąc porównać dwa rodzaje portfeli walutowych - bankowy i kryptowalutowy - musimy wziąć pod uwagę poniższe fakty (dla uproszczenia skupię się na pierwszej i dominującej kryptowalucie - bitcoin):
Pomimo tego że bitcoin jest systemem pozbawionym jednostki dominującej i nadającej kierunek rozwoju, żadna siła nie zdołała przejąć kontroli nad jego rozwojem. Miejsce składowania źródeł jest w pełni dowolne i każdy może stworzyć swoje repozytorium, inne od wymienionego oraz zachęcić ekosystem do korzystania z niego. Wciąż jednak wykładnią dla protokołu są źródła składowane na wspomnianym adresie. Warto w tym miejscu dodać, że nie ma ograniczeń dla nikogo, kto chce dołożyć swój programistyczny wkład do głównego repozytorium. Dostęp jest zorganizowany tak, aby każda poprawka programistyczna przechodziła przez wiele etapów analizy, konsultacji i testów. Proces wprowadzania udoskonaleń i poprawek opisałem ogólnie w dalszej części artykułu.
Nie ulega wątpliwości, że doskonałość nie jest cechą ludzką i każdy twór wymaga ciągłego wprowadzania poprawek oraz nowych pomysłów. Nie inaczej jest w przypadku kryptowalut, w tym bitcoina. Nieznany nikomu twórca systemu, Satoshi Nakamoto, pozostawił po sobie kod, który od 2009 roku uległ przepisaniu w 95% i zmianom. Z oryginalnego kodu Satoshiego nie pozostało już praktycznie nic. Pomimo tego system działa bezawaryjnie, bez zatrzymania i bez uszczerbku na niczyjej własności, co plasuje go na pierwszym miejscu pod względem stabilności wśród wszystkich innych cyfrowych systemów finansowych, które nieraz musiały zostać zatrzymane i naprawione/zmodyfikowane. W jaki więc sposób wprowadzane są udoskonalenia, gdy maszyna wciąż działa i nie posiada naczelnego architekta?
Odpowiedzią jest konsensus, wola użytkowników (demokracja), siła ekonomicznej perswazji, network effect, troska o dobro własne każdego uczestnika gry (pojęcie “gra” stosuję w myśl zasad teorii gier).
Wyróżniamy dwa rodzaje uaktualnień w dystrybuowanym modelu: soft fork i hard fork. Miękka zmiana tyczy się poprawek w protokole, które nie naruszają fundamentalnych zasad jego działania, a twarda wkracza w jego istotę. Potocznie mówiąc, soft fork jest wstecznie kompatybilny - węzły, które nie przyjęły nowej wersji oprogramowania, tak samo jak do tej pory weryfikują wszystkie nadchodzące transakcje i nowe bloki, natomiast w przypadku hard forka węzły, które nie dokonały update’u, odrzucają nowe transakcje/bloki (brak wstecznej kompatybilności). Przykładem hard forka może być zwiększenie maksymalnej liczby wydobytych bitcoinów, zwiększenie pojemności bloku (aktualnie 1 MB), zmiana algorytmu konsensusu używanego przy wydobywaniu nowych bloków, zmiana algorytmu generującego adresy publiczne/prywatne i wiele innych wprowadzających przesunięcie w pryncypiach algorytmu. Soft fork natomiast wprowadza zmiany, które nie naruszają fundamentów. Może on jedynie dodawać nowe reguły lub zaostrzać istniejące.
Wiemy już, że nie istnieje żaden autorytet, mający ostateczny głos, która wersja protokołu musi znaleźć się na prywatnych maszynach użytkowników utrzymujących sieć w działaniu. Sieć jest utrzymywana przez indywidualne decyzje i wolę osób uruchamiających jej poszczególne węzły. Pomimo tego, że wszystkie węzły są sobie równe, na wyższym, biznesowym poziomie abstrakcji pełnią już inne funkcje.
W bitcoinie możemy wyróżnić trzy typy graczy:
Każdy update musi być poprzedzony pojawieniem się idei, opracowaniem dokumentacji, szeroką konsultacją społeczności i zakończyć zaprogramowaniem pomysłu w postaci kodu przez programistów. Po tym etapie następuje faza testów na tzw. testnecie i wypuszczenie skompilowanej wersji do pobrania dla wszystkich użytkowników sieci produkcyjnej. Nowy pomysł nazwany jest Bitcoin Improvement Proposal (BIP). Listę zgłaszanych i dyskutowanych BIP-ów możemy znaleźć tutaj.
Jak złożony jest proces pracy nad każdą z propozycji widzimy na poniższym schemacie:
Gdy nowa wersja protokołu jest już wystawiona do pobrania, rozpoczyna się istotna faza, w której to węzły decydują czy pobrać ostatnią poprawkę. Dla zobrazowania, w jaki sposób rozkładają się role wszystkich graczy na życie protokołu, posłużę się modelem trójpodziału władzy Monteskiusza:
Biorąc pod uwagę fakt, że wszystkie grupy mają pełną dowolność w wyborze, stosowaniu i osądzaniu prawa, możemy lepiej poczuć, jak trudny do przewidzenia jest finalny obraz wprowadzania poprawek do bitcoina. Na tym opiera się przewidywanie konsekwencji wprowadzania proponowanych zmian w protokole bitcoin.
Jak bardzo trudne do przewidzenia skutki mogą wyniknąć z uruchomienia hard forków, możemy przekonać się, patrząc na historię ich wprowadzania. Od momentu startu bitcoina, 3 stycznia 2009 r. aż do 1 sierpnia 2017 r. nie została wprowadzona żadna tego typu poprawka. Pierwszy taki przypadek opisałem w artykule na FXMAG. W tym dniu powstała niezależna od Bitcoina kryptowaluta, zwana Bitcoin Cash, która podjęłą próbę stania się prawdziwym bitcoinem. Możemy wręcz powiedzieć, że bieżący rok jest okresem popytu na hard forki. Chwilę potem powstał kolejny hard fork - Bitcoin Gold. Na horyzoncie czai się Bitcoin Silver, a 9 listopada tego roku został zawieszony hard fork zwany Segwit2x, który wprowadzał najwięcej zamętu. Skąd więc taki urodzaj? Sukces bitcoina zaczyna go dusić - przepustowość mierzona w ilościach transakcji na sekundę nie może się zwiększyć przy jego aktualnej strukturze. Pojawiają się rozwiązania zwiększające przepustowość sieci, oparte o proste zwiększenie wielkości bloku. Sukces pierwszego hard forka, Bitcoin Cash, zachęca innych do podejmowania prób zarobienia na tej fali.
Dla jaśniejszego obrazu przedstawię kilka faktów:
Na czym polega odmienność Segwit2x? Pojawienie się pomysłu było zwieńczone podpisaniem tzw. New York Agreement (NYA). Umowę tę podpisało kilkadziesiąt wielkich firm bitcoinowych z całego świata, giełd oraz minerów, którzy zobowiązali się do wgrania wersji protokołu z nowej lokalizacji źródeł. Miał on podwoić wielkość bloku do 2 MB po tym, gdy w protokole zostanie zaimplementowany update zwany Segwit (uruchomiony w sierpniu tego roku). Hard fork ten miał wejść w życie wraz z pojawieniem się bloku nr 494784. Szacunkowo, blok o takim numerze pojawi się 15-16 listopada tego roku.
Chcą dostrzec różnice pomiędzy dotychczasowymi hard forkami, a Segwit2x zauważmy, że:
Replay protection to mechanizm chroniący przed akceptacją transakcji, która zgodnie z intencją nadawcy miała odbyć się tylko w bitcoinie albo w wersji Segwit2x, a pojawić musiała się także w drugim forku i która byłaby potwierdzona przez minerów (judykatywa) na obu forkach. Takie zabezpieczenie mają wszystkie dotychczasowe hard forki - Bitcoin Cash i Bitcoin Gold. Współistnienie obu kryptowalut, gdzie transakcja dokonywana na jednej z nich odbywa się jednocześnie na drugiej, miałoby dalekoidące i druzgocące skutki dla całego ekosystemu. Osoby, które podpisały NYA, wraz z upływem czasu dostrzegły, że nie zdołają utrzymać swojej przewagi. Coraz więcej firm zaczynało wyłamywać z się z umowy. 8 listopada pojawił się oficjalny komunikat:
Hard fork został wstrzymany. W momencie pojawienia się tej informacji, kurs bitcoina wzbił się na nowe rekordy i osiągnął wartość $7888. Przyjmująć scenariusz, że osoby odpowiedzialne za wprowadzenie hard forka Segwit2x, doprowadziłyby do jego uruchomienia, moglibyśmy liczyć się z nieprzewidywalnymi konsekwencjami dla bitcoina. Kurs mógłby zanurkować do poziomów niewidzianych od bardzo długiego czasu.
Chcąc oceniać wpływ hard forków na cały ekosystem, w tym na cenę bitcoina, musimy brać pod uwagę czy:
Musimy także brać pod uwagę, że programiści bitcoina (legislatywa) mogą w końcu zaproponować wprowadzenie hard forka. Pojawi się wtedy BIP (Bitcoin Improvement Proposal), który będzie szeroko dyskutowany. Aktualna strategia skalowania bitcoina zakłada pojawienie się tzw. Lightning Networks, przy zachowaniu wielkość bloku na dotychczasowym poziomie 1 MB.
Wszystkim, którzy mają swoje autorskie rozwiązania, pozwólmy działać - laissez faire. Niech rosną zdrowo, będąc jednocześnie polem do eksperymentów na uczestnikach rynku. I Ty możesz mieć swojego forka. Samo uruchomienie dowolnych źródeł odrywających się od bitcoina nie ma żadnego wpływu na ekosystem i nie może mu zagrozić. Zagrożenie może pojawić się, gdy za tym zdarzeniem idą masy. Uważajmy na propozycje, które gwałtem zechcą przejąć tytuł królewski.