AktualnościKryptoEthereum wstrzymuje aktywację Glamsterdam na testnecie Hoodi – niektóre kontrakty zagrożone

Ethereum wstrzymuje aktywację Glamsterdam na testnecie Hoodi – niektóre kontrakty zagrożone

Autor: Coindoo·

Najważniejsze informacje

  • •Deweloperzy Ethereum wstrzymali aktywację Glamsterdam zaplanowaną na 26 października na testnecie Hoodi, usuwając zarówno forki Amsterdam w warstwie wykonawczej i Gloas w warstwie konsensusu, jak i planowany wzrost limitu gazu do 200 milionów.
  • •EIP-8037 podnosi koszt stanowy nowego slotu pamięci z 20 000 do 97 920 gazu, a nowego konta z 25 000 do 183 600, aby spowolnić wzrost stanu, który jego autorzy szacują, że mógłby przekroczyć 650 GiB w ciągu roku przy limicie 200 milionów gazu.
  • •Analiza ChainSecurity z 13 października ostrzegała, że nowe zasady mogą umożliwić ataki insufficient gas griefing — zbiornik lub uzupełniony gaz może pozwolić handlerom awarii trwale zapisywać nieudane wywołania — a zimny zapis do pamięci może kosztować około dziewięć razy więcej gazu wykonawczego przy pustym zbiorniku.
  • •Operatorzy Hoodi muszą zaktualizować klienty wykoncze i konsensus przed 26 października, używając wydań, których notki wprost potwierdzają usunięcie starej aktywacji, podczas gdy Ethereum Foundation stwierdza, że użytkownicy mainnetu i posiadacze ETH nie muszą działać.
  • •Nie ustalono nowej daty Hoodi ani daty aktywacji na mainnecie, a przegląd Last Call EIP-8037 — ostatnie okno przed finalizacją propozycji — kończy się 1 listopada.
Ethereum wstrzymuje aktywację Glamsterdam na testnecie Hoodi – niektóre kontrakty zagrożone

Deweloperzy Ethereum wstrzymali aktywację uaktualnienia Glamsterdam na testnecie Hoodi z powodu obaw o zachowanie już wdrożonych kontraktów inteligentnych w świetle nowych zasad wyceny gazu. Decyzja zapadła podczas posiedzenia All Core Devs Execution #248, jak poinformowało Ethereum Foundation w ogłoszeniu z 22 października.

Kluczowe punkty decyzji:

  • Koszt stanowy nowego slotu pamięci rośnie z 20 000 do 97 920 gazu.
  • Planowany wzrost limitu gazu Hoodi do 200M również został usunięty.
  • Nie ustalono daty aktywacji Glamsterdam na mainnecie.
  • Przegląd Last Call EIP-8037 kończy się 1 listopada.

Ostatni krok testnetu przed mainnetem został wstrzymany

Glamsterdam miał zostać aktywowany na Hoodi 26 października o 17:42:48 UTC. Przełożenie usuwa zarówno aktywację Amsterdam w warstwie wykonawczej, jak i Gloas w warstwie konsensusu — dwie części uaktualnienia — wraz z harmonogramem, który w tym samym czasie podniósłby limit gazu Hoodi do 200 milionów. Zmienia to przyszłą konfigurację testnetu bez cofania jego historii, a zamiennik terminu nie został ustalony.

Podczas Fusaka, poprzedniego uaktualnienia, Hoodi był trzecim i ostatnim testnetem forykowanym przed mainnetem, a Foundation mówiło, że mainnet nastąpi co najmniej 30 dni później, według The Block. W tamtym wdrożeniu ostatni fork testnetu był ostatnim publicznym punktem kontrolnym przed mainnetem. Glamsterdam przeszedł już próbę generalną z lim 200 milionów gazu na Sepolii, gdzie poprawka polegała na aktualizacji Prysm dotyczącej domyślnych ustawień walidatorów — problem konfiguracji klienta. Tym razem pytanie brzmi, jak zachowają się już wdrożone kontrakty. Foundation nie ustaliło daty Glamsterdam na mainnecie i stwierdza, że użytkownicy mainnetu oraz posiadacze ETH nie muszą podejmować żadnych działań.

Wzrost ceny stanu, który zwiększa zużycie gazu wykonawczego przy niektórych zapisach

EIP-8037 ma na celu spowolnienie wzrostu stanu Ethereum — danych, które każdy węzeł musi przechowywać. Jego autorzy oszacowali stan na około 390 GiB w styczniu 2026. Szacują, że przy obecnych cenach limit 200 milionów gazu mógłby przekroczyć 650 GiB — poziom, przy którym węzły zaczynają zwalniać — w mniej niż rok. Ich odpowiedzią jest opłata 1 530 gazu za bajt nowego stanu, co podnosi koszt stanowy nowego slotu pamięci z 20 000 gazu do 97 920, a nowego konta z 25 000 do 183 600.

Aby duże wdrożenia kontraktów pozostały możliwe, propozycja dzieli gaz na dwie pule. Gaz wykonawczy pokrywa obliczenia, a gaz stanowy — nową pamięć. Każdy gaz dostarczony przez transakcję powyżej 16 777 216 trafia do osobnego zbiornika gazu stanowego, z którego najpierw czerpane są opłaty stanowe. Zbiornik ten jest przekazywany w całości do każdego sub-call, a kontrakty nie widzą go poprzez standardowy odczyt gasleft().

Gaz wykonawczy wymagany przy zimnym zapisie do nowego slotu pamięci, według ChainSecurity, na podstawie danych EIP-8037 i EIP-8038:

  • Dziś: 22 100
  • Glamsterdam, zbiornik pokrywa opłatę stanową 97 920: 12 100
  • Glamsterdam, zbiornik pusty: 110 020

Innymi słowy, identyczny zimny zapis może kosztować około dziewięć razy więcej gazu wykonawczego przy pustym zbiorniku niż wtedy, gdy zbiornik pokrywa opłatę stanową.

Gaz może również wracać podczas wykonania. Wyczyszczenie slotu utworzonego wcześniej w tej samej transakcji natychmiast uzupełnia do 97 920 gazu, a sub-call, który się cofa (revert), może oddać zapłacone opaty stanowe. Widoczny stan gazu kontraktu może więc wzrosnąć w trakcie wykonania. EIP ostrzega, że kontrakty mierzące pracę jako różnicę dwóch odczytów gazu mogą uzyskać wynik ujemny, a kontraktów już wdrożonych z takim projektem nie da się naprawić.

Jak atakujący mógłby wykorzystać nowe zasady

Firma bezpieczeństwa ChainSecurity opisała ryzyko w analizie z 13 października. Kontrakty często przechwytują nieudane wywołanie i zapisują wynik, co pozwala złośliwemu wywołującemu celowo dostarczyć zbyt mało gazu, tak aby poprawna operacja się nie powiodła, a kontrakt wciąż miał wystarczająco gazu, by zapisać ten niepowodzenie. Technika ta jest znana jako insufficient gas griefing i może trwale zablokować ponowną próbę lub usunąć roszczenie użytkownika.

Dla kontraktów, które polegają na wyczerpaniu gazu samego handlera awarii:

  • Krok 1: Atakujący wysyła wywołanie z zbyt małą ilością gazu.
  • Krok 2: Operacja docelowa kończy się gazem.
  • Dziś: Handler również się kończy, wszystko ulega cofnięciu i użytkownik może spróbować ponownie.
  • Glamsterdam: Zbiornik lub uzupełniony gaz pozwala handlerowi dokończyć działanie i trwale zapisać niepowodzenie.

Kontrakty sprawdzające pozostały gaz po nieudanym wywołaniu mogą zostać oszukane, gdy uzupełnienia lub cofający się pośrednik podniosą stan powyżej ich progu. Stałe budżety gazu również mogą być niewystarczające, ponieważ EIP-8038 podnosi koszt dotknięcia istniejącego stanu: pierwsza zmiana istniejącego ciepłego slotu rośnie z 2 900 gazu do 10 100.

Nie każda obrona zawodzi. ChainSecurity stwierdza, że sprawdzenie wykonane przed wywołaniem wciąż gwarantuje dostarczenie żądanego gazu, o ile budżet pokrywa każdą ścieżkę wykonania według nowych cen bez liczenia na zbiornik. Firma odradza poleganie na jakichkolwiek kontrolach gazu po wywołaniu. Ogłoszenie Foundation wymienia tylko EIP-8037 i nie przywołuje pracy firmy, która obejmuje również EIP-8038.

Co operatorzy i deweloperzy muszą zrobić

Operatorzy Hoodi muszą zaktualizować klienty wykonawcze i konsensus przed 26 października, używając wydań, których notki wprost potwierdz usunięcie starej aktywacji. Tabele wersji z pierwotnego ogłoszenia nie stanowią potwierdzenia. Na dzień 23 października Foundation wymieniło zaktualizowane wydania dla dwóch klientów i oświadczyło, że kolejne zostaną dodane po potwierdzeniu.

Walidatorzy muszą zaktualizować zarówno węzeł beacon, jak i klienta walidatora, a każdy prowadzący zewnętrzną infrastrukturę budowania bloków powinien stosować się do instrukcji swojego dostawcy. Zespoły aplikacji powinny przestać planować testy Hoodi wokół pierwotnej daty.

Dla deweloperów kontraktów lista kontrolna ChainSecurity zaczyna się od każdego wywołania, które pozwala kontynuować wykonanie po niepowodzeniu. Obejmuje ona śledzenie pełnej ścieżki, w tym proxy; wyszukiwanie slotów ustawianych i czyszczonych w tej samej transakcji oraz pośredników, którzy się cofają; ponowne sprawdzenie stałych budżetów; oraz wymuszanie niepowodzeń sub-callów i porównanie wyników w obu zestawach zasad. Gdy to możliwe, nieudane wywołanie powinno cofnąć całą operację. Portfele i oprogramowanie węzłów muszą również zaktualizować szacowanie gazu dla modelu dwupulowego, zgodnie z EIP.

Kolejne decyzje należą do deweloperów core. Przegląd Last Call EIP-8037 — ostatnie okno przeglądu przed finalizacją propozycji w procesie Ethereum — kończy się 1 listopada, dochodzenie może doprowadzić do zmian w specyfikacji, a nowa data Hoodi zostanie ustalona na przyszłym spotkaniu.

Niniejszy artykuł ma charakter wyłącznie informacyjny i nie stanowi porady finansowej ani inwestycyjnej. Harmonogramy uaktualnień Ethereum i specyfikacje techniczne mogą ulec zmianie podczas testów.

Źródło: Coindoo