ニュース暗号資産イーサリアム、HoodiテストネットでGlamsterdamアップグレードを一時停止 ― ガスルール変更が既存スマートコントラクトに脅威

イーサリアム、HoodiテストネットでGlamsterdamアップグレードを一時停止 ― ガスルール変更が既存スマートコントラクトに脅威

著者: Coincentral·

重要ポイント

  • •ChainSecurityの報告書が8つのスマートコントラクト不変条件を破壊し得るガス価格変更を指摘したことを受け、イーサリアムのGlamsterdamハードフォークはHoodiテストネット上で一時停止された。
  • •提案EIP-8037とEIP-8038は、新しいブロックチェーン状態の作成と既存状態へのアクセスに関するガスコストを変更し、稼働中のコントラクトに埋め込まれた想定を無効にする可能性がある。
  • •延期により10月26日のHoodiアクティベーションは取り消され、Amsterdam実行レイヤーとGloasコンセンサスレイヤーのアップグレード、および2億へのテストネットガス上限引き上げが削除され、メインネットの日程は未定のままとなった。
  • •Marius van der Wijdenを含むイーサリアム財団の開発者は、ChainSecurityとDedaubと連携して内部監査を進めており、開発者と独立系監査人に対し、次回のAll Core Developersミーティング前に調査結果の提出を要請している。
  • •次のアップグレードであるHegotaの作業は並行して継続しており、Glamsterdamの延期の影響は受けていない。
イーサリアム、HoodiテストネットでGlamsterdamアップグレードを一時停止 ― ガスルール変更が既存スマートコントラクトに脅威

イーサリアムのコア開発者は、8つのスマートコントラクト不変条件に関わるセキュリティ上の懸念が解決されるまで、Hoodiテストネット上のGlamsterdamアップグレードを一時停止した。イーサリアム財団は11月6日に公開したブログ記事でこの決定を明らかにした。

LATEST: ⚡ Ethereum developers say they are delaying the Glamsterdam hard fork process and won't fork the Hoodi testnet until gas-repricing issues flagged by ChainSecurity are resolved. pic.twitter.com/7HDv6dZDrc

— CoinMarketCap (@CoinMarketCap) November 6, 2026

不変条件(インバリアント)とは、スマートコントラクトが常に成立することを期待する条件のことである。ガスはイーサリアムが計算作業を計測するために用いる単位であり、稼働中の多くのプロジェクトは特定の操作が固定のガス量で済むと想定している。Glamsterdamに組み込まれる予定の2つの提案はガスの課金方法を変更するものであり、その変更により既存コントラクトに埋め込まれたこうした想定が無効になる可能性がある。これが、今回の価格変更が単なる手数料調整ではなくセキュリティ問題として扱われている理由である。関わるガス量によって、特定のコードパスが実行されるかどうかが決まり得るためだ。

ChainSecurityが発見した内容

懸念の発端は、スマートコントラクト監査会社ChainSecurityの10月13日付報告書である。同社は、外部呼び出しが失敗した後も実行を継続するコントラクトにGlamsterdamがどのような影響を与え得るかを調査した。報告書は、新しいブロックチェーン状態の作成コストを変更するEIP-8037と、既存状態へのアクセス料金を調整するEIP-8038を対象としている。両方とも特定の操作のガス会計を変更するものである。

現在のルールでは、一部のコントラクトは、失敗した操作が次のステップを実行するのに十分なガスを残さないことに依存している。新しいルールでは、開発者がトランザクション全体の巻き戻し(リバート)を期待していた場合でも、特定の操作が完了してしまう可能性がある。これはコントラクトに組み込まれたセーフガードを弱める可能性がある。

ChainSecurityは一つの事例を挙げた。あるコントラクトは、外部呼び出しがガスを使い果たした後にその操作を失敗として記録する。新しいルールでは、これまで到達できなかったガスが再び利用可能となり、コントラクトは恒久的な失敗を記録してしまう可能性がある。

イーサリアム財団は、影響を受ける8つの不変条件を文書化したGitHubリポジトリを公開した。これには解説、事例、開発者が自身のコードを新しいガスルールに対して検証するための具体的な手順が含まれている。これまでに見つかっている最も多い問題は固定ガス予算とガス予約であり、つまりプロトコルレベルの変更が、コントラクト自体を修正することなく、稼働済みコードに潜む想定を顕在化させ得ることを意味する。

その他のリスクには、ガス消費が一方向にのみ動くと想定するコントラクト、固定のガス許容量が十分であり続けると想定するもの、または巻き戻された呼び出しが状態作成に既に消費されたガスを返却できないと想定するものが含まれる。

Hoodiフォークの一時停止

Hoodiのアクティベーションは当初、10月26日17時42分48秒(UTC)に予定されていた。Hoodiはイーサリアムの主要なパブリックテストネットであり、計画されているプロトコル変更は通常、メインネット展開の前にここでリハーサルされる。今回の延期により、Amsterdam実行レイヤーとGloasコンセンサスレイヤーのアクティベーション、およびテストネットガス上限を2億に引き上げる計画がスケジュールから削除された。代替日程は発表されておらず、財団は問題が解決されるまでHoodiフォークは実施しないとしている。メインネットのアクティベーションは通常、パブリックテストネットでのリハーサル後に続くため、Glamsterdamのメインネットへの道筋も同様に未定となっている。

開発者は現在、影響を受けるコントラクトが自身で更新可能か、あるいはアップグレード仕様の変更が必要かを評価している。イーサリアム財団の開発者Marius van der Wijden氏は、財団がChainSecurityとDedaubと連携し、既存アプリケーションへの影響を評価するための内部監査を実施していると述べた。

財団は、その審査ではすべてのプロジェクトを網羅することはできない、特にコントラクトがオフチェーンシステムと連携する場合には困難が伴うと説明している。財団は開発者と独立系監査人に対し、オンチェーンのコントラクトとオフチェーンのツールの双方をレビューするよう要請している。これには、ハードコードされたガス上限を使用している可能性のあるウォレット、リレイヤー、その他のインフラが含まれる。

調査結果は、イーサリアムのクライアントチームと研究者がプロトコル変更を調整する常設の場である次回のAll Core Developersミーティングの前に提出すべきである。報告には、影響を受けたコントラクト、関わる不変条件、可能な修正案、および可能であればテストを記載する必要がある。報告はglamsterdam@ethereum.org宛に非公開で送付できる。フィードバックに基づき、開発者はEIP-8037とEIP-8038を調整する可能性があり、これらのミーティングは、Hoodiフォークをいつ再日程できるかを左右する仕様変更を注視すべきチェックポイントとなる。

Glamsterdamの背景

Glamsterdamは10月6日にSepoliaテストネットで稼働し、開発者は2億ガス上限の下でスケーリング変更のテストを開始した。このアップグレードは、EIP-7732によるエンシュラインド・プロポーザビルダー分離と、EIP-7928によるブロックレベルアクセスリストも追加する。このようなテストネットでのアクティベーションにより、開発者はメインネット展開前にライブ環境でアップグレードの挙動を観察できる。

8月の評価において、財団は過去トランザクションのリプレイにより、ほとんどのスマートコントラクトが価格変更の影響を受けていなかったと述べた。より小規模なグループは、予期しない失敗を避けるために、より高いガス上限またはより大きな変更を必要としていた。

10月26日、開発者はバリデータデポジットの修正もマージした。これは、同一の公開鍵を共有するブロックビルダーにステーキングデポジットが計上され得る不具合に対処するものである。仕様には回帰テストが追加された。

財団によると、次のアップグレードであるHegotaの作業は並行して継続しており、Glamsterdamの延期の影響は受けていない。