En plus de votre inscription gratuite, recevez également :
Le plan d’investissement adaptable qui a permis à nos clients de réaliser en moyenne +120% de plus-values en 2023.
(d’une valeur de 250€)Qu'est-ce que le gas Ethereum ?
Le gas Ethereum est unité de valeur virtuelle sur la blockchain Ethereum. Il ne peut pas être détenu ou échangé contrairement aux ethers, la monnaie du réseau Ethereum.
En réalité les frais de la blockchain sont payables en ethers bien qu’ils soient calculés à partir du gaz Ethereum.
Mais comment fonctionne ce système de gas ? Pourquoi en est-il ainsi sur Ethereum contrairement à d’autres cryptos comme Bitcoin ? Et surtout quels sont les métriques à connaître pour utiliser ce réseau et comment les paramétrer ?
Autant de questions auxquelles cet article va tenter de répondre.
Sommaire :
- Le gas Ethereum : définition
- A quoi sert le gas sur Ethereum
- Frais de gaz Ethereum : comment bien les calculer
Le gas Ethereum : définition
Gas cost Ethereum
Tout d’abord il faut savoir que sur Ethereum chaque opération faite sur la blockchain possède un coût fixe en gas déterminé à l’avance. C’est le Gas cost.
Ce coût est tout simplement fonction de la puissance de calcul nécessaire pour effectuer l’opération. En effet, plus une opération nécessite de calculs complexes, plus elle sera énergivore en termes de gas cost.
A titre d’exemple une simple transaction d’un portefeuille A vers un portefeuille B nécessite beaucoup moins de gas (21 000) que lorsqu’il s’agit d’emprunter des tokens pour les swapper et les farmer sur un protocole DeFi.
Une transaction basique a d’ailleurs un coût connu à l’avance qui est toujours de 21 000 gas.
Par contre pour les transactions complexes il existe des prix définis pour chaque opération spécifique exécutée dans le code du smart contract. Il est donc plus difficile de savoir précisément à combien de gaz Ethereum s’élève la transaction finale.
Gas limit Ethereum
Quand un contrat est exécuté sur la Machine Virtuelle d’Ethereum il consomme du gas. Mais s’il arrive à court de gas, il cesse d’exécuter la tâche pour laquelle il est programmé.
Le gas limit représente la limite maximale de gas que l’utilisateur est prêt à utiliser pour exécuter sa transaction. Pour une simple transaction d’un portefeuille à un autre elle n’est pas très utile. Effectivement : le coût en gas est fixe pour ce genre d’opération (21 000).
Cependant, le gas limit prend tout son sens lors d’opérations complexes où un smart contract peut en appeler un autre et ainsi de suite.
Si par exemple une opération nécessite 100 000 gas et que l’utilisateur ne paramètre que 50 000 gas alors il se retrouve doublement perdant.
Il perd ses 50 000 gas (payables en ethers) et en plus de cela sa transaction est invalidée à cause du manque de gas. Il vaut donc mieux fixer une limite assez haute lorsque l’on définit son gas limit pour des opérations complexes, sous peine de voir sa transaction rejetée.
Fort heureusement les portefeuilles type Metamask configurent de manière automatique cette limite et le plus souvent l’utilisateur n’aura pas besoin d’y toucher. Dans le cas contraire il suffit de modifier la limite manuellement.
Gas price Ethereum
Avec le gas limit, le gas price est la seconde métrique directement modifiable par l’utilisateur. Il s’agit du prix en ethers auquel l’utilisateur paie son gaz.
Il s’exprime le plus souvent en Gwei (Gigawei). Le wei est à Ethereum ce qu’un satoshi est à Bitcoin : c’est la plus petite sous unité de la monnaie ether.
- 1 ether = 1 000 000 000 000 000 000 weis
- et 1 ether = 1 000 000 000 Gweis
Un Gwei correspond en fait à un milliardième d’ether.
Le gas price va définir la priorité de la transaction. En effet, le nombre de transactions dans un bloc étant limité les validateurs vont choisir de traiter en priorité les transactions qui vont leur rapporter le plus.
Plus l’utilisateur paie cher son gaz, plus il offre de récompenses aux validateurs qui vont s’empresser de traiter son opération.
Au final le mode de calcul des frais sur Ethereum est relativement simple :
Prix totale d’une transaction = gas cost (nombre de gas consommés pour l’opération concernée) x gas price (prix du gas en Gwei)
A quoi sert le gas sur Ethereum ?
Le système de gas d’Ethereum possède essentiellement 3 raisons d’être :
- C’est un anti spam très efficace. En effet, le fait de fixer un certain coût de transaction en fonction de la saturation du réseau empêche les attaques par déni de service (DDOS) d’être efficaces.
Car pour saturer le réseau de transactions l’attaquant devrait payer un coût de plus en plus cher au fur et à mesure de l’attaque. Le spam est un problème récurrent chez certaines blockchains comme Solana qui utilisent des frais fixes dérisoires.
- Il permet de décorréler les frais de transactions du prix de l’ether. Cet argument reste vrai par rapport à d’autres cryptos qui utilisent des frais fixes. En effet, si une transaction coûtait toujours 0,01 ether quand le prix de l’ether était de 50$ il n’y aurait pas eu de problème. Par contre avec un ether à 4000$ et plus, les frais deviendraient incontrôlables.
Cette thèse est toutefois à nuancer puisque quand il y a une forte euphorie (donc une hausse) sur les cryptos, le réseau Ethereum est souvent saturé et donc le prix du gaz explose en conséquence.
- Il empêche la Machine Virtuelle d’Ethereum d’exécuter des smart contracts en continu et de créer des boucles infinies qui serait fatales au système et à la blockchain Ethereum.
En effet, que la boucle soit générée de manière involontaire (bug) ou volontaire (hack), le système de gas coupe toute interaction à partir du moment où la limit de gas est atteinte. C’est une sorte de coupe circuit naturel.
Frais de gaz Ethereum : comment bien les calculer
Pour une utilisation tout à fait standard du réseau Ethereum avec de simples envois d’ethers il n’y a pas tellement de questions à se poser. La majorité des portefeuilles (type Metamask) paramètrent de manière automatique le gas limit et le gas price.
Là où cela se complique c’est lorsque l’utilisateur souhaite interagir avec des smart contracts. Bien que dans une majorité de cas les paramètres initiaux conviendront très bien, dans certains autres il faudra paramétrer manuellement ses frais de gas.
Si l’utilisateur se sert d’un portefeuille type Metamask il pourra choisir entre 3 niveaux de prix de gas. Ces niveaux sont décrits comme « lent« , « moyen » et « rapide« , le « rapide » étant celui qui offre le gas le plus cher et le « lent » le moins cher. Plus l’utilisateur veut que sa transaction soit effectuée rapidement plus il aura intérêt à sélectionner un haut niveau de prix de gaz.
Dans les cas les plus extrêmes il est même possible de fixer soi même manuellement le gas price. Pour avoir une idée des prix en cours du gas le site ETH GasStation est très intéressant. Il permet d’estimer le prix minimum du gas pour qu’une transaction soit effectuée en moins de 2min, 5 min ou 30min.
Ce genre de pratique est à réserver dans de rares situations. Cela peut être le cas quand le réseau est surchargé ou lorsque l’on participe à une ICO et que l’on veut être sûr que l’interaction avec le smart contract passe en priorité.