Bitcoin nie przeprowadza zbyt wielu tak dużych aktualizacji. Poprzednia równie istotna miała miejsce w 2017 roku, nazywała się SegWit i doprowadziła do niezgody wśród społeczności i powstania Bitcoin Cash. Segregate Witnesses, podzieliło transakcję na dwie sekcje, oddzielając podpisy i zwiększając w ten sposób liczbę transakcji w bloku.
Tym razem wydaje się, że żadnego hard forka, czyli rozwidlenia łańcucha, nie będzie, co nie zmienia faktu, że nie wszyscy są zadowoleni z Taproot. Górnicy dość szybko zasygnalizowali swoje wsparcie dla aktualizacji, czym potwierdzili jej wprowadzenie.
Co to znaczy, że górnicy coś zasygnalizowali? Otóż jest to możliwe dzięki mechanizmowi o nazwie „Speedy Trial”. W Speedy Trial górnicy, którzy opowiadają się za wprowadzeniem aktualizacji, mogą zasygnalizować swoje wsparcie, poprzez umieszczenie specjalnych danych nazwanych „bitem sygnału” w wydobywanym bloku, w ciągu jednego okresu trudności, który występuje co 2016 bloków (około dwa tygodnie).
Jeśli 90% bloków wydobytych w tym okresie zawiera bit sygnału Taproot, aktualizacja jest uznana za zaakceptowaną i zostanie wprowadzona.
Omawiany poziom akceptacji został osiągnięty 12 czerwca, a aktualizacja Taproot wejdzie w życie wraz z blokiem 709632 w połowie listopada.
Czym jest Taproot?
Taproot to aktualizacja oprogramowania Bitcoina. Jest tak zwanym soft forkiem, który wprowadza do sieci nowe zasady działania. Pierwszy raz zmiany zostały zaproponowane w 2018 roku przez Gregory’ego Maxwella, jednego z programistów pracujących nad Bitcoin Core. Bitcoin Core to główne oprogramowanie Bitcoina. Każdy, kto posiada tego klienta może brać udział w weryfikacji bloków sieci.
Taproot jest nie tyle jedną aktualizacją ile zbiorem trzech aktualizacji: BIP 340, 341 i 342. BIP to skrót od Bitcoin Improvement Proposals, czyli propozycji ulepszenia Bitcoina.
Jakie zmiany do Bitcoina wprowadza Taproot?
Zmiany, które będą mieć miejsce w Bitcoinie są dość spore i skupiają się głównie na prywatności i skalowalności, a także są dość skomplikowane.
Schnorr
Jedną z głównych zmian jest zastąpienie obecnego algorytmu podpisu cyfrowego krzywej eliptycznej (ECDSA) podpisami Schnorra w aktualizacji BIP 340. ECDSA jest algorytmem, który sprawia, że BTC mogą być wydawane tylko przez ich właścicieli.
Jedną z głównych zalet podpisów Schnorr w porównaniu do ECDSA jest to, że transakcje multisig, czyli takie wymagające wielu podpisów, zajmują mniej miejsca i nie można ich odróżnić od transakcji „zwykłych”, czyli z jednym podpisem, które zapewne najczęściej wysyłasz. Schnorr bierze odpowiadające klucze i łączy je w jeden unikalny klucz. Nie tylko zmniejsza to zapotrzebowanie na miejsce, ale i zwiększa prywatność.
Taproot
BIP 340 definiuje specyfikację generowania i kodowania podpisów Schnorr oraz kluczy publicznych, a BIP 341 określa, w jaki sposób protokół będzie integrował te podpisy.
Taproot wprowadza również Merkelized Alternative Script Trees (MAST), który zmniejsza obciążenie danych dla każdej transakcji i obniża koszty. MAST rozszerza elastyczność i użyteczność kontraktów Bitcoin w sposób tani i chroniący prywatność.
BIP 341 określa także nowy sposób wysyłania Bitcoinów (nowy skrypt) o nazwie Pay-to-Taproot (P2TR). W ramach tej transakcji UTXO może zostać wydane przez właściciela klucza prywatnego lub każdego, kto może spełnić wymagania dowolnego skryptu w danym drzewie Merkle.
Zwiększone możliwości smart kontraktów
Tak, Bitcoin pozwala na tworzenie smart kontraktów. Są tworzone w języku Script, który nie posiada kompletności Turinga, jak np. język Ethereum, czy innych platform, jednak pozwala na pisanie skryptów takich właśnie jak multisig, czy time locked, a dzięki Taproot możliwości tworzenia smart kontratków również zostaną zwiększone.
Tapscript jest uaktualnieniem języka Bitcoina. Zmienia sposób oceny podpisów, aby skorzystać z ulepszeń wydajności podpisów Schnorr. Tapscript jest zawarty w BIP 342.
Jakie korzyści przyniesie to Bitcoinowi?
Cała aktualizacja Taproot przyniesie sporo korzyści użytkownikom sieci. Zwiększy prywatność dzięki zastosowaniu podpisów Schnorr i agregacji kluczy oraz zwiększy możliwości smart kontraktów Bitcoina.
Innym plusem jest oszczędzanie miejsca na blockchainie co będzie skutkować tańszymi transakcjami.
Zwiększy się również bezpieczeństwo. Podpisy Schnorra eliminują również „ciągliwość” podpisu, która mogła być obecna w podpisach ECDSA.
Mimo że ciągliwość transakcji została rozwiązana w SegWit, ciągliwość podpisu jest w pewnym sensie cechą ESDSA i dopiero Schnorr ją rozwiązuje. Polega ona na tym, że podpis może zostać zmieniony, ale transakcja nie zostaje unieważniona. Wysyłający nie wie o tym, że transakcja nie została unieważniona i może zostać poproszony o jej powtórzenie, co skutkuje wysłaniem dwóch płatności. Schnorr rozwiązuje ten problem poprzez przeniesienie danych podpisu cyfrowego do osobnej części transakcji.
Podsumowanie
Jak zapewne zauważyłeś aktualizacje Bitcoin nie są tak proste do zrozumienia, ale dla ciebie jako użytkownika niewiele się zmieni. Transakcje będziesz wysyłał i otrzymywał w sposób taki jak teraz.
Zmiany dotkną cię jedynie pozytywnie, czyli będziesz płacił niższe opłaty za wysyłanie BTC. Zresztą Bitcoin nie jest do wysyłania, a do HODL-owania ;)
Zmiany będą też bardzo dobre dla prywatności Lightning Network, ponieważ nie będzie można stwierdzić, które transakcje tworzą kanał Lightning.
Bitcoin musi się rozwijać i to pewnie nie ostatnia duża aktualizacja. Mimo że ma swoich przeciwników, jak każda poprzednia i każda przyszła, wydaje się kolejnym krokiem w dobrą stronę.