Ethereum отложил активацию Glamsterdam в тестовой сети Hoodi после предупреждения исследователей безопасности о риске для существующих контрактов
Ключевые выводы
- •Разработчики Ethereum отменили активацию Glamsterdam в тестовой сети Hoodi, запланированную на 26 октября, после того как анализ ChainSecurity вызвал опасения относительно предлагаемых правил газа.
- •В рамках EIP-8037 и EIP-8038 возврат газа за отмененные изменения состояния может оставить контрактам достаточно газа для завершения процедур обработки сбоев, превращая ошибки, задуманные как временные, в постоянные записи в блокчейне.
- •По оценке ChainSecurity, создание нового слота хранения по предложениям может стоить 110 020 газа по сравнению с текущими 22 100, что потенциально может привести к превышению существующих бюджетов газа при выполнении в остальном корректных операций.
- •Новая дата не назначена ни для теста в Hoodi, ни для запланированного увеличения лимита газа до 200 миллионов, ни для активации в основной сети — ожидается исследование на будущих собраниях All Core Devs.
- •Glamsterdam уже завершил активацию в тестовой сети Sepolia 6 октября и включает новую систему выбора создателей блоков, а также изменения в поддержку более крупных блоков.

Ethereum отложил активацию Glamsterdam в тестовой сети Hoodi после предупреждения исследователей безопасности о риске для существующих контрактов
Разработчики отменили активацию, запланированную на понедельник, после того как ChainSecurity показала, как предлагаемые правила газа могут позволить смарт-контрактам навсегда записывать сбои.
Разработчики Ethereum отложили обновление Glamsterdam в тестовой сети Hoodi после того, как исследователи по безопасности обнаружили, что предлагаемые изменения учета газа могут изменить поведение существующих смарт-контрактов при обработке неудачных транзакций — в некоторых случаях позволяя ошибкам навсегда закрепиться в блокчейне.
Активация обновления была запланирована на понедельник, 26 октября, в 17:42:48 UTC. Решение об отсрочке было принято на четверговом собрании All Core Devs Execution, где разработчики договорились сначала изучить, как предлагаемые изменения взаимодействуют с контрактами, уже работающими в основной сети Ethereum. Новая дата для теста в Hoodi или для запланированного увеличения лимита газа до 200 миллионов не объявлена, а сроки обновления основной сети остаются неподтвержденными.
Hoodi — одна из публичных тестовых сетей Ethereum, среды, где предстоящие обновления работают на том же клиентском ПО, что и основная сеть, до того, как будут задействованы реальные средства. Выявление подобных непредвиденных взаимодействий — именно то, для чего существует этап репетиции, позволяющий обнаружить проблемы до того, как изменения достигнут основной сети.
Что обнаружили исследователи
Проблема связана с EIP-8037, который меняет порядок оплаты за создание новых записей в базе данных состояния Ethereum. Предложение призвано ограничить рост этой базы данных по мере увеличения числа транзакций, которые сеть способна обрабатывать.
Компания безопасности ChainSecurity опубликовала анализ предложений 13 октября, показав, что это изменение в сочетании с EIP-8038 может изменить поведение контрактов, когда вызванный ими контракт исчерпывает газ — ресурс, используемый для оплаты вычислений операторам сети.
Некоторые смарт-контракты спроектированы так, чтобы перехватывать неудачную операцию и продолжать работу. Они могут записать факт неудачной попытки, отключить дальнейшие попытки или перейти к другому шагу. Разработчики иногда полагаются на то, что оставшегося газа будет слишком мало для завершения этих действий, из-за чего вся транзакция отменяется.
Glamsterdam меняет этот расчет. Согласно предлагаемым правилам, газ, израсходованный на создание определенных записей, может быть возвращен при отмене этих изменений. Это может оставить контракту достаточно газа для завершения процедуры обработки сбоя, которая ранее исчерпала бы газ и отменилась — то есть ошибка, которую разработчик предполагал временной, могла бы стать постоянной. Поскольку развернутые контракты, как правило, нельзя переписать задним числом, такие изменения поведения приходится устранять в самом протоколе, а не в коде приложений.
ChainSecurity также выявила риск в противоположном направлении. По расчетам компании, создание нового слота хранения — базовой единицы данных контракта в блокчейне — может потребовать 110 020 газа после исчер отдельной квоты по сравнению с 22 100 по действующим правилам. Контракт, работающий в рамках существующего бюджета газа, может, таким образом, дать сбой при выполнении в остальном корректной операции.
Результаты касаются того, как существующее ПО будет вести себя при предлагаемых правилах. ChainSecurity продемонстрировала механизмы, но не установила публично, что какой-либо крупный производственный протокол уязвим. В основной сети Ethereum нет подтвержденной даты активации Glamsterdam, и результаты не указывают на то, что существующие контракты в настоящее время эксплуатируются через предлагаемые изменения.
Текущее положение Glamsterdam
Glamsterdam приносит Ethereum ряд изменений, включая новую систему выбора создателей блоков и улучшения, призванные позволить сети обрабатывать более крупные блоки. Обновление завершило активацию в тестовой сети Sepolia 6 октября. Hoodi должна была стать следующей публичной репетицией наряду с запланированным увеличением лимита газа тестовой сети до 200 миллионов — этот шаг также теперь отложен.
Поскольку новая дата не назначена, график теперь зависит от согласованного исследования взаимодействия предложений с развернутыми контрактами. Пересмотренные сроки активации Hoodi или обновления основной сети будут определены на будущих собраниях All Core Devs — на том же форуме, где на этой неделе было принято решение об отсрочке.
Эта статья основана на материале, впервые опубликованном CoinDesk: Ethereum delays Glamsterdam test after security devs flag risk to existing contracts. Полный анализ ChainSecurity доступен здесь.