Modularny paradygmat blockchaina

W fizyce sprzężenie to zjawisko, w wyniku którego dwie formy ruchu wpływają na siebie poprzez interakcję. Z drugiej strony oddzielenie to matematyczne oddzielenie dwóch form ruchu w celu rozwiązania problemu.

W dziedzinie programowania idea modułowości jest bardzo podobna: technika projektowania oprogramowania zwana programowaniem modułowym kładzie nacisk na rozdzielenie funkcjonalności programu na niezależne, wymienne moduły, tak aby każdy zawierał wszystko, co niezbędne do wykonania tylko jednego aspektu pożądanej funkcjonalności .

Blockchainy to również programy komputerowe. Zasadniczo, stosując ideę modułowości do publicznego blockchaina, możemy podzielić go na trzy podstawowe komponenty:

  1. Wykonanie — są to obliczenia wymagane do zaktualizowania łańcucha, które obejmują pobranie bieżącego stanu, dodanie wielu nowych transakcji i przejście do nowego stanu.

  2. Konsensus, ugoda lub zabezpieczenie — zapewnia bezpieczeństwo i zgodę na transakcje oraz ich kolejność.

  3. Dostępność danych (DA) — ma na celu zapewnienie, że dane transakcji znajdujące się za nagłówkiem bloku zostaną opublikowane i będą dostępne, dzięki czemu każdy będzie mógł łatwo obliczyć stan i sprawdzić przejścia między stanami.

Zamiast łączyć wszystkie te trzy komponenty w jeden monolityczny łańcuch, jak robią to obecne główne blockchainy, możemy podzielić je na wyspecjalizowane łańcuchy lub warstwy, z których każdy odgrywa rolę jednego modułu, aby wydajniej wdrożyć funkcjonalność blockchaina. To jest paradygmat modułowego blockchaina.

Korzyści płynące z modułowych łańcuchów bloków

Jak wspomniano wcześniej, modułowe blockchainy są wynikiem oddzielenia głównych komponentów pojedynczego blockchaina i uruchomienia ich na oddzielnych warstwach. Jakie są zatem zalety modułowych blockchainów w porównaniu z tymi niemodułowymi? Poniżej wymieniono korzyści.

Skalowalność

Warstwy specjalizujące się w parze podstawowych funkcji umożliwią znacznie większą skalowalność bez ograniczeń związanych z dokonywaniem kompromisów, które są nieodłączną częścią monolitycznego łańcucha bloków. Na przykład modułowa warstwa dostępności danych z próbkowaniem DA może skalować się liniowo wraz z liczbą użytkowników.

Interoperacyjność

Blockchainy mogą wykorzystywać modułową wspólną warstwę bezpieczeństwa, aby umożliwić minimalizację zaufania między blockchainami w tym samym klastrze. Poprawia to zarówno bezpieczeństwo, jak i poziom, na jakim kilka blockchainów może się ze sobą komunikować.

Bootstrapowanie

Nowe blockchainy można tworzyć przy minimalnych kosztach i czasie. Rzeczy takie jak Rollup Software Development Kits nie tylko w tym pomogą, ale także dostarczą sposób na bootstrapowanie bez potrzeby mechanizmu konsensusu, walidatorów lub mechanizmów dystrybucji tokenów.

Eksperymentowanie

Blockchainy można łatwo tworzyć i wykorzystywać do testowania nowych innowacyjnych technologii, które zapewniają dalszą skalowalność i optymalizację całego stosu łańcuchów. Dzięki temu nowe łańcuchy mogą skupić się bezpośrednio na elementach, w których chcą wprowadzać innowacje, które następnie mogą zostać rozprzestrzenione na pozostałe łańcuchy.

Warstwa DA w rollupach

Rollupy, czyli rozwiązanie warstwy 2 Ethereum mające na celu efektywne skalowanie, są również zasadniczo podejściem modułowym. Rollup usuwa warstwę wykonawczą z warstwy 1 Ethereum i tworzy drugą warstwę wyłączną dla wykonywania, skupiającą się na przetwarzaniu transakcji tak szybko, jak to możliwe. Z drugiej strony warstwa 1 Ethereum nadal odpowiada za trudną pracę zarówno w zakresie bezpieczeństwa, jak i dostępności danych.

Więc są tu dwa pytania. Po pierwsze, dlaczego dostępność danych jest tak ważna? Po drugie, czy możemy ponownie użyć idei modułowości, aby oddzielić DA od warstwy 1? Proszę pozwolić mi poświęcić chwilę na wyjaśnienie.

W przypadku pierwszego pytania muszę omówić sytuację osobno. W przypadku Optimistic Rollup, gdy sekwencer robi coś złego i rozlicza nieprawidłowy stan salda konta, każdy może pobrać oryginalne dane transakcji z warstwy 1 i odtworzyć prawidłowy stan konta, aby wykonać wyzwanie. Rola DA jest więc taka jak biuro archiwalne, które dostarcza oryginalne dowody w przypadku wyzwania, zapewniając, że wyzwanie jest poprawne i ważne.

Jeśli chodzi o Zero Knowledge (ZK) Rollup, sekwencer nie może wyrządzić zła ze względu na kryptograficzny dowód zerowej wiedzy. Jednak w skrajnych przypadkach, gdy sekwencer przestaje działać lub jest niedostępny z jakiegokolwiek powodu, użytkownicy muszą uciec z łańcucha warstwy 2 i odzyskać swoje pieniądze na warstwę 1, gdy DA jest niezbędne, aby zapewnić, że każdy może odtworzyć ostateczny status na podstawie danych. Dlatego rola DA jest jak drzwi bezpieczeństwa, aby zagwarantować użytkownikom płynną ucieczkę w przypadku skrajnej sytuacji.

Na drugie pytanie krótka odpowiedź brzmi: tak. Chociaż DA jest tak istotne, że najlepszym miejscem do jego przechowywania jest warstwa 1 Ethereum, najbezpieczniejszy łańcuch jest również najdroższy — koszt gazu transakcji rozliczeniowych i przechowywania danych jest o wiele wyższy niż w przypadku każdego innego łańcucha. Dlatego zarówno Matter Labs, jak i Starkware zapewniają użytkownikom tanią wersję ZK Rollup, mianowicie ZK-Porter i Validium, co oznacza kompromis w kwestii nieprzechowywania DA na warstwie 1.

W rezultacie na scenę zaczyna wkraczać specjalistyczna i modułowa warstwa DA.

Projekty specjalistycznej warstwy DA

Celestia

Celestia, wcześniej nazywana LazyLedger, jest modułową siecią konsensusu i danych, zbudowaną tak, aby każdy mógł łatwo wdrożyć własny blockchain przy minimalnym narzucie. Poprzez oddzielenie warstw konsensusu i DA od wykonywania aplikacji, Celestia modularizuje stos technologii blockchain i otwiera nowe możliwości dla zdecentralizowanych twórców aplikacji.

W ramach architektury modułowej obsługującej Celestię deweloperzy mogą bez wysiłku definiować własne wirtualne środowiska wykonawcze. Każda aplikacja otrzymuje własną suwerenną przestrzeń wykonawczą i może być aktualizowana bez twardych forków głównego łańcucha.

Głównym celem Celestii jest rozwiązanie jednego z podstawowych ograniczeń skalowania blockchain — „problemu dostępności danych”. Problem ten brzmi: w jaki sposób węzły mogą mieć pewność, że gdy zostanie wygenerowany nowy blok, wszystkie dane w tym bloku zostały faktycznie opublikowane w sieci? Dylemat polega na tym, że jeśli sekwencer lub producent bloku nie udostępni wszystkich danych w bloku, nikt nie będzie w stanie wykryć, czy w tym bloku ukryta jest złośliwa transakcja.

Jak Celestia rozwiązuje ten problem? Używa kodów kasowania, aby tworzyć dowody dostępności danych, które z dużym prawdopodobieństwem gwarantują, że wszystkie te dane zostały opublikowane w łańcuchu.

Dokładniej rzecz biorąc, Celestia używa dwuwymiarowego schematu kodowania Reeda-Solomona do kodowania danych blokowych, gdy sekwencer tworzy nowy blok. Ten schemat zapewnia, że ​​tylko mała próbka danych wystarczy, aby zweryfikować ze statystyczną pewnością, że cały blok został opublikowany. Tylko klienci light są potrzebni do wykonania operacji zwanej próbkowaniem dostępności danych (DAS) — losowego pobierania małego fragmentu danych z bloku w celu wykrycia, czy sekwencer zachowuje się nieprawidłowo i wstrzymuje dane. Ta metoda jest bardzo skuteczna z punktu widzenia statystyki prawdopodobieństwa. W rzeczywistości, gdy po raz siódmy klient light próbuje losowo sprawdzić fragment danych, prawdopodobieństwo, że nie wykryje, że sekwencer zachowuje się nieprawidłowo, spada do mniej niż 1%. A gdy zostanie odkryte, że jakikolwiek mały fragment danych jest nieprawidłowo zakodowany, sieć jest powiadamiana za pomocą dowodu oszustwa. Dzięki temu przepustowość nie jest ograniczona przez wykonywanie stanu, jak w przypadku tradycyjnych blockchainów, co pozwala na skalowanie przepustowości Celestii wraz z liczbą zaangażowanych użytkowników.

Początkowo skupiając się na EVM i Cosmos SDK, Celestia nie wyklucza integracji z ekosystemami Ethereum i Cosmos. Celestia wydała plan o nazwie Celestium, który pozwala każdemu łańcuchowi Ethereum L2 na korzystanie z Celestii w celu zapewnienia dostępności danych i Ethereum w celu rozstrzygania sporów. Celestium zapewnią wysoką przepustowość danych dla Ethereum L2, z wyższym poziomem bezpieczeństwa niż inne techniki dostępności danych poza łańcuchem.

Ponadto Celestia współpracuje z Evmos w celu zbudowania warstwy rozliczeniowej dla rollupów EVM o nazwie Cevmos. Łańcuch rozliczeniowy zostanie zaimplementowany jako rollup Celestia przy użyciu Optimint i wykorzystuje Celestię jako warstwę DA, aby zapewnić w pełni równoważny stos EVM zoptymalizowany wyłącznie pod kątem rollupów, co skutkuje niższymi opłatami i lepszą skalowalnością rollupów.

Dostępny wielokąt

Avail, jedno ze skalowalnych rozwiązań w zestawie narzędzi Polygon, to uniwersalny, skalowalny blockchain skoncentrowany na dostępności danych, przeznaczony dla samodzielnych łańcuchów, łańcuchów bocznych i rozwiązań skalowalnych poza łańcuchem.

Avail zapewnia solidną warstwę dostępności danych dzięki zastosowaniu niezwykle bezpiecznego prymitywnego mechanizmu matematycznego — kontroli dostępności danych przy użyciu kodów wymazywania z kluczową innowacją — wykorzystując zobowiązania wielomianowe Kate do tworzenia dwuwymiarowego schematu dostępności danych, który pomija dowody oszustwa, nie wymaga uczciwych założeń większościowych i nie polega na uczciwym pełnym węźle równorzędnym w celu uzyskania pewności, że dane są dostępne.

Podejście Avail do rozwiązania problemu dostępności danych jest podobne do DAS Celestii, ale różni się tylko w małych punktach. Avail używa wielomianowych zobowiązań KZG zamiast dowodów oszustwa, aby uniknąć niewłaściwego zachowania sekwencerów. Zobowiązania KZG, znane również jako zobowiązania Kate, zostały wprowadzone przez Aniket Kate, Gregory'ego M. Zaveruchę i Iana Goldberga w 2010 r., zapewniając sposób na zwięzłe zobowiązanie do wielomianów.

Mówiąc prościej, wszystkie dane w bloku są ułożone jako dwuwymiarowa macierz. Nadmiarowość danych jest wprowadzana przez kodowanie wymazywania każdej kolumny macierzy, aby podwoić rozmiar oryginalnej kolumny. Zobowiązania Kate są używane do zatwierdzania każdego z wierszy, a zobowiązanie jest zawarte w nagłówku bloku. Schemat ten ułatwia wykrycie próby ukrycia danych, ponieważ każdy lekki klient z dostępem tylko do nagłówków bloku może zapytać losowe komórki macierzy i uzyskać krótkie dowody, które można sprawdzić w nagłówkach bloku. Nadmiarowość danych zmusza sekwencer do ukrycia dużej części bloku, nawet jeśli chce ukryć tylko jedną transakcję, co czyni go podatnym na wykrycie podczas losowego próbkowania. W ten sposób unika się potrzeby dowodów oszustwa, ponieważ wiążąca natura zobowiązań Kate sprawia, że ​​dla sekwencerów jest bardzo niewykonalne obliczeniowo konstruowanie błędnych zobowiązań i nie zostanie wykrytym.

Streszczenie

Specjalistyczna warstwa dostępności danych, jako prototyp modułowych blockchainów, ma na celu ułatwienie całkowitej zmiany sposobu, w jaki podchodzimy do projektowania systemów blockchain, umożliwiając modułowy paradygmat blockchain, w którym różne środowiska wykonawcze mogą wykorzystywać tę wyspecjalizowaną warstwę do porządkowania i dostępności danych. Chociaż może pojawić się niewielka obawa, że ​​podsumowania wykorzystujące wyspecjalizowaną warstwę DA mogą nie być tak bezpieczne, jak te z główną siecią Ethereum, jest to niezbędny kompromis, ponieważ modułowe blockchainy mogą zapewnić bardziej elastyczną, skalowalną, konfigurowalną i interoperacyjną sieć. W dłuższej perspektywie wyspecjalizowana warstwa DA stanie się kamieniem węgielnym modułowego paradygmatu blockchain, torując drogę do końcowej fazy skalowania blockchain.

Zastrzeżenie: Niniejsze badanie ma charakter wyłącznie informacyjny. Nie stanowi porady inwestycyjnej ani rekomendacji kupna lub sprzedaży jakiejkolwiek inwestycji i nie powinno być wykorzystywane w ocenie zalet podejmowania jakiejkolwiek decyzji inwestycyjnej.

🐦 @chestersigned

📅 18 kwietnia 2022

Połączyć:

https://medium.com/blockchain-capital-blog/wtf-is-data-availability-80c2c95ded0f

https://polynya.medium.com/the-lay-of-the-modular-blockchain-land-d937f7df4884

https://rileygmi.substack.com/p/celestia?s=r&utm_campaign=post&utm_medium=web

https://coinyuppie.com/focus-on-the-data-availability-layer-to-understand-the-new-public-chain-celestia/

https://polygon.technology/blog/introducing-avail-by-polygon-a-robust-general-function-scalable-data-availability-layer-98bc9814c048

https://polygon.technology/solutions/polygon-avail/