Czym jest Ethereum Plasma?

17.12.2018

uploads/2IiXM40dAPOeI5B5Kvmf.png

Jednym z głównych problemów z którymi boryka się obecnie sieć blockchain Ethereum jest tzw. skalowalność. Na dzień dzisiejszy sieć nie jest w stanie zostać zaadaptowana w większej (czyt. globalnej) skali biorąc pod uwagę jej ograniczenia pod względem pojemności oraz szybkości działania. 

Plasma, a więc koncept mający rozwiązać problem skalowalności sieci Ethereum został zaproponowany przez współtwórcę tej kryptowaluty Vitalika Buterina oraz Josepha Poona w Sierpniu 2017 roku. Joseph Poon odpowiedzialny był za stworzenie koncepcji Lightning Network w 2015 roku dla sieci Bitcoin nad którą pracował razem z Thaddeusem Dryja. 

Chociaż Plasma i Lightning Network zostały zaproponowane jako rozwiązania pozwalające zmierzyć się i rozwiązać problem skalowalności, każda z tych koncepcji opiera się na własnych mechanizmach i cechach szczególnych, które odróżniają jedną od drugiej.

Artykuł ten posłuży jako krótkie wprowadzenie i wyjaśnienie koncepcji Plasma w sieci Ethereum. W tym miejscu należy jednak zwrócić uwagę na fakt, że Plasma nie jest jedynie projektem, a technologią umożliwiającą skalowanie sieci poza jej głównym łańcuchem (ang. off-chain) oraz frameworkiem służącym do budowania skalowalnych aplikacji, które mogą być realizowane i wykorzystywane w różny sposób przez różne grupy badawcze lub firmy.

 

Jak dokładnie działa Plasma?

Plasma w głównej mierze polega na stworzeniu sieci łańcuchów bocznych (ang. side chains), które tworzone są w celu ograniczenia ruchu w głównym łańcuchu (w tym przypadku łańcuchu sieci Ethereum), a które komunikują się z nim i wchodzą z nim w interakcje tak rzadko jak to tylko możliwe. Framework Plasma zaprojektowany jest aby działać jak (dosłownie) drzewo blockchain, które ułożone jest hierarchicznie, a w którym wiele mniejszych łańcuchów może zostać utworzonych w ramach głównego łańcucha. Mniejsze łańcuchy nazywane są Plasma chains lub child chains (dosłownie, pol. Łańcuchy potomne)

Plasma skonstruowana jest w głównej mierze z inteligentnych kontraktów (ang. smart contracts) oraz Drzew Merkle (ang. Merkle trees), dzięki czemu możliwym staje się stworzenie nieograniczonej wręcz ilości child chainów - które co do zasady są mniejszymi kopiami głównego łańcucha sieci blockchain Ethereum. Co więcej, na bazie każdego z child chains możliwe jest stworzenie kolejnych łańcuchów. Analogia do drzewa na którym wyrasta gałęzi na gałęziach jest tutaj jak najbardziej prawidłowa.

Ogólnie rzecz ujmując, każdy z łańcuchów typu child chain jest tak naprawdę odpowiednio skonstruowanym inteligentnym kontraktem. Każdy z tych kontraktów (a co za tym idzie Plasma chainów) może funkcjonować w inny sposób i spełniać potrzeby niż pozostałe łańcuchy. Oznacza to, że łańcuchy mogą istnieć i funkcjonować niezależnie od siebie, ale mogą również ze sobą współpracować. Docelowo Plasma umożliwi właścicielom biznesów oraz firmom wdrażanie skalowalnych rozwiązań na różne, odpowiednie dla nich sposoby, zgodnie z ich specyficznymi potrzebami oraz biorąc pod uwagę kontekst ich interesu.

W momencie gdy prace nad technologią Plasma zostaną zakończone i zostanie ona wdrożona do sieci Ethereum, główny łańcuch sieci ETH automatycznie stanie się mniej narażony na zatory i spowolnienie, ponieważ każdy z child chainów zostanie zaprojektowany do pracy w określony sposób na poczet z góry określonych celów - które niekoniecznie są powiązane z celami głównego łańcucha. Ziszczenie się takiego scenariusza w konsekwencji sprawi, że Plasma chains dosłownie “odblokują” główny łańcuch.

 

Ochrona przed nadużyciami (ang. Fraud proofs)

Komunikacja między łańcuchami potomnymi, a łańcuchem głównym zabezpieczana jest mechanizmem tzw. Fraud proofs, który sprawia, że odpowiedzialność za utrzymanie bezpieczeństwa całej sieci i karanie osób (lub łańcuchów) negatywnie wpływających na pracę całej sieci stoi po stronie głównego łańcucha.

Każdy z Plasma chains wykorzystuje wybrany przez siebie mechanizm walidowania bloków, który może zostać oparty na bazie różnych algorytmów konsensusu. Najpopularniejszymi algorytmami są Proof of Work (pol. Dowód Pracy), Proof of Stake (pol. Dowód Stawki) oraz Proof of Authority (pol. Dowód Tożsamości).

Mechanizm Fraud proofs daje każdemu użytkownikowi Plasma chainów możliwość do zgłoszenia potencjalnie podejrzanych lub złośliwych aktywności, węzłów lub transakcji w celu ochrony własnych środków, a co skutkuje zakończeniem transakcji i wejściem w interakcję z głównym łańcuchem. Innymi słowy, Fraud proofs umożliwiają każdemu z uczestników Plasma chains dosłownie złożenie skargi, która w zależności od poziomu trafia do nadrzędnego łańcucha (ang. parent chain) lub głównego łańcucha (ang. Root chain). 


MapReduce

Plasma wykorzystuje również interesujący zestaw funkcji, który w dokumencie technicznym opisującym Plasmę (ang. whitepaper) nazwany został MapReduce computations.  Zasadniczo MapReduce to zestaw funkcji, które są bardzo przydatne w organizowaniu i przetwarzaniu danych z wielu baz danych.

W kontekście technologii Plasma, bazy danych to łańcuchy bloków. “Drzewiasta” struktura łańcuchów pozwala zastosować MapReduce jako sposób ułatwiający weryfikację danych, co znacznie zwiększa efektywność sieci.


Problem masowego usuwania łańcuchów (ang. Mass Exit problem)

Jednym z głównych problemów związanych z funkcjonowaniem Plasmy jest tzw. Mass Exit problem, który odnosi się do scenariusza, w którym wielu użytkowników jednocześnie podejmuje się zamknięcia swoich Plasma chain dosłownie zalewając informacjami łańcuch główny i powodując ogromne przeciążenie sieci. Taka sytuacja może wystąpić w ramach zaplanowanej, nieuczciwej aktywności, ataku sieciowego lub jakiejkolwiek innej krytycznej usterki, która może nagle pojawić się (czyt. Zostać wykryta) w jednym z Plasma chainów lub grupie takich łańcuchów. 


Wnioski

Plasma, to zasadniczo rozwiązanie problemu skalowalności, które działa poza łańcuchem głównym, a które dąży do znacznego zwiększenia ogólnej wydajności sieci Ethereum. W tym celu Plasma tworzy “drzewo”, które złożone jest z wielu mniejszych, kilku większych i jednego głównego łańcucha będącego podstawą wszystkich. Taka konstrukcja jest w stanie znacząco usprawnić działanie głównej sieci, który dzięki odciążeniu i przeniesieniu odpowiedzialności za określone czynności (czyt. interakcje) na inne łańcuchy byłby w stanie obsłużyć więcej transakcji na sekundę.

Hierarchiczny model połączonych ze sobą łańcuchów bloków zaproponowany w Plasmie ma ogromny potencjał i podlega obecnie testom przez liczne grupy badawcze. Przy założeniu odpowiedniego rozwoju Plasma potencjalnie jest w stanie zwiększyć efektywność głównego łańcucha sieci Ethereum oraz zapewnić lepsze ramy na polu wdrażania prostych i szybkich zdecentralizowanych aplikacji. Co więcej, pomysł może zostać zaadaptowany i wdrożony również przez inne sieci (czyt. kryptowaluty), które mogą sięgnąć po Plasmę aby uniknąć problemów skalowalności w przyszłości.

Ethereum Plasma jest otwartoźródłowym projektem (ang. Open-source project), którego publiczne repozytorium zawierające m.in kod oraz dokumentację dostępne jest na GitHubie. Nad rozwojem i testami technologii Plasma poza Ethereum pracuje obecnie wiele innych projektów kryptowalut w ramach głównego repozytorium kodu lub własnych repozytoriów. Wybrane z projektów wykorzystujące lub wspomagające rozwój Plasmy: OmiseGO, Loom Network oraz FourthStateLabs. Więcej informacji na temat zasad działania Plasmy oraz jej założeń dostępnych jest w jej whitepaperze oraz na stronie LearnPlasma.

Śledź Binance Academy na bieżąco aby stale poszerzać swoją wiedzę i lepiej poznawać świat kryptowalut i technologii blockchain.

Loading