Co to jest Bitcoin SegWit i jak działa?


Aktualizacja SegWit Bitcoina była kontrowersyjna, ale przyniosła poważne zmiany w najpopularniejszej krypto na świecie.

Skalowalność Bitcoina to ciągły problem najpopularniejszej kryptowaluty na świecie, z którym borykają się twórcy Bitcoina. Jednym z wprowadzonych rozwiązań był miękki fork SegWit, który zmienił liczbę transakcji Bitcoin, które mogły być przetwarzane jednocześnie. Chociaż zwiększenie liczby transakcji na blok Bitcoin brzmiało jak pewny sukces, SegWit również miał problemy.

Jak działają transakcje Bitcoin?

Transakcje Bitcoin korzystają z modelu UTXO (Unspent Transaction Output), w którym każda transakcja wydaje dane wyjściowe poprzedniej transakcji na blockchain i generuje nowe dane wyjściowe, które można wydać w następnej transakcji.

Z założenia nie posiadasz tokena Bitcoin. Zamiast tego jesteś właścicielem niewydanej kwoty wyjściowej określonej liczby poprzednich transakcji. Możesz udowodnić własność tego wyniku za pomocą wymaganego adresu, klucza cyfrowego i podpisu cyfrowego.

Załóżmy, że chcesz wysłać bitcoiny swojemu najlepszemu przyjacielowi. Najpierw użyjesz klucza prywatnego do podpisania wiadomości zawierającej dane wejściowe, wyjściowe i kwotę. Transakcja jest transmitowana do całej sieci Bitcoin i wszyscy użytkownicy mogą ją zobaczyć.

Gdy węzeł odbierze transakcję, sprawdza, czy:

  • Twój klucz prywatny jest zgodny z kluczem publicznym, którego twierdzisz, że posiadasz
  • Suma wejść jest większa niż suma wyjść
  • Dane wyjściowe są niewykorzystane.

Jeśli transakcja spełnia te trzy zasady, jest weryfikowana i przekazywana do innych węzłów, które powtarzają proces weryfikacji. Proces ten obejmuje złożone łamigłówki matematyczne, które górnicy z najwyższym współczynnikiem mieszania kryptowalut mają największe szanse na rozwiązanie jako pierwsi.

Węzły górnicze konkurują w rozwiązywaniu zagadek, a jeśli im się to uda, wydobywają szablon bloku w niezmienny blok w łańcuchu bloków. Blokada jest transmitowana do całej sieci i jasne jest, że Twój najlepszy przyjaciel jest właścicielem nowej, niewydanej produkcji.

Na czym polega wada plastyczności transakcji?

Skalowalność i szybkość to nie jedyne problemy, które nękają blockchain bitcoina. Niestety istnieje również „wada plastyczności transakcji”, wada, która pozwala na zmianę podpisu cyfrowego transakcji, zanim zostanie ona potwierdzona w łańcuchu bloków.

Modyfikacja ta jest dokonywana w taki sposób, że transakcja zachowuje swoją logikę matematyczną, ale daje inny wynik po przeprowadzeniu algorytmu mieszającego.

Weźmy na przykład wartość podpisu transakcji z najlepszym przyjacielem, która wynosiła (5). Jeśli zostanie zmienione na (5-10+10), wartość matematyczna nadal będzie wynosić 5, ale jeśli zahaszujemy te różne wersje, otrzymamy różne wyniki.

Ponieważ skrót służy do identyfikacji transakcji w łańcuchu bloków, zmiana ta powoduje kilka problemów.

  • Źli aktorzy mogą utworzyć drugą sprzeczną transakcję przed potwierdzeniem pierwszej, powodując zamieszanie, opóźnienia i przeciążenia w sieci.
  • Sprawia to, że programiści blockchain stają się problematyczni w budowaniu rozwiązań drugiej warstwy mających na celu poprawę szybkości i skalowalności sieci głównej.

Jest to zatem wada, która może sprawić, że księgowość blockchain stanie się koszmarem i wdrożono kilka rozwiązań, aby go rozwiązać. I tu właśnie pojawia się Bitcoin SegWit.

Co to jest Bitcoin SegWit?

Segregated Witness (SegWit) to aktualizacja protokołu blockchain Bitcoin opracowana przede wszystkim w celu ochrony przed plastycznością transakcji.

SegWit został po raz pierwszy zaproponowany w 2015 roku jako fork blockchain w celu poprawy skalowalności. SegWit osiągnąłby to poprzez oddzielenie podpisów cyfrowych od danych transakcyjnych, umożliwiając przechowywanie większej liczby transakcji w jednym bloku i skracając czas wymagany do przetworzenia pojedynczego bloku.

Soft fork SegWit został ostatecznie wdrożony w 2017 roku, wprowadzając wiele ulepszeń do łańcucha bloków Bitcoin, poza rozwiązaniem wady plastyczności i poprawą wydajności transakcji.

Co to jest SegWit2x?

Przed wdrożeniem SegWit w społeczności Bitcoin panowało pewne zamieszanie ze względu na propozycję aktualizacji hard forku mającej na celu zwiększenie limitu rozmiaru bloku z 1 MB do 2 MB w celu poprawy szybkości przetwarzania transakcji, stąd określenie „SegWit2x”.

Chociaż wiele zainteresowanych stron poparło ten pomysł, w społeczności pojawiły się nieporozumienia, a brak konsensusu doprowadził do rozłamu. Odłamana frakcja utworzyła Bitcoin Cash (BCH), podczas gdy grupa macierzysta przystąpiła do wdrożenia SegWit.

Jak działa Bitcoin SegWit?

SegWit działa poprzez oddzielenie części danych od bloku, przez co nie można ich modyfikować. To oddzielenie tworzy dwie sekcje. Pierwsza sekcja bloku zawiera adresy portfeli nadawcy i odbiorcy, natomiast druga sekcja zawiera podpisy cyfrowe, znane również jako „dane świadka”.

Ponieważ dane świadków są oddzielone od głównego bloku, w bloku zostaje zwolnione więcej miejsca na zapisanie większej ilości danych transakcji. To z kolei zwiększa pojemność bloku i bezpośrednio wpływa na wydajność sieci Bitcoin, znacząco poprawiając skalowalność.

Z drugiej strony posegregowane dane, tj. podpis cyfrowy, są szyfrowane i przechowywane w łańcuchu bocznym. Ta dodatkowa warstwa zabezpieczeń, oprócz oddzielenia od sieci głównej, uniemożliwia zmianę podpisu cyfrowego transakcji, eliminując w ten sposób wadę plastyczności.

Zalety Bitcoin SegWit

SegWit zapewnia kilka korzyści dla sieci Bitcoin.

  • Rozwiązuje problem plastyczności transakcji: Jak wspomniano wcześniej, SegWit naprawia błąd związany z plastycznością transakcji, który powodował wiele zamieszania i zatorów w łańcuchu bloków bitcoin. Pozwoliło to na bardziej niezawodne i bezpieczne transakcje.
  • Większe bezpieczeństwo: rozwiązując kwestię plastyczności transakcji, SegWit sprawił, że sieć Bitcoin stała się bezpieczniejsza i mniej podatna na ataki. Ułatwiło to także wdrażanie nowych funkcji bezpieczeństwa w przyszłości.
  • Lepsza skalowalność: skalowalność to wzrost wydajności systemu. To właśnie stało się z Bitcoinem po miękkim forku SegWit. Więcej transakcji można by uwzględnić w blokach ze względu na zwolnioną przestrzeń, zapewniając niższe opłaty transakcyjne i krótszy czas potwierdzania transakcji.
  • Niższe opłaty transakcyjne: w miarę jak więcej transakcji mogło zmieścić się w jednym bloku Bitcoin, konkurencja o miejsce w bloku zmniejszyła się, co z kolei obniżyło opłaty transakcyjne. Było to szczególnie korzystne w przypadku małych transakcji.
  • Ulepszona kompatybilność: będąc soft forkiem, SegWit umożliwił rozszerzalność łańcucha bloków, otwierając jednocześnie drzwi dla przyszłych aktualizacji (takich jak aktualizacja Taproot) do sieci Bitcoin. Ta elastyczność zapewnia blockchainowi możliwość wdrażania nowych funkcji i ulepszeń.
  • Inspirowane utworzeniem Lightning Network (LN): Kiedy SegWit poprawił skalowalność, jego kod zainspirował rozwój rozwiązania warstwy 2: Lightning Network. Kod LN umożliwia utworzenie kanału płatności poza łańcuchem pomiędzy dwiema stronami transakcji, poprawiając prędkość sieci głównej i obniżając koszty transakcji.

SegWit był kluczową aktualizacją sieci Bitcoin, ponieważ oferował rozwiązania, które poprawiły jej wydajność i poprawiły doświadczenie użytkowników Bitcoin. Nie obyło się jednak bez nowych wyzwań.

Wady SegWita

Miękki widelec SegWit wprowadził kilka potencjalnych wad.

Na przykład, chociaż wiele giełd i portfeli przyjęło SegWit, nie wszystkie węzły obsługują nowy protokół. Co więcej, ponieważ SegWit zmniejsza opłaty transakcyjne, wymagając jednocześnie obsługi łańcucha bocznego danych świadków, górnicy nastawiony na zysk nie lubią go i mogą niechętnie go stosować.

Co więcej, ze względu na sam rozmiar sieci Bitcoin, SegWit nie wystarczy, aby rozwiązać problem skalowalności. Istnieje potrzeba znacznego dostosowania łańcucha bloków, aby zmniejszyć jego rozmiar i zwiększyć skalowalność do poziomu podobnego do alternatywnych łańcuchów bloków.

Mimo że SegWit ma te wady, jasne jest, że korzyści w zakresie bezpieczeństwa i skalowalności znacznie przewyższają problemy.

Czy Bitcoin SegWit był dobrym pomysłem?

SegWit zapobiegł usterce powodującej tak duże opóźnienia w łańcuchu bloków Bitcoin w czasie, gdy jego przyjęcie zyskiwało na popularności. Rzeczywiście, na wdrożenie tego rozwiązania trzeba było długo czekać. Podczas gdy niektórzy górnicy odczuli negatywny wpływ na swoje portfele, soft fork poprawił bezpieczeństwo i niezawodność blockchainu, pozytywnie wpływając na sieć Bitcoin.