Blockchain modularny to sieć, która rozdziela podstawowe funkcje łańcucha bloków pomiędzy wyspecjalizowane, odrębne warstwy, zamiast realizować wszystkie te funkcje w ramach jednej, wspólnej warstwy konsensusu, jak dzieje się to w modelu monolitycznym. Podział odpowiedzialności między warstwy ma pozwolić każdej z nich skoncentrować się na jednym zadaniu i być pod tym względem lepiej zoptymalizowana.
Cztery podstawowe funkcje blockchaina
Działanie sieci blockchain można rozdzielić na cztery funkcje: wykonanie transakcji (execution), rozliczenie i weryfikację sporu (settlement), uzgodnienie kolejności transakcji między uczestnikami (konsensus) oraz zapewnienie, że dane transakcji są rzeczywiście dostępne dla sieci (dostępność danych, DA). W modelu monolitycznym wszystkie cztery funkcje są realizowane przez tę samą warstwę protokołu, co ułatwia projektowanie systemu, ale ogranicza możliwość optymalizacji każdej funkcji niezależnie.
Funkcje wykonania, rozliczenia i konsensusu wymagają dostępności danych, aby działać bezpiecznie – bez gwarancji, że dane transakcji są dostępne, nie można wiarygodnie zweryfikować poprawności wykonania ani rozstrzygnąć potencjalnego sporu.
Typowy układ warstw
W architekturze modularnej typowy układ zakłada warstwę bazową odpowiadającą za konsensus i dostępność danych, nad którą działa warstwa rozliczeniowa (settlement), a nad nią z kolei jedna lub wiele warstw wykonawczych (execution), często realizowanych jako rollupy. Taki układ pozwala wielu odrębnym sieciom wykonawczym korzystać ze wspólnej warstwy bazowej, współdzieląc jej bezpieczeństwo i dostępność danych bez konieczności budowania własnego zestawu walidatorów od zera.
Przykład praktyczny
Wyspecjalizowana warstwa dostępności danych może dzielić dane bloku na odrębne przestrzenie nazw, przypisane do konkretnych aplikacji lub rollupów, wykorzystując struktury drzew Merkle z podziałem na przestrzenie nazw. Dzięki temu każdy rollup może pobrać wyłącznie własne dane, a nie cały zbiór danych wszystkich aplikacji działających na danej warstwie bazowej, i jednocześnie udowodnić kompletność pobranych informacji.
Współdzielenie warstwy bazowej przez wiele rollupów
Ponieważ wiele niezależnych rollupów może korzystać z tej samej warstwy dostępności danych i tego samego mechanizmu konsensusu, deweloperzy nowych aplikacji nie muszą budować od podstaw własnego zestawu walidatorów, aby zapewnić bezpieczeństwo swojej sieci wykonawczej. Zamiast tego mogą skupić się na logice wykonania transakcji i opłacić wspólnie używaną warstwę bazową za publikację i poświadczenie dostępności swoich danych, co obniża barierę wejścia dla nowych, wyspecjalizowanych sieci wykonawczych.
Modularność jako spektrum
Modularność nie jest jednym, sztywnym standardem architektonicznym, lecz spektrum możliwych układów – projekty mogą dzielić poszczególne funkcje między warstwy w różnych konfiguracjach, na przykład korzystając z jednej sieci dla rozliczenia i innej, niezależnej sieci dla dostępności danych, albo łącząc niektóre funkcje w ramach jednej warstwy przy jednoczesnym rozdzieleniu innych.
Ryzyka i ograniczenia
Ponieważ modularność jest spektrum, a nie jednym standardem, porównywanie różnych projektów modularnych między sobą wymaga ostrożności – dwie sieci opisywane jako „modularne” mogą mieć zupełnie inny rozkład odpowiedzialności między warstwami i inny profil bezpieczeństwa. Bezpieczeństwo całego stosu modularnego zależy od najsłabszego ogniwa w łańcuchu warstw – zwłaszcza od warstwy dostępności danych, której ewentualne słabości (na przykład w rozwiązaniach opartych na komitetach) mogą podważyć bezpieczeństwo warstw wykonawczych i rozliczeniowych zbudowanych na tej podstawie.
Warto też pamiętać, że rozdzielenie funkcji między warstwy wprowadza dodatkową złożoność komunikacji między nimi – mosty i mechanizmy przekazywania informacji między warstwami wykonawczymi, rozliczeniowymi i bazowymi stanowią kolejny element, który musi zostać poprawnie zaprojektowany i zabezpieczony. Dodatkowo, ponieważ wiele rollupów może współdzielić tę samą warstwę bazową, jej przeciążenie w okresach wysokiego zapotrzebowania na publikację danych może pośrednio wpływać na koszty i czas działania wszystkich sieci wykonawczych zależnych od tej samej infrastruktury.
Podsumowanie
Blockchain modularny rozdziela wykonanie, rozliczenie, konsensus i dostępność danych między wyspecjalizowane warstwy, w przeciwieństwie do modelu monolitycznego realizującego wszystkie te funkcje w jednym miejscu. Takie podejście ma na celu zwiększenie skalowalności i elastyczności całego ekosystemu, ale wymaga uważnej oceny bezpieczeństwa każdej z warstw składających się na daną architekturę.



