La Fondation Ethereum a annoncé que sa hard fork Fusaka imposera un plafond de 16 777 216 unités de gaz par transaction, marquant la première fois que le réseau applique une limite distincte par transaction, séparée du plafond de gaz de bloc. Le changement, formalisé sous EIP-7825, est déjà actif sur les testnets Holesky et Sepolia et sera déployé sur le mainnet lors de l'activation de Fusaka.
À savoir :
- Ethereum limitera les transactions individuelles à 2²⁴ unités de gaz (approximativement 16,78 millions), empêchant des appels surdimensionnés uniques de monopoliser des blocs entiers
- La Fondation positionne cette limite comme base pour des capacités d'exécution parallèle, exigeant que les charges de travail dépassant le seuil soient divisées en appels séquencés plus petits
- Tous les clients majeurs ont mis en œuvre le changement dans des versions prêtes pour Fusaka, avec des développeurs conseillés de tester contre les testnets et d'ajuster leur logique d'estimation de gaz en conséquence
La Fondation lie la limite à la stratégie d'exécution parallèle
Toni Wahrstätter a exposé la raison dans un post du 21 octobre, affirmant que la limite atténuerait les vecteurs de déni de service tout en améliorant la prévisibilité de l'empaquetage des blocs. La Fondation a souligné que la plupart des utilisateurs ne verraient aucun impact pratique, puisque la distribution des transactions dans le monde réel se situe bien en dessous du seuil. La surface de risque se concentre sur les contrats lourds par lots, les scripts de déploiement et les routeurs spécialisés qui pouvaient auparavant s'approcher de l'objectif total de gaz de bloc d'environ 45 millions d'unités.
EIP-7825 sépare la complexité au niveau des transactions du débit au niveau du système.
Les appels exceptionnellement grands créaient des problèmes de timing et de programmation pour les constructeurs et les validateurs avant le plafond. Le nouveau plafond oblige les charges de travail au-delà de 16,78 millions de gaz à se diviser en opérations plus petites.
La Fondation relie explicitement la limite aux efforts futurs tels que l'EIP-7928, anticipée à l'ère de Glamsterdam. Des transactions prévisibles et délimitées servent de préalable à une réelle concurrence dans la couche d'exécution. Le plafond assure qu'au moins plusieurs transactions indépendantes peuvent rentrer dans un bloc même sous des conditions difficiles de mempool, réduisant la concurrence dans le pire des cas et simplifiant la conception du planificateur pour les constructeurs testant des chemins d'exécution parallélisables.
Implémentation technique et impact sur les développeurs
La spécification suit une approche économe et mécanique. L'abstraction de l'EIP-7825 déclare l'intention de définir la limite "à 16 777 216 (2^24) gaz" par transaction, améliorant la résilience contre certains vecteurs de déni de service et rendant le traitement des transactions plus prévisible à mesure que les limites de bloc augmentent. Cette simplicité a séduit les canaux de développeurs de base comme une contrainte bien définie préservant la compatibilité future avec des travaux d'agrandissement plus ambitieux.
Le débat sur l'encodage et la communication de la limite a duré des mois.
Les discussions sur Ethereum Magicians et lors des appels AllCoreDevs ont examiné la nomination et la paramétrisation. Un fil résumait la garantie de base : aligner les objectifs de bloc sur des multiples de 2²⁴ afin que les constructeurs puissent toujours inclure au moins n transactions si le mempool contient n transactions éligibles.
Geth, Erigon, Reth, Nethermind et Besu ont tous implémenté le changement dans des versions prêtes pour Fusaka. La Fondation a noté que les sémantiques eth_call restent inchangées, mais les transactions pré-signées avec des limites de gaz dépassant 2²⁴ devront être re-signées en dessous du plafond.
Les développeurs doivent tester contre Holesky ou Sepolia, réoutiller les opérations par lots s'approchant de la limite, et ajuster la logique d'estimation de gaz pour échouer rapidement lorsque les constructions dépassent le plafond.
Termes clés
Le gaz mesure l'effort computationnel sur Ethereum. Chaque opération coûte une certaine quantité de gaz, que les utilisateurs paient en Ether. La limite de gaz de bloc plafonne le gaz total que toutes les transactions dans un bloc peuvent consommer. Les hard forks sont des mises à jour à l'échelle du réseau nécessitant que tous les nœuds mettent à jour leur logiciel. Les testnets tels que Holesky et Sepolia permettent aux développeurs de tester les changements avant le déploiement sur le mainnet.
L'exécution parallèle permettra au réseau de traiter plusieurs transactions non conflictuelles simultanément plutôt que séquentiellement. Les vecteurs de déni de service sont des méthodes d'attaque qui pourraient ralentir ou arrêter les opérations du réseau. Le mempool détient les transactions en attente d'inclusion dans les blocs.
Contexte de la politique et réponse du marché
La philosophie de développement d'Ethereum favorise des contraintes minimales, de portée générale qui poussent la complexité vers des couches supérieures. L'EIP-7825 s'inscrit dans ce modèle en fixant un plafond supérieur qui protège la vivacité du réseau sans dicter le comportement des contrats. Le changement contourne les altérations du marché des frais et laisse l'économie des espaces de blobs et des objectifs de blocs à d'autres propositions.
La Fondation a décrit le plafond comme établissant "une base plus sûre et plus prévisible pour un débit supérieur dans les futurs forks." Cette formulation capture le compromis entre limiter la taille individuelle des transactions et préparer une infrastructure pour une capacité globale plus grande. L'Ether se négociait à 3 835 $ au moment de la presse.
Réflexions finales
La hard fork Fusaka introduit le premier plafond de gaz par transaction au niveau du protocole d'Ethereum, fixé à 16 777 216 unités. La Fondation présente le plafond comme une infrastructure pour l'exécution parallèle tout en atténuant les risques de déni de service, avec un impact minimal attendu pour les utilisateurs typiques.