Ethereum opóźnia Glamsterdam po luce
Aktualizacja Glamsterdam nie trafi na Hoodi w planowanym terminie. Powodem są ryzyka związane ze zmianami gas i smart contractami.
Ethereum wstrzymuje Glamsterdam na Hoodi
Planowane na 26 października uruchomienie hard forka Glamsterdam na testnecie Hoodi zostało odłożone bez wskazania nowej daty. To kolejny sygnał, że zespół Ethereum chce dokładniej przeanalizować wpływ zmian w modelu gas na już działające smart contracty.
Decyzja zapadła po tym, jak badacze bezpieczeństwa zwrócili uwagę na możliwe ryzyka związane z nowymi zasadami rozliczania gas. Hoodi jest siecią testową, która służy jako ostatnia próba generalna przed wdrożeniem aktualizacji do głównej sieci.
Co budzi obawy wokół EIP-8037
Najwięcej dyskusji wywołuje EIP-8037, które zmienia sposób naliczania gas związanego ze stanem sieci. Celem propozycji jest ograniczenie wzrostu rozmiaru stanu Ethereum, czyli danych, które każdy węzeł musi przechowywać na stałe.
W praktyce nowe zasady oznaczają wyraźnie wyższy koszt dla operacji zapisujących dane w stanie sieci. Zmienia się też sposób, w jaki gas może wracać do kontraktu w trakcie wykonywania transakcji. I właśnie ten mechanizm może wpływać na zachowanie już istniejących smart contractów.
Według analiz bezpieczeństwa problem dotyczy sytuacji, w których kontrakt obsługuje nieudaną operację, a następnie korzysta z kodu awaryjnego lub próbuje ponownie wykonać część działań. Przy nowych regułach gas taki scenariusz może przebiec inaczej niż dotychczas.
13 realnych przypadków i ryzyko dla kontraktów
Firma zajmująca się audytem bezpieczeństwa wskazała 13 rzeczywistych przykładów kontraktów, które mogą być podatne na skutki zmian. Projekty objęte analizą nie zostały ujawnione, ale prowadzone są z nimi działania w ramach odpowiedzialnego ujawniania informacji.
Zagrożenie dotyczy zwłaszcza mechanizmu znanego jako insufficient gas griefing. W takim ataku złośliwy użytkownik lub kontrakt przekazuje zbyt mało gas, aby doprowadzić operację do końca. Do tej pory część projektów mogła polegać na tym, że transakcja po prostu się wywróci i będzie można spróbować ponownie. Po zmianach niektóre nieudane operacje mogą zostać zapisane jako ostateczne niepowodzenie.
To oznacza, że użytkownik może stracić możliwość ponowienia próby, a kontrakt może usunąć dane związane z roszczeniem albo wyłączyć opcję dalszego przetwarzania takiej akcji.
Głos deweloperów: ostrożność zamiast pośpiechu
Wstrzymanie wdrożenia na Hoodi nie oznacza jeszcze problemu z samym mainnetem, ale pokazuje, że deweloperzy wolą najpierw sprawdzić wszystkie możliwe skutki zmian. Zespół Ethereum uznał, że potrzebuje więcej czasu na ocenę interakcji nowych zasad gas ze smart contractami już działającymi w sieci.
Aktualizacja Glamsterdam była wcześniej testowana na Sepolii, gdzie została uruchomiona 6 października. Hoodi miał być kolejnym etapem przed podjęciem decyzji o terminie wdrożenia na mainnet. Po przesunięciu tego kroku harmonogram całego forkowania stał się mniej pewny.
Co dalej z harmonogramem Ethereum
Na ten moment nie podano nowego terminu dla Hoodi, a tym samym nie ma też pewności co do daty wejścia Glamsterdam na mainnet. Wcześniej brano pod uwagę początek grudnia, ale te plany zależą od wyniku kolejnych testów i oceny ryzyk związanych z nowym modelem gas.
Dla użytkowników Ethereum nie oznacza to żadnej natychmiastowej akcji, ale dla twórców aplikacji i operatorów kontraktów to wyraźny sygnał, że warto sprawdzić, czy ich rozwiązania nie opierają się na założeniach, które mogą przestać być aktualne po wdrożeniu EIP-8037.