[responsivevoice_button voice=”Polish Female”]
Bitcoin jest zdecydowanie najpopularniejszą kryptowalutą na świecie. Niezależnie od tego, czy patrzysz na płynność , wolumen transakcji w łańcuchu , czy praktycznie na jakikolwiek inny wskaźnik, dominacja Bitcoin jest oczywista.
Jednak z przyczyn technicznych Ethereum jest często postrzegane jako bardziej atrakcyjna platforma dla programistów. Jest tak, ponieważ oferuje znacznie większą elastyczność w aplikacjach i inteligentnych kontraktach (smart contracts), które można teraz budować. Istnieje wiele platform, które przez lata koncentrowały się na zaawansowanych możliwościach smart kontraktowania, ale Ethereum jest wyraźnym liderem w tej konkretnej dziedzinie.
Podczas gdy te zmiany techniczne mają miejsce w Ethereum, Bitcoin podobnie jak złoto staje się magazynem wartości (store of value). Podjęto próby wypełnienia luki poprzez projekty takie jak sidechain RSK i token TBTC ERC-20 na Ethereum.
Ale inną opcją jest, aby sam Bitcoin zaktualizował własne możliwości skryptowe. Tutaj właśnie pojawia się SIMPLICITY.
Co to jest SIMPLICITY?
Simplicity to nowy język programowania dla Bitcoin, który pozwala na znacznie większą elastyczność w tworzeniu inteligentnych kontraktów niż jest to możliwe w dzisiejszej sieci Bitcoin. Język typu low-level (niskiego poziomu) został stworzony przez dewelopera Blockstream Infrastructure Tech Russella O’Connor.
„Jest to język skryptowy nowej generacji dla Bitcoin i sieci podobnych do Bitcoina, który obejmuje elementy i łańcuchy boczne (sidechain)” – wyjaśnił Adam Block, dyrektor generalny Blockstream podczas ostatniego seminarium internetowego na ten temat .
Twórca Bitcoina Satoshi Nakamoto ograniczył skrypt Bitcoin na początku projektu ze względów bezpieczeństwa, a Simplicity może być postrzegana jako próba zaoferowania znacznie większej elastyczności w skrypcie Bitcoin, przy jednoczesnym zachowaniu zgodności z bezpieczeństwem i, jak sama nazwa wskazuje, prostocie.
Mimo że Turing (platforma w pełni programowalna) nie jest kompletny , Simplicity oferuje wystarczającą ekspresję dla programistów, którzy chcą budować wiele podobnych aplikacji, które są dziś budowane na Ethereum.
Dodatkowo, Simplicity ma ułatwić deweloperom i użytkownikom weryfikację bezpieczeństwa, ochrony i kosztów wdrożonych smart kontraktów.
„Chcemy ze względów bezpieczeństwa analizować programy przed ich uruchomieniem” – wyjaśnił David Harding, pisarz technologiczny, który koncentruje się na dokumentacji oprogramowania typu open source, w odcinku Noded Bitcoin Podcast . „W Bitcoin nie zezwalamy na kompletność Turinga, abyśmy mogli statycznie analizować programy. Prostota nie pozwoliłaby na kompletność Turinga, aby można było statycznie analizować programy. ”
W szczególności wspomniany wyżej TBTC został szybko zamknięty przez jego twórców podczas ostatniego uruchomienia w sieci Ethereum ze względu na odkrycie błędu w smart kontrakcie zasilającym token ERC-20. Przez lata pojawiło się wiele poważnych problemów bezpieczeństwa ze smart kontraktami opartymi na Ethereum, takimi jak błąd wieloprocesowy Parity i niesławny hack DAO .
Co oznaczałoby Simplicity dla Bitcoina?
Aby uzyskać prawdziwy wgląd w to jakie znaczenie dla Bitcoinów miałoby w rzeczywistości Simplicity, LongHash skontaktował się z partnerem badawczym Paradigm, Danem Robinsonem, który pracował zarówno z Simplicity, jak i Ethereum.
„Simplicity byłoby znacznie szerszą aktualizacją możliwości skryptu Bitcoin niż każde uaktualnienie w całej historii Bitcoina”, powiedział Robinson. „Jako zestaw instrukcji „funkcjonalnie kompletnych” zasadniczo wyeliminowałby potrzebę przyszłych aktualizacji skryptu Bitcoina (chociaż niektóre aktualizacje mogą być nadal potrzebne, aby niektóre funkcje były bardziej wydajne).”
W przeszłości aktualizacje Bitcoina były wdrażane za pośrednictwem tzw. soft forków, co wymaga konsensusu społeczności jako warunku wstępnego przed aktywacją w sieci. Gdyby włączono Simplicity, każdy mógłby skutecznie zaimplementować tego rodzaju zmiany, które zwykle polegają na rozwiązywaniu problemów, bez udziału węzłów w sieci, aby zaktualizować reguły konsensusu Bitcoin.
Ma to dwa kluczowe skutki uboczne: Development bitcoinów może odbywać się w znacznie szybszym tempie niż wcześniej było to możliwe i byłoby pomocne pod względem potencjalnego dostosowania protokołu Bitcoin. Ewentualne dostosowanie protokołu w Bitcoinie jest pożądane, ponieważ skutecznie oznacza, że podstawowe reguły sieciowe, takie jak polityka pieniężna, nigdy się nie zmienią, zamykając potencjalny wektor ataku społecznego na to, co sprawia, że Bitcoin jest przede wszystkim wartością.
„Ciekawe implikacje: Gdyby dziś Bitcoin miał skrypty Simplicity, stałoby się ono samo-rozszerzalne”, napisał Adam Back na Reddit .
Tutaj Back wykorzystuje proponowane zmiany w Bitcoinach jako przykłady różnych rodzajów dodatków, które można wprowadzić do Bitcoina bez zmiany zasad konsensusu, jeśli Simplicity byłoby dostępne w Bitcoin. Po bezpośrednim zwróceniu się o komentarz Back wyjaśnił: „Wierzę, że technicznie Taproota nie da się wdrożyć za pomocą Simplicity z tego, co mówił Pieter [Wuille] – choć Schnorr jest”.
Z perspektywy Robinsona pierwszą rzeczą, która miałaby miejsce, gdyby Simplicity zostało dodane do Bitcoin, byłyby ulepszenia funkcji, nad którymi programiści już dziś pracują w Bitcoin. Ulepszone projekty kanałów płatności (takich jak Eltoo), nowe podpisy algorytmów i być może niektóre ulepszenia prywatności.
„Jednym z głównych osiągnięć, które mógłbym się spodziewać, byłby w końcu standard (podobny do ERC-20 Ethereum), który mógłby umożliwić nową klasę aplikacji, takich jak stablecoins, zdecentralizowana wymiana i handel lewarowany”, dodał Robinson.
Różnice między Ethereum a Bitcoinem z Simplicity
Oczywistym wnioskiem, jaki można wyciągnąć z włączenia Simplicity do głównej sieci Bitcoin, jest to, że nie byłoby większego powodu, aby kontynuować używanie Ethereum. Jednak w świecie, w którym Bitcoin miałby Simplicity, nadal istnieje kilka kluczowych różnic między tymi dwiema platformami.
„Interesuje mnie Simplicity, nie dlatego, że mogłaby uczynić Bitcoin bardziej podobnym do Ethereum, ale ponieważ myślę, że mogłaby uczynić Bitcoin lepszym w byciu Bitcoinem” – powiedział Robinson.
Pomimo włączenia Simplicity, Bitcoin nadal działałby w modelu opartym na Unspent Transaction Output (UTXO), w przeciwieństwie do konfiguracji Ethereum Account Based Model..
„Model UTXO jest fantastyczny pod względem wydajności walidatora, ale jednym z kompromisów jest to, że utrudnia tworzenie aplikacji, w których wiele osób może chcieć wchodzić w interakcje z kontraktem”, wyjaśnił Robinson.
Ponadto Ethereum poczyniło już znaczne postępy w zakresie tworzenia efektów sieciowych wokół swojej platformy – przynajmniej w zakresie smart kontraktów.
„Simplicity nie ma być językiem czytelnym dla człowieka, więc ktoś prawdopodobnie musiałby opracować język, który będzie się z nim kompilował, zanim zwykli programiści będą mogli go używać. Konieczne będzie wiele badań w celu opracowania inteligentnych wzorców kontraktowych zgodnych z modelem UTXO. ”
Efekty sieciowe zbudowane wokół Ethereum z perspektywy rozwoju są powodem, dla którego RSK, będący sidechainem Bitcoin w stylu Ethereum, zdecydował się dostosować swoją platformę do wirtualnej maszyny Ethereum.
Na koniec dnia nie jest również jasne, czy użytkownicy Bitcoin chcą tego rodzaju aplikację do kryptowaluty, którą można zobaczyć w Ethereum.
„Przestrzeń blokowa bitcoinów jest wyższa niż w Ethereum, a jej 10-minutowy czas tworzenia bloków prawdopodobnie wykluczałby niektóre aplikacje”, powiedział Robinson. „Podobnie wydaje się niejasne, czy społeczność Bitcoin naprawdę chce, aby aplikacje były budowane na Bitcoinach (innych niż proste związane z BTC, takie jak kanały płatności). Mogą one przeciążać łańcuch, a nawet zwiększać rentowność 51% ataku poprzez wprowadzenie nowych rodzajów wartości wydobywalnej przez górników. ”
Według Robinsona wielu użytkowników Bitcoinów krytycznie odnosiło się do Ethereum od jego wczesnych stadiów ze względu na istnienie problemu Oracle, który skupił się bardziej na rozwoju różnych zdecentralizowanych aplikacji finansowych (DeFi) .
Kiedy przybędzie Simplicity?
Należy zauważyć, że prawdopodobnie wciąż jesteśmy daleko od dodania Simplicity do głównej sieci Bitcoin. Jednak oczekuje się, że język skryptowy zostanie dodany do łańcucha bocznego Liquid w tym roku.
Choć będzie to pierwszy znaczący krok w rzeczywistym korzystaniu z Simplicity, niektórzy programiści, tacy jak ci pracujący nad portfelami prywatnymi Bitcoin, zostali wyłączeni przez federacyjny model sidechaina Liquid.
„Nie sądzę, aby federalną naturę Liquidu w ogóle można było uznać za przełomową”, powiedział Robinson zapytany o ten punkt. „Myślę jednak, że może być trudniej dotrzeć do masy krytycznej programistów lub użytkowników”.
Według wieloletniego współpracownika Bitcoin Core i współzałożyciela Blockstream Grega Maxwella (alias nullc na Reddit), Simplicity można dodać do Bitcoin za pomocą soft forka, dzięki systemowi wersjonowania skryptów, który został wprowadzony za pomocą aktualizacji Segregated Witness (SegWit) . Oczywiście zakłada to, że konsensus społeczności może być budowany wokół zmiany zasad konsensusu Bitcoin.
„Nie jestem do końca pewien, w jaki sposób zostałby wdrożony jako soft fork, ale nie zastąpi niczego w sieci głównej.” – powiedział programista o pseudonimie Grubles, który pracuje w Blockstream. „Będzie to tylko dodatkowy typ adresu, którego możesz użyć wraz z istniejącymi typami (starsze wersje, p2sh, bech32 itp.).”
Grubles dodał, że jego zdaniem Ethereum wyrządził wiele szkód terminowi „smart contract” ze wszystkimi różnymi zepsutymi inteligentnymi umowami, które były wdrażane na platformie przez lata. Z tego powodu uważają, że użytkownicy Bitcoin, którzy zwracali uwagę na Ethereum, mogą nie być podekscytowani tym, że smart kontrakty stają się bardziej elastyczne w przypadku Liquid.
„Myślę, że będzie to interesująca dyskusja, ale za kilka lat”, dodał Back. „Istnieją precedensy, które polegają na udowodnieniu, że w pierwszej kolejności działają łańcuchy boczne”.