Aktualizacja bitcoin Taproot - jakie zmiany oznacza dla sieci BTC? | CrypS.

Aktualizacja bitcoin Taproot – jakie zmiany oznacza dla sieci BTC?

7 min
Michał Misiura

kiedy wejdzie w życie bitcoin taproot i jakie zmiany oznacza dla sieci BTC Blockchain

Największa od lat aktualizacja sieci bitcoin – Taproot może stać się faktem już jesienią 2021 roku. Co warto wiedzieć o nadchodzących zmianach? Jak wpłyną one na protokół bitcoina i przyszłość pierwszej kryptowaluty?

Pomimo rosnącej adopcji i prawdziwego szczytu sławy w mediach głównego nurtu, bitcoin ma kilka poważnych problemów. Najważniejszymi z nich są ograniczona funkcjonalność oraz niewystarczająca wydajność sieci. Odpowiedzią na te oraz kilka innych wad pierwszej kryptowaluty jest nadchodzący soft fork bitcoina – Taproot.

Bitcoin Taproot

  • Co oznacza w skrócie? 

Lepszą skalowalność sieci bitcoina, czyli szybsze i tańsze transakcje, poprawę funkcjonalności inteligentnych kontraktów oraz zwiększenie prywatności.

  • Kiedy wejdzie w życie?

Prawdopodobną datą uruchomienia bitcoin Taproot jest listopad 2021.

Po pierwsze technologia

technologia, która kryje się za bitcoinem

Pośrodku trwającej hossy, papierowe zyski przesłaniają najważniejszy aspekt kryptowalut, czyli technologię. Na niej opiera się działanie bitcoina i to od niej zależy, czy w przyszłości będzie on nadal najważniejszym cyfrowym aktywem. Z technicznego punktu widzenia na rynku istnieją tysiące bezwartościowych kryptowalut, ale są też projekty, które dawno pozostawiły bitcoina w tyle. Zapewniają szybsze transfery, większą prywatność lub niższe opłaty transakcyjne. Mimo to jest jeden król, a taproot bitcoina może pomóc mu utrzymać panowanie.

Transakcje w sieci bitcoina są zapisywane w blokach o pojemności 1 MB. Ich wielkość nie zmieniła się od początku powstania pierwszej kryptowaluty, pomimo wielu pomysłów na ich zwiększenie. 1 blok jest tworzony co 10 minut i zawiera około 2200 transakcji, co oznacza, że dzienna przepustowość sieci bitcoina to zaledwie około 300 000 transakcji. Jednym z rozwiązań służących do poprawy tego stanu jest ostatnia aktualizacja sieci bitcoina – SegWit.

SegWit

Wdrożony 24 sierpnia 2017 roku SegWit, czyli Segregated Witness, to soft fork (nieobowiązkowa aktualizacja) zaprojektowany tak, aby oddzielić podpisy od bloków.

Każda transakcja zapisana na blockchainie bitcoina składa się z wejścia (input) i wyjścia (output) transakcji oraz z cyfrowego podpisu. Cyfrowy podpis stanowi około 65% wielkości transakcji. SegWit przenosi go do rozszerzenia bloku (tzw. witness data), którego maksymalna pojemność to 3 MB. Dzięki temu, pomimo że blok ma wciąż rozmiar 1 MB, może pomieścić około 4 razy więcej transakcji.

SegWit, będący dobrowolną modyfikacją, doczekał się jedynie częściowej adopcji. W związku z tym wielkość bloków, w których teoretycznie mogłyby mieścić się 4 MB danych, wynosi obecnie od 1,3 do 1,4 MB.

Różnica pomiędzy standardowymi blokami bitcoina a SegWitem, źródło: Cointelegraph
Różnica pomiędzy standardowymi blokami bitcoina a SegWitem, źródło: Cointelegraph

Dzięki zmianom wprowadzanym przez SegWit możliwe stało się także uruchomienie warstwy drugiej sieci bitcoina, czyli Lightning Network. Oddzielenie podpisów od reszty danych umożliwiło bezpieczne blokowanie środków w kontraktach, które prześlą je dalej (lub odmrożą na rzecz posiadacza), jeżeli spełnione zostaną określone warunki. Lightning Network nie obciąża blockchaina BTC, korzystając z kanałów płatności, otwartych przez użytkowników rozwiązania. To sprawia, że koszty takich transakcji spadają do groszowych kwot, a czas ich zatwierdzania jest znacznie szybszy, niż gdy ma to miejsce w regularnych blokach.

SegWit nie został jednak przyjęty przez wszystkich z jednakowym entuzjazmem. Rozwiązanie wzbudziło kontrowersje, związane z firmą Blockstream, częścią Digital Currency Group, która odpowiada za pomysł Lightning Network. Część środowiska BTC zarzucała jej hamowanie korzystnych zmian w protokole, kosztem rozwiązań, które mogą zmniejszyć prywatność oraz zwiększyć centralizację pierwszej kryptowaluty. Spór doprowadził do hard forka bitcoina, znanego jako bitcoin cash (BCH), który zamiast wdrażać SegWit, podniósł wielkość bloku do 8 MB.

W ciągu ostatniego roku wielkości sieci Ligtning Network powiększyła się o 75%. Obecnie tworzy ją 10 658 węzłów. Adopcja rozwiązania nie jest jednak na tyle szybka, aby odciążyć sieć bitcoina w takim stopniu, w jakim oczekiwali jego twórcy. Tutaj na scenę wkracza Taproot.

Propozycja bitcoin Taproot

SegWit nie rozwiązał problemów bitcoina. Na początku, trwającej obecnie, hossy na rynku kryptowalut, zdarzały się dni, gdy opłata transakcyjna za przesłanie BTC wynosiła około 15 dolarów, a czas potwierdzenia rósł do 30 minut. Pomysł bitcoin Taproot narodził się jednak dużo wcześniej niż aktualne wzrosty na rynku.

Propozycja nowej aktualizacji pojawiła się 5 miesięcy po wdrożeniu SegWita, w styczniu 2018 roku. Autorem pomysłu jest współtwórca Bitcoin Core i były CTO firmy Blockstream, Gregory Maxwell. Według jego założeń Taproot BTC rozszerzyłby możliwości dla tworzenia inteligentnych kontraktów bitcoina,  zwiększyłby prywatność oraz przepustowość sieci.

Bitcoin Improvement Proposal (BIP) to standardowa forma wdrażania wszystkich ważnych aktualizacji w sieci bitcoina. Polega na tym, że programiści BTC przedstawiają pomysł w formie dokumentu umieszczonego na GitHubie. Im dalej idące są zmiany, tym gorętsza, zazwyczaj, wywiązuje się wokół nich dyskusja. To czy zostaną przyjęte, jest efektem konsensusu społeczności (a przede wszystkim górników, czyli w aktualnych warunkach największych mining pooli).

BIP 0341, zatytułowany jako Taproot, trafił oficjalnie na GitHub, dopiero na początku 2020 roku. Zamieścił go tam Pieter Wuille, uznany programista Bitcoin Core. Pod nazwą Taproot kryje się cały pakiet zmian, wśród którym możemy wymienić takie rozwiązania jak: Schnorr Signature, G’root, MAST, SIGHASH_NOINPUT, czy Merkle Branch.

Żeby nadmiernie nie komplikować tematu i jednocześnie dobrze przedstawić zmiany, które wprowadza Taproot, skoncentrujemy się na tym, jak działają transakcje bitcoina oraz na dwóch rozwiązaniach: MAST i Schnorr Signature.

Skrypty i podpisy (P2SH)

Wszystkie bitcoiny są zablokowane w skryptach, czyli kilku linijkach kodu zawartych w transakcji na blockchainie. W standardowej transakcji, żeby zostały odblokowane (trafiły na wskazany adres), wystarczy złożenie podpisu potwierdzającego ich własność (patrz klucz prywatny). Zaawansowane operacje mogą wprowadzać jednak różne inne warunki i kombinować warianty, takie jak timelocks (bitcoiny zostają odblokowane w określonym czasie) czy multisig (bitcoiny można przenieść tylko wtedy, jeżeli transakcje zatwierdzi pewna liczba konkretnych kluczy). Przykładowo: Ala otrzyma bitcoiny od Adama, jeżeli oboje złożą swoje podpisy, jednak jeśli nie zrobią tego przez tydzień, bitcoiny może przejąć Ania, podając ustalony kod.

Dzięki technologii P2SH („pay to script hash”) początkowo wszystkie warunki są widoczne jedynie dla adresata takiej złożonej transakcji. Problemem jest to, że po jej wykonaniu stają się one publiczne. Informacje o wszystkich warunkach, które zostały wdrożone w kontrakcie (także tych niewykonanych), trafiają na blockchain. Oznacza to dwie rzeczy. Po pierwsze mniejszą prywatność (można dowiedzieć się w jaki sposób podjęto środki albo jakie portfele wykorzystano: multisig). Po drugie dużo więcej danych, które zajmują więcej miejsca w blokach.

MAST i Schnorr Signature

Jednym z rozwiązań wad P2SH jest MAST, czyli Merkelized Abstract Syntax Tree. Pochodząca z 2016 roku, propozycja Johnsona Lau, sięga do prac kryptografa Ralpha Merkle’a. W skrócie i bez wdawania się w techniczne szczegóły, dzięki niej w bloku transakcji widoczny jest jedynie jeden warunek, który został spełniony jako pierwszy. Wszystkie inne pozostają ukryte dla osób, które będą analizować blockchain. Przykładowo: w inteligentnym kontrakcie bitcoina istnieje warunek dotyczący określonego czasu i wielu podpisów. Jeżeli najpierw dojdzie do złożenia podpisów, wszyscy będą wiedzieć jedynie o tym, że transakcja wymagała multisigu. MAST zapewnia więc większą poufność związaną ze szczegółami transferów oraz odchudza ich zapis.

Jeszcze dalej sięga jednak algorytm podpisu Schnorra (Schnorr Signature), uważany przez wielu kryptografów za najlepszy w tej dziedzinie z uwagi na jego właściwości matematyczne. Dla zwykłych użytkowników bitcoina wprowadzane przez niego zmiany oznaczają możliwość agregacji podpisów. To znaczy, łącząc zarówno klucze publiczne jak i podpisy w „progowe klucze publiczne” i „progowe sygnatury” – Schnorr sprawia że nawet najbardziej złożony multisig będzie wyglądał dokładnie tak jak standardowa transakcja bitcoina. Innymi słowy – umożliwia łączenie wszystkich podpisów i przechowywanie ich jako jednego, upraszczając transakcję i odciążając blockchain.

Podpisy Shnorra mogą być nawet o 11% lżejsze od wykorzystywanego obecnie rozwiązania. Zdaniem bitcoin dewolopera – Steve’a Lee, powodem, dla którego nie zaimplementował ich sam Satoshi Nakamoto, był wciąż trwający patent należący do twórcy pomysłu – Clausa Schnorra. Zdążył on już jednak wygasnąć.

Jak działają sygnatury Schnorra - źródło: Coinmonk
Jak działają sygnatury Schnorra – źródło: Coinmonk

Taproot

Taproot bitcoina jest więc technicznym rozwiązaniem do podpisywania skryptów transakcyjnych. Dzięki zmianom, które wprowadza, nikt niebędący stroną transakcji nie dowie się nigdy o tym, że mogła ona ukrywać nawet najbardziej złożony inteligentny kontrakt. Ponadto Taproot sprawi, że podpisy przestaną być plastyczne, czyli zniknie zagrożenie związane z możliwością zmiany podpisu transakcji, zanim zostanie ona potwierdzona.

Taproot działa dokładnie tak, aby transakcje bitcoina wyglądały tak samo w eksploratorze blockchain i niemożliwe było ich odróżnienie, co naturalnie gwarantuje bitcoinowi bardzo dobrą prywatność. – uważa edukator blockchain Coinmonks.

Według Steve’a Lee, połączone moce Schnorr Signature i Taproot oferują „zupełnie nowy świat możliwości”. Pierwsza kryptowaluta może zyskać:

  • 30-75% oszczędności miejsca przy wielu podpisach,
  • 2,5 razy szybszą walidację bloków,
  • większą prywatność poprzez fakt, że wszystkie wyjścia staną się nierozróżnialne,
  • prosty sposób na strukturyzację podpisów kryptograficznych.

W przeciwieństwie do propozycji SegWit Taproot praktycznie nie ma przeciwników. Deweloperzy są zgodni co do tego, że jest to jednoznacznie zmiana na lepsze. Pod nazwą Taproot kryje się jednak tak duży pakiet zmian, że nawet jego pomysłodawcy zdawali sobie sprawę z tego, że może potrwać wiele czasu, zanim dojdzie do jego omówienia i akceptacji.

Wdrażanie zmian

Gdy w grudniu 2020 roku, aktualizacja została zatwierdzona przez Binance Pool, Taproot stał się obsługiwany przez pule wydobywcze, w których rękach znajduje się ponad 90% całkowitego wskaźnika hash. Za zmianami opowiedzieli się także wszyscy programiści zaangażowani w dyskusję na GitHubie. Pytanie „czy wprowadzać zmiany?” zmieniło się bardzo szybko w „jak wprowadzić zmiany?”.

Taproot jako soft fork, wymaga wprowadzenia zmian w węzłach bitcoina. Jeżeli nie zostaną one przyjęte na czas przez górników, istnieje zagrożenie, że nastąpi podział sieci. Cała debata programistów zaczęła więc koncentrować się na tym, jak wdrożyć Taproot w krótkim czasie i bez komplikacji. Jej owocem stała się propozycja „Speedy Trial„.

„Speedy Trial” i rzut monetą

rzut monetą przy wdrażaniu speedy trial bitcoin taproot

Zaprojektowane przez Russella O’Connora i wpisane na listę mailingową deweloperów Bitcoin przez Davida Hardinga, rozwiązanie „Speedy Trial” zakłada szybki sukces lub szybką porażkę. Zamiast dawać górnikom rok na przyjęcie zmian, skraca ten okres do 3 miesięcy. Jeżeli w tym czasie bitcoin Taproot otrzyma wsparcie na poziomie 90% hashrate’u, jego aktywacja w sieci BTC nastąpi po kolejnych 3 miesiącach. Jeśli górnicy nie wprowadzą zmian, propozycja zostanie odrzucona.

„Speedy Trial” w takim kształcie jest ostatecznym planem na wdrożenie Taproota. Do 7 kwietnia dyskutowano także nad drugą możliwością, w której o terminie zmian decydowałaby wysokość bloku. Deweloperzy nie mogli dojść do porozumienia i zadecydował… „rzut monetą”. Wynik ustaliła ostatnia cyfra hasha bloku 678079, w którym wartość 0 reprezentowała czas, a wartość 1 wysokość. Wypadło 0.

15 kwietnia 2021 roku „Speedy Trial” został scalony z Bitcoin Core. Dzięki jego połączeniu z kodem źródłowym bitcoina Taproot jest gotowy do aktywacji w maju. Wciąż nie znamy dokładnej daty, ale możemy łatwo policzyć, że jeśli wszystko pójdzie zgodnie z planem, górnicy zatwierdzą zmiany w sierpniu. W takim wypadku, po kolejnych 3 miesiącach, w listopadzie 2021 roku, Taproot może stać się częścią bitcoina i jest to bardzo prawdopodobny scenariusz.

kiedy wejdzie w życie bitcoin taproot i jakie zmiany oznacza dla sieci BTC

Dodaj komentarz