Ethereum 2.0, znane również jako Serenity to od dawna wyczekiwana aktualizacja sieci Ethereum, znacząco poprawiająca bezpieczeństwo i skalowalność chyba najpopularniejszego protokołu Blockchain na świecie. Przede wszystkim zmniejszy ona znacząco zużycie energii oraz umożliwi sieci przetwarzanie większej ilości transakcji. Co oznacza to dla zdecentralizowanych aplikacji?
Najważniejszymi usprawnieniami od strony technicznej mają być przekształcenie Ethereum w blockchain typu Proof-of-stake oraz wprowadzenie fragmentarycznych łańcuchów. Należy jednak pamiętać, że są to zmiany tylko w infrastrukturze Ethereum. Użytkownicy, programiści czy właściciele Dapp oraz posiadacze ETH mogą być spokojni. Ethereum 2.0 będzie w pełni kompatybilny z siecią Ethereum 1.0, której używają dzisiaj. Natomiast z posiadanego ETH będą mogli korzystać również po aktualizacji.
Dlaczego więc te zmiany są aż tak ważne? Jak wpłyną one na Twoją aplikacje? Na blogu Nextrope postaramy się przedstawić wszystko co powinieneś wiedzieć o Ethereum 2.0.
Obecne ograniczenia
Wypuszczone w 2015 Ethereum szybko stało się najczęściej używanym protokołem Blockchain (tutaj dowiesz się czym są protokoły blockchain i co je od siebie odróżnia[MM1] ). Otwarty publiczny system pozwolił na powstanie wcześniej niespotykanych aplikacji softwarowych oraz wygenerował miliardów dolarów wartości. Jednak aby w pełni wykorzystać swój potencjał Ethereum musi jeszcze uporać się z kilkoma ograniczeniami.
Szybkość i wydajność:
Obecnie Ethereum jest w stanie obsługiwać około 15 transakcji na sekundę. W porównaniu do Visy czy Mastercard, które są w stanie przetwarzać ich nawet 1500 w tym samym czasie, wypada więc dość blado. Ponadto proces “wydobywania” ETH, na którym oparta jest weryfikacji tych transakcji zużywa zbyt dużo energii, co ogranicza możliwości skalowania całej sieci.
Na czym polega “wydobywanie” ETH?
Wydobywanie to proces tworzenia bloku transakcji, który ma zostać dodany do łańcucha bloków (stąd blockchain) Ethereum. Każdy blok zawiera informacje o transakcjach oraz dane takie jak Hash - unikatowy kod bloku oraz hash poprzedniego bloku do którego hash bloku jest kompatybilny.
Zasadniczo rolą górników jest przetwarzanie oczekujących transakcji w zamian za nagrody w postaci ETH, rodzimej waluty Ethereum (odpowiednio 2 ETH za każdy wygenerowany blok). Wygenerowanie bloku wymaga wykorzystania dużej mocy obliczeniowej, ze względu na poziom trudność ustalany przez protokół Ethereum. Poziom trudności jest proporcjonalny do całkowitej ilości mocy obliczeniowej używanej do wydobywania Ethereum i służy jako sposób na zabezpieczenie sieci przed atakami, a także dostrajania szybkości tworzenia kolejnych bloków. Ten system wykorzystania mocy obliczeniowej w celu zabezpieczenia i weryfikacji danych znany jest jako Proof-of-Work (PoW).
Dla utrzymania bezpieczeństwa obecnej sieci Ethereum konieczna jest więc duża energochłonność procesu wydobywania - dzięki niej koszt ataku na sieć, wprowadzenia jakiejkolwiek zmiany do któregoś z już istniejących bloków jest niezwykle wysoki.
Problem zachowaniem decentralizacji przy konieczności skalowania
Istnieją oczywiście protokły Blockchainy takie jak Hyperledger Fabric czy Quorum pozwalające na obsługę większej ilości transakcji na sekundę. Jednak wyższa wydajność wynika w ich przypadku z większej od Ethereum centralizacji. Z założenia Ethereum ma pozostać siecią w pełni zdecentralizowaną, dlatego takie rozwiązanie w tym przypadku nie wchodzi w grę. Wydaje się twórcy Ethereum 2.0 znaleźli sposób aby poprawić wydajność i umożliwia skalowanie, nie poświęcając decentralizacji.
Co nowego w Ethereum 2.0?
Fragmentaryczne łańcuchy
W tej chwili wszystkie węzły w sieci Ethereum zanim przetworzą nową transakcję muszą pobrać, odczytać, zanalizować i przechowywać każdą poprzednią. Nic więc dziwnego, że Ethereum obecnie nie jest w stanie przetworzyć więcej niż wspomniane 15 transakcji na sekundę.
Ethereum 2.0 wprowadza fragmentaryczne łańcuchy, będące równoległymi łańcuchami blockchain, które przejmują odpowiednią część pracy związanej z przetwarzaniem sieci. Pozwalają one na rozproszenie węzłów w podzbiory odpowiadające fragmentom sieci. Dzięki czemu każdy węzeł nie musi przetwarzać i przechowywać transakcję z całej sieci, a tylko te znajdujące się w jego podzbiorze.
Dowód stawki (Proof-of-stake) w Ethereum 2.0
W Ethereum 2.0 Proof-of-Work ma zostać zastąpiony Proof-of-stake. Zabezpieczenie sieci będzie uzyskiwane poprzez zobowiązania finansowe, a nie zużycie mocy obliczeniowej - energii. Dowód stawki to proces uzyskiwania konsensusu, w ramach którego ETH staje się walidatorem dla Ethereum. Walidator uruchamia oprogramowanie, które potwierdza transakcję i dodaje nowe bloki w łańcuchu. Aby zostać pełnym walidatorem, potrzebne bedzie 32 ETH. Powstanie jednak możliwość dołączenia do puli mniejszych walidatorów i zaoferowania tym samym mniejszej stawki. Przetwarzając transakcje walidatorzy będą dbać o zachowanie konsensusu względem danych, a więc i bezpieczeństwa całej sieci.
Proof-of-stake pozwoli drastycznie ograniczyć energochłonność całej sieci, co stanowi kluczowy krok w kierunku dalszego skalowania Ethereum oraz zwiększa jego przyjazność dla środowiska.
Beacon chain
Decydującą rolę we wprowadzenia dowodu stawki do Ethereum odgrywa Beacon Chain, który w uproszczeniu można określić warstwą koordynującą działanie całego systemu. Jednak w odróżnieniu od obecnej w Ethereum sieci głównej (meinnet) nie obsługuje ona kont ani inteligentnych kontraktów (smart contracts). Natomiast jej głównym zadaniem ma być wprowadzenie zarządzanie protokołem Proof-of-stake dla wszystkich fragmentarycznych łańcuchów (shardów). To właśnie przyłączenie Beacon Chain do Ethereum stanowiło pierwszy krok ku wersji 2.0 (phase 0).
Ethereum 2.0, co przyniesie 2021?
Wprowadzenie Ethereum 2.0 twórcy podzieli na 3 etapy - fazy: Phase 0, 1 i 2. W grudniu 2020 roku zakończyła się rozpoczęta w 2018 pierwsza z nich. Jak wspomnieliśmy jej głównym celem było uruchomienia Beacon chain. Sukces fazy 0 pozwoli na rozpoczęcie w 2021 fazy 1 - wdrożenia łańcuchów odłamków, które rozpocznie pełnoprawne przejście na protokół Proof-of-stake. Pełną aktualizacje do Ethereum 2.0 umożliwi faza 2 zaplanowana na przełom 2021 i 2022 roku, to właśnie wtedy łańcuchy odłamków powinny zacząć obsługiwać wszystkie kontrakty i transakcje.
Jak kolejne fazy implikacji Ethereum 2.0 mogą wpłynąć na ceny ETH? Do tego pytanie z pewnością wrócimy jeszcze na blogu.