squares with blue background

Co to są warstwy blockchaina?

Udostępnij

Efekty kształcenia:

Po przeczytaniu tego artykułu zrozumiesz:

  1. Różnicę między pojęciami L0, L1, L2 i L3 
  2. Problemy, z jakimi zmagają się blockchainy 
  3. Jak działają rozwiązania skalowalności 
  4. Jak działają rozwiązania pomostowe 

Co to są warstwy blockchaina?

Blockchainy takie jak Bitcoin i Ethereum są opisywane jako warstwy ustaleń, ponieważ ustalają i przechowują transakcje cyfrowych walut. Alternatywnie opisywane są jako łańcuchy warstwy 1 ulokowane w ramach hierarchii innych warstw 0-3. 

To nasuwa pytanie, dlaczego potrzebnych jest więcej niż jedna warstwa blockchaina i co każda z tych warstw robi? 

Pojęcie warstw blockchaina 

Opisując systemy techniczne, powszechnie używa się pojęcia stosu warstw. Dobrym przykładem jest przedstawianie zasad działania Internetu jako czterowarstwowego modelu TCP/IP: Warstwa dostępu do sieci (1) > Warstwa Internetu (2) > Warstwa transportowa (3) > Warstwa aplikacji (4). 

Blockchainy są takie same. Na poziomie technicznym blockchainy można podzielić na pięć warstw: 

  • Warstwa Infrastruktury lub Sprzętowa (Hardware) – Sieć fizycznych komputerów łączących się ze sobą za pośrednictwem Internetu na zasadzie peer-to-peer (równy z równym). 

  • Warstwa Danych – Informacje przechowywane i aktualizowane przez blockchainy.  

  • Warstwa Sieci – Oprogramowanie umożliwiające węzłom sieci nasłuchiwanie, proponowanie i dodawanie nowych bloków do sieci. 

  • Warstwa Konsensusu – Systemy zapewniające integralność i autentyczność danych przechowywanych w blockchainach, z których najbardziej znane to Proof of Work i Proof of Stake

  • Warstwa Aplikacji i Prezentacji – Interfejsy Programowania Aplikacji (API), inteligentne kontrakty i zdecentralizowane aplikacje (dApp), zapewniające interfejs użytkownika. 

Ale język krypto, nieco gmatwając sprawę, częściej określa warstwy numerami, w ten sposób opisując rozwiązania dla dwóch najpoważniejszych problemów, z jakimi mierzą się blockchainy: interoperacyjności i skalowania. Niniejszy artykuł koncentruje się na warstwach 0, 1 i 2. 

Warstwy 0-2: Przegląd 

Warstwa 0 – Tworzenie blockchaina i bezpieczeństwo: System zapewniający ustalenia i bezpieczeństwo nieograniczonej liczbie interoperacyjnych blockchainów. 

Warstwa 1 – Warstwa fundamentowa: Występujące pojedynczo blockchainy zapewniające ustalenia i bezpieczeństwo.

Warstwa 2 – Warstwa abstrakcji: Wsadowe przetwarzanie transakcji poza łańcuchem. 

Warstwa 2: Skalowalność & trylemat blockchaina 

Objaśniając Białą Księgę Bitcoina (ang. Bitcoin White Paper), Akademia krypto Skrill przedstawia kompletną analizę zasad działania Bitcoina jako łańcucha warstwy 1 na rzecz ustanowienia nowej formy pieniądza internetowego w oparciu o system peer-to-peer.

Biała Księga nie zawiera słowa warstwa, ale jej pseudonimowy autor, Satoshi Nakamoto, w innym wystąpieniu internetowym odniósł się do braków sugerujących potrzebę wprowadzenia drugiej warstwy.

„Obecnie Bitcoin nie jest praktycznym rozwiązaniem dla bardzo małych mikropłatności. Na tyle małych, że obejmują one to, co można nazwać górnym zakresem mikropłatności. Ale (Bitcoin) nie uważa się za praktyczne rozwiązanie dla dowolnie małych mikropłatności”. Satoshi Nakamoto, Odsyłacz 

Najprostszym sposobem zilustrowania niepraktyczności Bitcoina dla mikropłatności jest posłużenie się przykładem zakupu o niewysokiej cenie i istotnym znaczeniu czasu jego realizacji, jakim jest np. kupno kawy na wynos.  

Problem Bitcoina z kupnem kawy 

Bitcoin jest tak zaprojektowany, by zatwierdzać nowe bloki transakcji co 10 minut, zatem kupno kawy za bitcoiny i czekanie aż transakcja zostanie zatwierdzona w łańcuchu potrwa co najmniej tak długo, ponieważ sieć jest w stanie obsłużyć tylko około siedmiu transakcji na sekundę.  

Praktyka wskazuje, że detaliści czekają na nawet sześć zatwierdzeń, aby mieć pewność, że płatność Bitcoinem została sfinalizowana. 

Nikt nie będzie czekał godzinę, by kupić kawę, zatem albo Bitcoin będzie służył jedynie jako środek przechowywania wartości, albo potrzebuje rozwiązania, które pozwoli akceptować mikropłatności bez długotrwałych zatwierdzeń bloku. 

Problem ten znany jest jako trylemat blockchaina, ponieważ jedynym sposobem w jaki Bitcoin mógłby poprawić skalowanie transakcji w odniesieniu do czasu ich zatwierdzenia lub liczby transakcji w bloku, byłoby szybsze zatwierdzanie bloków, albo ich powiększenie, by obejmowały więcej transakcji. Każda z tych opcji stanowi niedopuszczalny kompromis. 

  • Szybsze bloki stanowiłyby zagrożenie dla bezpieczeństwa, ponieważ zwiększałyby szanse na udane ataki 

  • Większe bloki stanowiłyby zagrożenie dla decentralizacji, ponieważ konieczność zwiększenia miejsca na dysku utrudniałaby uruchomienie węzła.  

Wojny bloków 

Dyskusja wokół skalowania zaowocowała wojną bloków. Swój punkt szczytowy wojny osiągnęły pod koniec 2017 roku, kiedy powstał Bitcoin Cash, alternatywna wersja Bitcoina oferująca większe bloki.  

Większość górników głosowała za pozostawieniem dotychczasowych rozmiarów bloku, ale to nie powstrzymało Bitcoin Cash istniejącego niezależnie. Następnie BCH został rozwidlony i powstał Bitcoin SV (w listopadzie 2018 roku), oferując nieograniczony rozmiar bloku. 

W rzeczywistości Bitcoin był rozwidlany ponad 100 razy, ale dominacja oryginalnej waluty dowodzi, że rozwiązanie skalowalności powinno raczej wynikać z budowania na bazie Bitcoina, a nie podejmowania prób jego fundamentalnej zmiany. 

Sieć Lightning 

W 2015 roku Joseph Poon i Thaddeus Dryja opublikowali propozycję rozwiązania skalowalności warstwy 2, budując na bazie istniejącej warstwy ustaleń Bitcoina. Nazwali ją Siecią Lightning.

Sieć Lightning umożliwia tworzenie kanałów płatności typu peer-to-peer poza łańcuchem (zwanych też kanałami stanu), gdzie dwie osoby (nazwiemy je Alice i Bob) mogą błyskawicznie przesyłać sobie mikropłatności po minimalnych kosztach.

Transakcja w łańcuchu, której potwierdzenie trwa 10 minut będzie potrzebna tylko w sytuacji, gdy Alice i Bob zechcą otworzyć lub zamknąć kanał, dodając lub wypłacając środki.

Atrakcyjność Sieci Lightning polega na sposobie, w jaki przesyłane są płatności. Alice nie musi mieć bezpośredniego połączenia kanałowego z Bobem. Środki mogą być przesyłane przez huby Lightning, których płynność wystarcza na obsługiwanie płatności ( w tym kupno kawy), służące tysiącom użytkowników za połączenie pośrednie i czerpiące zyski z opłat transakcyjnych. 

Ethereum i Warstwa 2 

Wojny bloków i aplikacje warstwy 2 takie jak Sieć Lightning poprawiają skalowalność Bitcoina ale zachowują istniejącą metodę konsensusu, czyli Proof of Work. Tymczasem alternatywne algorytmy konsensusu kształtują skalowalność zupełnie inaczej.

Wprowadzone w lipcu 2015 roku Ethereum zaadaptowało Proof of Work, aby umożliwić zatwierdzanie co 13 sekund i podwoić przepustowość Bitcoina. 

Jednak wraz z gwałtownym wzrostem popularności DeFi latem 2020 roku osiągnięto granicę przepustowości, co wywołało wojnę licytacyjną o wielkość bloku, stając w sprzeczności z aspiracjami Ethereum dążącego do otwartości. Ethereum nadal boryka się z tym problemem.

Po wprowadzeniu rozwiązania warstwy 2 za pomocą sieci Lightning, Ethereum zaproponowało sposób łączenia transakcji w pakiety przed złożeniem ich do zatwierdzenia w standardowej procedurze. 

Technologia ta nazywana jest zwijaniem (rollup). Każdy przekazujący transakcje w pakietach korzysta ze zdecydowanie wyższej przepustowości i znacznie niższych opłat.

  • Rollupy optymistyczne 

„Optymistycznie” zakłada się, że transakcje są ważne, ale można je zakwestionować.

  • Rollupy z zerową wiedzą 

Transakcje są przeliczane poza łańcuchem. Następnie skompresowane dane są przekazywane do sieci głównej (Mainnet) Ethereum wraz z dowodami ważności, aby potwierdzić ich legalność. 

Warstwa 0: Pomost między blockchainami 

Kiedy skalowalność blockchaina została rozwiązana poprzez budowanie na warstwie bazowej, interwencji wymagała też niezdolność blockchainów do komunikowania się ze sobą. 

Demokratyczny charakter rozwoju blockchaina oznacza, że obecnie jest wiele łańcuchów warstwy 1, z których każdy oferuje własny sposób użycia i rozwiązania dla trylematu blockchaina. Chcąc zapewnić sobie bezpieczeństwo, blockchainy, budowane jak silosy, są niezdolne do wymiany danych z blockchainami używającymi innych metod konsensusu.

Weryfikowanie transakcji pomiędzy odległymi blockchainami wymaga odhaczenia trzech punktów, zwanych Trylematem Interoperacyjności.

  • Niepoleganie na zaufaniu: równoważne bezpieczeństwo obu łańcuchów 

  • Zdolność do rozbudowy: wsparcie na dowolnej domenie 

  • Możliwość uogólnienia: zdolność do obsługi dowolnych danych pomiędzy domenami 

To utrudnia życie przeciętnemu użytkownikowi krypto, który może np. chcieć zarobić odsetki na Bitcoinie, korzystając z cyfrowej aplikacji opartej na Ethereum. Rozwiązaniem tego problemu są:

  • Pakowanie tokenów (Wrapping tokens) – tworzenie syntetycznych wersji aktywów na bazie stosunku 1:1 np. wBTC 

  • Pomost (Bridge) – scentralizowane/oparte na zaufaniu rozwiązania i zdecentralizowane/nieoparte na zaufaniu opcje 

Pakowanie tokenów i pomost łagodzą niekompatybilność różnych blockchainów warstwy 1. Niemniej opcje zdecentralizowane są obarczone ryzykiem w kwestii bezpieczeństwa, a podejście scentralizowane stanowi zagrożenie dla fundamentalnych celów odpornych na cenzurę systemów płatności.

Alternatywnym rozwiązaniem jest utworzenie głębszej warstwy stosu blockchaina, czyli blockchaina blockchainów (nazywanego też warstwą 0). Lub budowanie łańcuchów działających równolegle. 

Polkadot i Cosmos 

Polkadot i Cosmos to przykłady blockchainów warstwy 0. Oba wspierają tworzenie niezależnych, ale interoperowalnych blockchainów, które są zabezpieczone warstwą fundamentową, czasem nazywanych blockchainami zagnieżdżonymi (nested).  

Łańcuchy boczne 

Pomiędzy warstwą 0 a 1 są łańcuchy boczne działające równolegle do łańcucha głównego, ale mają własny algorytm konsensusu. W kwestii bezpieczeństwa i przetwarzania dużych pakietów transakcji łańcuchy boczne polegają na łańcuchu głównym. Polygon jest przykładem sieci korzystającej z łańcuchów bocznych.

Blockchainy warstwy 0 i sieci korzystające z łańcuchów bocznych oferują potencjalne rozwiązanie bieżącej i przyszłej interoperacyjności blockchainów, ale nie są kompatybilne wstecznie. 

Zatem o ile Polkadot, Cosmos czy inne blockchainy warstwy fundamentowej nie podbiją całego ekosystemu, co wydaje się mało prawdopodobne, biorąc pod uwagę dominację Bitcoina i Ethereum, problem interoperacyjności się utrzyma, dopóki nie pojawią się nowe koncepcje lub technologie.

Co to są warstwy blockchaina? Podsumowanie 

Pod względem technicznym blockchainy można opisać za pomocą pięciu warstw: 

  • Warstwa infrastruktury lub sprzętowej 

  • Warstwa danych 

  • Warstwa sieci 

  • Warstwa konsensusu 

  • Warstwa aplikacji i prezentacji 

Warstwy 0 – 2 często są omawiane przy warstwach blockchaina. Warstwy te pełnią następujące funkcje: 

  • Warstwa 0 – Tworzenie blockchaina i bezpieczeństwo 

  • Warstwa 1 – Warstwa fundamentowa 

  • Warstwa 2 – Warstwa abstrakcji 

Numerowanych warstw blockchainów używa się do przedstawienia stosowanych w nich rozwiązań skalowalności i interoperacyjności.

Warstwa 2 oferuje rozwiązania skalowalności obejmujące: 

  • Sieć Lightning (Bitcoin) 

  • Rollupy (Ethereum) 

Warstwa 0 oferuje rozwiązania interoperacyjności: 

  • Sieci blockchain (Polkadot i Cosmos) 

  • Łańcuchy boczne (Polygon)