Et si une simple modification du prix du gas pouvait transformer un échec temporaire en perte définitive pour des milliers d’utilisateurs DeFi ? C’est exactement le scénario qui a fait reculer les développeurs d’Ethereum cette semaine. Prévue pour lundi 26 octobre sur le réseau de test Hoodi, l’activation de Glamsterdam a été purement et simplement annulée. Aucune nouvelle date n’a été annoncée. Derrière ce freinage d’urgence se cache l’EIP-8037, une proposition qui redéfinit en profondeur le coût de l’espace de stockage sur la blockchain. Et selon le cabinet ChainSecurity, au moins treize contrats déjà déployés sur le mainnet pourraient voir leur logique de gestion d’erreur détournée par un attaquant malveillant.
Pourquoi Glamsterdam S’arrête Net Sur Hoodi
Depuis le début du mois d’octobre, Glamsterdam avançait sans accroc sur les différents réseaux de test. Sepolia tournait déjà avec des blocs gonflés à 200 millions de gas. Tout semblait prêt pour la répétition générale sur Hoodi, étape critique avant le passage en production. Pourtant, lors de l’appel ACDE numéro 248, les core developers ont décidé de tout remettre à plus tard. Leur priorité : mesurer avec précision les effets de l’EIP-8037 sur les contrats intelligents déjà en production.
L’annonce officielle de la Fondation Ethereum reste laconique. Elle mentionne simplement la nécessité d’examiner « les interactions de l’EIP-8037 avec les contrats intelligents du mainnet ». Derrière cette formulation sobre se cache une vraie inquiétude. Le hard fork concernait à la fois la couche d’exécution (Amsterdam) et la couche de consensus (Gloas). Les deux ont été gelés ensemble. L’historique de Hoodi reste intact, mais les opérateurs de nœuds doivent déjà installer des versions qui retirent l’activation prévue le 26 octobre. Lodestar v1.50.1 et Besu 26.10.1 figurent parmi les premières versions confirmées.
Aucune action n’est demandée aux utilisateurs du mainnet ni aux détenteurs d’ether. C’est un soulagement relatif. Car si le testnet peut attendre, le calendrier du mainnet, lui, commence déjà à glisser. Trois fenêtres étaient encore évoquées entre le 1er et le 9 décembre. Le choix définitif devait intervenir la semaine suivante, à condition que Hoodi se passe bien. Ce n’est plus le cas.
Ce Que Change Vraiment L’EIP-8037
L’EIP-8037 s’attaque à un problème structurel d’Ethereum : le gonflement de l’état. Chaque compte, chaque donnée stockée doit être conservée par tous les nœuds de façon permanente. Pour freiner cette croissance, la proposition fixe à 1 530 unités de gas le prix de chaque octet d’état créé. L’objectif affiché est de limiter la croissance annuelle à environ 120 Gio avec une limite de 150 millions de gas par bloc.
Les chiffres parlent d’eux-mêmes. Écrire dans un emplacement de stockage vierge coûtera désormais 97 920 gas, contre 20 000 aujourd’hui. Créer un compte passera de 25 000 à 183 600 gas. Ces coûts ne sont plus traités comme le gas d’exécution classique. Ils sont comptabilisés dans un réservoir de gas d’état propre à chaque transaction. Et ce réservoir voyage intégralement lors des appels entre contrats.
C’est là que le bas blesse. La règle des 63/64, qui force un contrat appelant à conserver au moins un soixante-quatrième de son gas pour terminer son travail, ne s’applique qu’au gas d’exécution. Le gas d’état, lui, est transmis en totalité. De plus, libérer un emplacement de stockage rempli plus tôt dans la même transaction rend immédiatement du gas, jusqu’à 97 920 unités selon les calculs de ChainSecurity. Autant dire que le comportement des contrats peut changer radicalement sans qu’une seule ligne de code ait été modifiée.
Les chiffres clés de l’EIP-8037
- 1 530 gas par octet d’état créé
- 97 920 gas pour un emplacement de stockage vierge (contre 20 000 aujourd’hui)
- 183 600 gas pour la création d’un compte (contre 25 000)
- Objectif : 120 Gio de croissance annuelle maximale
Treize Contrats Pris Au Piège
Beaucoup de protocoles DeFi reposent sur un schéma simple : un contrat en appelle un autre, intercepte l’éventuel échec et poursuit son exécution. Un retrait groupé qui échoue peut ainsi être marqué comme raté ou rester en attente d’une nouvelle tentative. Jusqu’ici, un attaquant qui fournissait volontairement trop peu de gas faisait tout capoter. L’appel interne tombait en panne sèche et il ne restait pas assez de gas au contrat appelant pour exécuter son code de secours. Toute la transaction était annulée. L’utilisateur pouvait retenter sa chance.
Avec Glamsterdam, le gas qui revient par le réservoir d’état ou par la libération de stockage peut suffire à faire tourner ce code de secours jusqu’au bout. L’opération est alors inscrite comme un échec définitif. Plus de nouvelle tentative possible. Même sans modifier le code d’un contrat, un chemin d’échec qui annulait auparavant peut désormais aller jusqu’à son terme. C’est le constat sans appel de ChainSecurity dans son analyse du 13 octobre.
Même sans modifier le code d’un contrat, un chemin d’échec qui annulait auparavant peut désormais aller au bout.
ChainSecurity, analyse du 13 octobre
Le cabinet zurichois a ensuite annoncé sur X avoir identifié treize exemples concrets. Il prévient discrètement les projets concernés, sans les nommer publiquement. L’analyste Christine Kim a directement relié l’annulation sur Hoodi à ces découvertes. La Fondation Ethereum avait pourtant anticipé une partie du risque. Dès le 24 août, elle avait publié un outil de repérage des contrats exposés aux nouveaux prix du gas, surtout centré sur les montants de gas codés en dur. Manifestement, cela n’a pas suffi.
Les Conséquences Pour Le Calendrier Ethereum
Le report de Hoodi n’est pas anodin. Chaque semaine perdue sur le testnet fait glisser la préparation du fork suivant, Hegotá. Sepolia tourne déjà avec Glamsterdam depuis le 6 octobre et des blocs à 200 millions de gas. Mais sans validation sur Hoodi, le mainnet reste en attente. L’EIP-8037 est encore en phase de Last Call jusqu’au 1er novembre. Sa spécification peut donc encore évoluer. C’est à la fois une bonne et une mauvaise nouvelle. Une bonne, parce que les développeurs ont encore une fenêtre pour corriger les angles morts. Une mauvaise, parce que l’incertitude pèse sur l’ensemble de l’écosystème.
Les opérateurs de nœuds doivent agir rapidement. Les versions qui incluaient l’activation du 26 octobre doivent être remplacées. Pour les utilisateurs finaux et les détenteurs d’ETH, rien ne change immédiatement. Mais pour les équipes de développement des protocoles DeFi, le message est clair : il faut retester en profondeur les chemins d’erreur, les appels internes et la gestion du gas restant.
Pourquoi Le Gas D’état Change La Donne
Le gas d’exécution et le gas d’état ne suivent plus les mêmes règles. C’est le cœur du problème. Dans le modèle actuel, tout le gas d’une transaction est soumis à la règle des 63/64. Un contrat qui en appelle un autre est obligé de garder une réserve. Avec l’EIP-8037, le réservoir de gas d’état voyage en totalité. Un appel interne peut donc consommer l’intégralité de ce gas d’état sans laisser de marge de manœuvre au contrat appelant… ou, au contraire, en recevoir suffisamment via un remboursement pour terminer une branche d’échec qui n’aurait jamais dû s’exécuter.
Ce remboursement immédiat lors de la libération d’un slot de stockage crée une nouvelle dynamique. Un contrat peut volontairement libérer de l’espace pour récupérer du gas et forcer un chemin d’exécution particulier. Ce n’est plus seulement une question de coût. C’est une question de contrôle du flux d’exécution. Et dans un environnement où des milliards de dollars circulent chaque jour, ce genre de subtilité technique peut devenir une surface d’attaque critique.
Ce Que Doivent Faire Les Protocoles Concernés
ChainSecurity a choisi la discrétion. Les treize projets identifiés ont été contactés en privé. Pour les autres, la vigilance s’impose. Toute logique qui repose sur l’échec d’un appel interne suivi d’un code de secours doit être réexaminée. Les montants de gas codés en dur, déjà ciblés par l’outil de la Fondation Ethereum, restent un point d’attention majeur. Mais le vrai danger se situe dans les interactions entre le nouveau réservoir de gas d’état et les mécanismes de try-catch ou d’interception d’erreur.
Les équipes de sécurité recommandent de simuler des scénarios où un attaquant contrôle précisément le gas fourni et force la libération de slots de stockage. Ces tests doivent être menés sur des forks privés de Sepolia ou de Hoodi une fois le hard fork réactivé. Attendre le mainnet pour découvrir un problème serait catastrophique.
Points de vigilance prioritaires pour les développeurs
- Revoir tous les chemins d’erreur qui intercepte un call échoué
- Tester les scénarios de gas minimal fourni par un attaquant
- Simuler la libération de slots de stockage en cours de transaction
- Vérifier l’absence de montants de gas en dur
- Monitorer les outils de détection publiés par la Fondation Ethereum
Un Report Qui Révèle Les Limites Du Processus
Ce n’est pas la première fois qu’Ethereum ralentit un hard fork pour des raisons de sécurité. Mais le cas de Glamsterdam est particulier. La mise à jour avançait bien. Les testnets fonctionnaient. Et c’est une analyse externe, réalisée par un cabinet d’audit, qui a mis en lumière un risque systémique. Cela montre à la fois la maturité de l’écosystème de sécurité et les limites d’un processus de revue purement interne.
L’EIP-8037 reste techniquement solide dans son objectif de freiner le gonflement de l’état. Personne ne conteste la nécessité de rendre le stockage plus cher. Mais la façon dont le gas d’état interagit avec les appels entre contrats n’avait clairement pas été anticipée dans toutes ses implications. Le report de Hoodi est donc une décision prudente. Elle évite de déployer sur le mainnet une modification dont les effets de bord n’ont pas encore été complètement cartographiés.
Quelles Perspectives Pour Les Prochains Mois
L’EIP-8037 peut encore évoluer jusqu’au 1er novembre. Les core developers ont désormais plusieurs semaines pour affiner la spécification ou pour outiller mieux la détection des contrats vulnérables. Pendant ce temps, Hegotá, le fork suivant, voit son calendrier glisser. Chaque semaine perdue sur Hoodi se répercute sur la suite de la feuille de route.
Pour l’écosystème, le message est double. D’un côté, Ethereum continue de privilégier la sécurité sur la vitesse. De l’autre, les protocoles DeFi doivent intégrer que les changements de comptabilité du gas peuvent avoir des conséquences bien au-delà du simple coût des transactions. La logique d’exécution elle-même peut être altérée.
Les prochains appels ACDE seront donc scrutés avec attention. Les opérateurs de nœuds Hoodi doivent déjà se mettre à jour. Les développeurs de contrats intelligents ont, eux, un travail de revue de code à mener. Et les utilisateurs, pour une fois, peuvent rester spectateurs. Le mainnet n’est pas encore concerné. Mais l’épisode rappelle une vérité simple : même les hard forks les mieux préparés peuvent révéler des angles morts de dernière minute.
Leçons Pour L’écosystème Tout Entier
Ce report de Glamsterdam sur Hoodi n’est pas qu’un incident technique. Il illustre la complexité croissante d’Ethereum. Plus le protocole mûrit, plus les interactions entre les différentes pièces du puzzle deviennent subtiles. Un changement destiné à résoudre un problème de scalabilité de l’état peut créer de nouvelles surfaces d’attaque sur la logique métier des contrats.
Les audits externes comme celui de ChainSecurity deviennent indispensables. Les outils automatisés de détection, comme celui publié par la Fondation en août, sont un premier filet. Mais ils ne suffisent pas. Seule une combinaison d’analyse statique, de fuzzing ciblé et de revue manuelle des chemins d’erreur permet de couvrir les cas les plus retors.
À plus long terme, la communauté devra peut-être reconsidérer la façon dont les changements de comptabilité du gas sont introduits. Séparer plus nettement le gas d’exécution et le gas d’état est une idée puissante. Encore faut-il que les règles de transmission et de remboursement soient parfaitement comprises par l’ensemble des développeurs avant le déploiement en production.
Ce Qu’il Faut Retenir Pour La Suite
Glamsterdam ne passera pas sur Hoodi le 26 octobre. Aucune nouvelle date n’a été fixée. L’EIP-8037 reste en Last Call jusqu’au 1er novembre. Treize contrats au moins présentent un risque identifié par ChainSecurity. Les opérateurs de nœuds doivent mettre à jour leurs clients. Les utilisateurs du mainnet n’ont rien à faire pour l’instant. Et le calendrier du prochain hard fork commence déjà à glisser.
Ce n’est pas une catastrophe. C’est un rappel. Sur Ethereum, la prudence reste la règle. Mieux vaut retarder une activation de quelques semaines que de découvrir trop tard qu’un chemin d’échec inoffensif est devenu une porte d’entrée pour des attaquants. Les prochaines semaines diront si l’EIP-8037 peut être ajustée ou si d’autres mesures d’accompagnement seront nécessaires. En attendant, Hoodi reste en stand-by, et tout l’écosystème retient son souffle.
La suite se jouera dans les appels de développeurs et dans les laboratoires des cabinets d’audit. Pour l’instant, une chose est certaine : Ethereum préfère encore ralentir plutôt que de risquer de casser ce qui fonctionne déjà. Dans un secteur où la confiance se construit lentement et se détruit rapidement, ce choix mérite d’être salué. Même s’il laisse un goût d’inachevé à ceux qui attendaient Glamsterdam avec impatience.
