Ten post został po raz pierwszy opublikowany na Medium.
Porównujemy inteligentne kontrakty na Bitcoin SV (BSV) i BTC.
Podstawowe różnice
Bitcoin SV
Bitcoin SV wykorzystuje oryginalne kody skryptów wydane przez Satoshi, co umożliwia inteligentne kontrakty kompletne w technologii Turing. Aby zbudować dowolną aplikację, nie jest potrzebny żaden nowy kod operacyjny ani żadne zmiany w warstwie bazowej. Niedopuszczalne innowacje są mile widziane, a konstruktorzy mogą swobodnie majstrować przy wszelkich nowatorskich zastosowaniach. Wszystkie są wdrażane w formie inteligentnych kontraktów, działających na warstwie bazowej, zamiast być w niej zakodowane i zapieczętowane. Zapewnia to programistom i innowatorom szybkość i krótki czas wprowadzenia produktu na rynek, zwiększając ich kreatywność i pomysłowość.
BTC
Ze względu na wiele wyłączonych opkodów, gdy pożądany jest nowy przypadek użycia, często potrzebny jest fork (miękki lub twardy) do jego obsługi. Należy szukać błogosławieństw i pozwoleń od strażników (np. programistów Core), co jest kontrowersyjne, a aktywacja propozycji może zająć lata, jeśli jest jedną z niewielu szczęśliwców, którzy zostaną zaakceptowani i zatwierdzeni.
Przykłady przypadków użycia
Wymieniamy kilka znanych przypadków użycia zaproponowanych przez BTC, z których wszystkie są uważane za niemożliwe bez forka. Pokazujemy, że nie tylko są one możliwe przy użyciu oryginalnego protokołu Bitcoin w BSV, ale także ich implementacja jest nawet o wiele rzędów wielkości szybsza. Wszystkie przykłady zawierają działający kod o otwartym kodzie źródłowym, który można niezależnie zweryfikować.
Taproot zajął 4 lata, ponad 150 programistów
W Taproot w BTC zaangażowanych było ~150 programistów, a od propozycji do aktywacji zajęło to ~4 lata. Został wdrożony przez indywidualnego programistę w ciągu godziny na BSV!
Niedozwolona innowacja w najlepszym wydaniu.
Przeszczep
Podobnie jak Taproot, Graftroot został wdrożony na BSV, czego jeszcze nie wprowadzono w BTC.
Dowód wiedzy zerowej (ZKP)
ZKP to prawdopodobnie najbardziej wyrafinowany i zaawansowany rodzaj kryptografii stosowany w blockchainach. Ostatnio wzbudził entuzjazm w BTC, co wymaga dodania nowego kodu operacji. Od 2022 roku BSV posiada na łańcuchu działający weryfikator ZKP.
Przymierze
BTC ma kilka propozycji włączenia umowy, takich jak OP_CHECKTEMPLATEVERIFY/OP_CTV w BIP119. BSV ma umowę od 2020 roku. Ma nawet umowę rekurencyjną.
Blockstream opublikował sztuczkę umożliwiającą zawarcie umowy za pomocą OP_CAT, 3 miesiące po wydaniu jej w październiku 2020 r.¹. Ten pierwszy nie działa na BTC nawet dzisiaj, ze względu na brak OP_CAT.
Sklepienie
Jednym z przypadków użycia umowy jest Vault, który został zaimplementowany w BSV.
Podpis Schnorra
Podpis Schnorra zostaje wprowadzony w BTC w ramach aktualizacji SegWit. Można go wdrożyć w formie inteligentnej umowy.
SIGHASH_ANYPREVOUT (APO)
SIGHASH_ANYPREVOUT, zaktualizowana wersja SIGHASH_NOINPUT, w BIP-118 zawiera propozycję wykluczenia identyfikatora wydawanego UTXO ze skrótu podpisu (sighash). My również to wdrożyliśmy. Co więcej, nasze podejście pozwala na dowolne dostosowywanie, które części danych transakcyjnych trafiają do sighash, co jest znacznie bardziej uniwersalne i elastyczne.
Merklizowane abstrakcyjne drzewo składniowe (MAST)
Merklized Abstract Syntax Tree MAST (aka Merklized Alternative Script Trees) wykorzystuje drzewo Merkle do kodowania wzajemnie wykluczających się gałęzi w skrypcie, który został połączony z Taproot.
Podpisy Lamporta
Podpisy Lamporta, jednorazowy schemat podpisu wykorzystujący funkcje skrótu, są odporne na kwanty i zostały zaproponowane.
Wyrocznia
W przypadku BTC do wdrożenia wyroczni używany jest kontrakt Discreet Log Contract (DLC). Jednakże ma problemy ze skalowalnością, ponieważ strony muszą tworzyć i przechowywać podpisy dla każdego możliwego wyniku, jaki może podpisać wyrocznia.
W BSV wdrożyliśmy wyrocznie korzystające z natywnego ECDSA, które podpisuje tylko ostateczny i pojedynczy wynik.
Wdrożyliśmy także wydajniejszą alternatywę opartą na sygnaturach Rabina.
OP_CHECKSIGFROMSTACK/OP_CSFS
OP_CSFS to proponowany kod operacji w BTC, który pozwala sprawdzić, czy podpis podpisuje dowolną wiadomość.
OP_CheckLockTimeVerify/CLTV
BTC wprowadza nowy kod operacyjny OP_CLTV w BIP65, aby zrealizować absolutną blokadę czasową, którą można wdrożyć bez niego.
OP_CheckSequenceVerify/CSV
BTC wprowadza nowy kod operacyjny OP_CSV w BIP112, aby zrealizować względną blokadę czasową, którą można również wdrożyć bez niego.
[1] Wydaliśmy tylko wersję ECDSA, ponieważ Schnorr nie jest natywnie obsługiwany w BSV, więc nie rozważaliśmy jej. Ale da się to w banalny sposób przystosować do współpracy z Schnorrem.
Obejrzyj: sCrypt umożliwia inteligentne kontrakty na blockchainie BSV
Autor : BitcoinSV.pl