Aktualizacja SegWit Bitcoina była kontrowersyjna, ale przyniosła poważne zmiany w najpopularniejszej na świecie kryptografii.
Skalowalność Bitcoina jest ciągłym problemem dla najpopularniejszej kryptowaluty na świecie i takim, z którym twórcy Bitcoina walczyli, aby go rozwiązać. Jednym z wprowadzonych rozwiązań był soft fork SegWit, który zmienił liczbę transakcji Bitcoin, które mogły być przetwarzane jednocześnie.
Chociaż zwiększenie liczby transakcji na blok Bitcoin brzmi jak pewna wygrana, SegWit również miał problemy.
Jak działają transakcje Bitcoin?
Transakcje Bitcoin wykorzystują model UTXO (Unspent Transaction Output), w którym każda transakcja wydaje dane wyjściowe poprzedniej transakcji w łańcuchu bloków i generuje nowe dane wyjściowe, które można wydać w następnej transakcja.
Z założenia nie posiadasz tokena Bitcoin. Zamiast tego jesteś właścicielem niewydanego wyniku określonej liczby poprzednich transakcji. Możesz udowodnić własność tych danych wyjściowych 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ł odbiera transakcję, sprawdza, czy:
- Twój klucz prywatny jest zgodny z kluczem publicznym, który twierdzisz, że posiadasz
- Suma wejść jest większa niż suma jego wyjść
- Wyjście jest 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 zagadki matematyczne, z którymi górnicy mają najwięcej do czynienia szybkość hashowania kryptowalut mają największe szanse na rozwiązanie w pierwszej kolejności.
Węzły górnicze rywalizują o rozwiązanie zagadek, a jeśli się powiedzie, wydobywają szablon bloku w niezmienny blok w łańcuchu bloków. Blokada jest rozsyłana do całej sieci i jasne jest, że twój najlepszy przyjaciel jest właścicielem nowej niewykorzystanej mocy wyjściowej.
Czym jest 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.
Ta modyfikacja jest dokonywana w taki sposób, że transakcja zachowuje swoją logikę matematyczną, ale daje inny wynik, gdy jest przeprowadzana przez algorytm haszujący.
Weźmy na przykład wartość sygnatury twojej transakcji z twoim najlepszym przyjacielem, która wynosiła (5). Jeśli zostanie zmieniona na (5-10+10), wartość matematyczna nadal wynosi 5, ale jeśli mieszamy te różne wersje, otrzymujemy różne wyniki.
Ponieważ hash jest sposobem, w jaki transakcja jest identyfikowana w łańcuchu blokowym, ta zmiana powoduje kilka problemów.
- Źli aktorzy mogą utworzyć drugą sprzeczną transakcję, zanim pierwsza zostanie potwierdzona, powodując zamieszanie, opóźnienia i przeciążenie sieci.
- Utrudnia to programistom blockchain tworzenie rozwiązań drugiej warstwy, które mają poprawić szybkość i skalowalność sieci głównej.
Jest to więc wada, która może sprawić, że księgowość blockchain stanie się koszmarem i wdrożono kilka rozwiązań, aby ją rozwiązać. I tu właśnie pojawia się bitcoin SegWit.
Co to jest Bitcoin SegWit?
Segregated Witness (SegWit) to uaktualnienie protokołu blockchain Bitcoin opracowane głównie w celu ochrony przed plastycznością transakcji.
SegWit został po raz pierwszy zaproponowany w 2015 roku jako rozwidlenie łańcucha bloków w celu poprawy skalowalności. SegWit osiągnąłby to poprzez oddzielenie podpisów cyfrowych od danych transakcji, umożliwiając przechowywanie większej liczby transakcji w jednym bloku i skracając czas potrzebny do przetworzenia pojedynczego bloku.
Miękki widelec SegWit został ostatecznie wdrożony w 2017 roku, wprowadzając wiele ulepszeń do łańcucha blokowego Bitcoin, oprócz rozwiązania problemu plastyczności i poprawy wydajności transakcji.
Co to jest SegWit2x?
Zanim SegWit został wdrożony, w społeczności Bitcoin było trochę zamieszania z powodu propozycji aktualizacji hard forka mający na celu zwiększenie limitu rozmiaru bloku z 1 MB do 2 MB w celu poprawy szybkości przetwarzania transakcji, stąd termin "SegWit2x."
Chociaż wielu interesariuszy poparło ten pomysł, w społeczności pojawiły się nieporozumienia, a brak konsensusu doprowadził do rozłamu. Frakcja separatystyczna utworzyła Bitcoin Cash (BCH), podczas gdy grupa macierzysta zaimplementowała SegWit.
Jak działa Bitcoin SegWit?
SegWit działa poprzez oddzielenie niektórych danych od bloku, czyniąc je niedostępnymi do modyfikacji. Ta separacja tworzy dwie sekcje. Pierwsza sekcja bloku zawiera adresy portfela nadawcy i odbiorcy, podczas gdy druga sekcja zawiera podpisy cyfrowe, znane również jako „dane świadka”.
Ponieważ dane świadka są oddzielone od głównego bloku, więcej miejsca w bloku zostaje zwolnione na zapisanie większej liczby danych transakcji. To z kolei zwiększa pojemność bloku i bezpośrednio wpływa na wydajność sieci Bitcoin, znacznie poprawiając skalowalność.
Z drugiej strony posegregowane dane, czyli podpis cyfrowy, są szyfrowane i przechowywane w łańcuchu bocznym. Ta dodatkowa warstwa bezpieczeństwa oprócz oddzielenia od sieci głównej uniemożliwia zmianę podpisu cyfrowego transakcji, a tym samym rozwiązuje problem plastyczności.
Zalety Bitcoin SegWit
SegWit zapewnia kilka korzyści dla sieci Bitcoin.
- Rozwiązuje plastyczność transakcji: Jak wspomniano wcześniej, SegWit naprawia błąd plastyczności transakcji, który spowodował wiele zamieszania i zatorów w blockchainie bitcoin. Pozwoliło to na bardziej niezawodne i bezpieczne transakcje.
- Ulepszone zabezpieczenia: Rozwiązując problem plastyczności transakcji, SegWit uczynił sieć bitcoin bezpieczniejszą i mniej podatną na ataki. Ułatwiło to również wdrażanie nowych funkcji bezpieczeństwa w przyszłości.
- Poprawiona skalowalność: Skalowalność to wzrost wydajności systemu. Tak stało się z Bitcoinem po soft forku SegWit. Więcej transakcji można by uwzględnić w blokach dzięki zwolnieniu miejsca, obniżeniu opłat transakcyjnych i skróceniu czasu potwierdzania transakcji.
- Niższe opłaty transakcyjne: Ponieważ w jednym bloku Bitcoina można było zmieścić więcej transakcji, zmniejszyła się konkurencja o przestrzeń blokową, co z kolei obniżyło opłaty transakcyjne. Było to szczególnie korzystne w przypadku małych transakcji.
- Poprawiona kompatybilność: Dzięki temu, że jest miękkim widelcem, SegWit umożliwił rozszerzalność łańcucha bloków, jednocześnie otwierając drzwi do przyszłych aktualizacji (jak aktualizacja Taproot) do sieci Bitcoin. Ta elastyczność zapewnia blockchainowi możliwość wdrażania nowych funkcji i ulepszeń.
- Inspirowane stworzenie Lightning Network (LN): Kiedy SegWit poprawił skalowalność, jego kod zainspirował rozwój rozwiązania warstwy 2: sieć Lightning. Kod LN umożliwia utworzenie pozałańcuchowego kanału płatności pomiędzy dwiema stronami transakcji, poprawiając szybkość sieci głównej i obniżając koszt transakcji.
SegWit był kluczowym ulepszeniem sieci Bitcoin, ponieważ oferował rozwiązania poprawiające jej wydajność i poprawiające wrażenia użytkowników bitcoinów. Nie obyło się jednak bez sporej części 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 obniża opłaty transakcyjne, jednocześnie wymagając obsługi łańcucha bocznego danych świadków, górnicy zorientowani na zysk nie lubią go i mogą niechętnie go stosować.
Ponadto, ze względu na sam rozmiar sieci Bitcoin, SegWit nie wystarczy, aby rozwiązać problem ze skalowalnością. Istnieje potrzeba znacznego dostosowania łańcucha bloków w celu zmniejszenia jego rozmiaru i zwiększenia skalowalności do poziomu zbliżonego 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ł powstawaniu tak dużych opóźnień w łańcuchu blokowym Bitcoina w czasie, gdy jego adopcja zyskiwała na popularności. Rzeczywiście, długo trzeba było czekać na rozwój, który miał zostać wdrożony. Podczas gdy niektórzy górnicy odczuli negatywny wpływ na swoje portfele, soft fork poprawił bezpieczeństwo i niezawodność łańcucha bloków, pozytywnie wpływając na sieć Bitcoin.