Le wei est la plus petite unité d’ether, l’actif natif d’Ethereum. Un ETH équivaut à 1 000 000 000 000 000 000 wei, soit 1018 wei. Cette unité entière permet aux wallets et aux smart contracts de calculer des montants avec précision. Les frais sont souvent affichés en gwei, une unité plus lisible qui vaut un milliard de wei.
Qu’est-ce que le wei sur Ethereum ?
Le wei est à l’ether ce que le satoshi est à Bitcoin : une unité indivisible utilisée par le protocole. Le nom rend hommage à Wei Dai, créateur du concept b-money. Pour situer ETH, gas, wallet et smart contract, consultez le glossaire crypto de Bref Crypto.
La documentation officielle d’Ethereum confirme que le wei est la plus petite quantité possible d’ether. Les implémentations techniques et les contrats manipulent fréquemment des entiers en wei, tandis que les interfaces convertissent ces valeurs en ETH pour l’utilisateur.
Wei, gwei et ETH : le tableau de conversion
| Unité | Valeur en wei | Valeur en ETH | Usage courant |
|---|---|---|---|
| wei | 1 | 10-18 ETH | Calculs internes et smart contracts |
| gwei | 1 000 000 000 | 10-9 ETH | Prix du gas |
| ETH | 1 000 000 000 000 000 000 | 1 ETH | Solde et montant lisibles |
Les relations principales sont donc :
- 1 ETH = 1018 wei ;
- 1 gwei = 109 wei ;
- 1 ETH = 109 gwei ;
- 0,01 ETH = 1016 wei = 10 000 000 gwei.
Le gwei, contraction de giga-wei, est assez petit pour exprimer le prix d’une unité de gas sans afficher une longue série de zéros. Le wallet se charge généralement de la conversion.
Quel est le lien entre wei, gwei et gas ?
Le gas mesure l’effort de calcul nécessaire à une opération. Le prix du gas indique combien d’ETH l’utilisateur paie par unité de gas, généralement en gwei. Ce sont donc deux mesures différentes : le nombre d’unités consommées et le prix de chaque unité.
La formule simplifiée est :
frais = unités de gas utilisées × (base fee + priority fee).
La page officielle sur le gas et les frais Ethereum précise que la base fee est définie par le protocole et brûlée, tandis que la priority fee est un pourboire versé au validateur. L’utilisateur peut aussi fixer un plafond, appelé max fee per gas.
Exemple de calcul d’un frais Ethereum
Prenons un transfert simple qui utilise 21 000 unités de gas, avec une base fee de 10 gwei et une priority fee de 2 gwei :
- Prix total par unité : 10 + 2 = 12 gwei.
- Frais : 21 000 × 12 = 252 000 gwei.
- Conversion : 252 000 gwei = 0,000252 ETH.
- En wei : 0,000252 ETH = 252 000 000 000 000 wei.
Cet exemple illustre le calcul, pas un prix actuel. Le coût réel dépend de la demande du réseau, de la complexité de l’opération et du gas effectivement consommé. Interagir avec un smart contract utilise généralement plus de gas qu’un simple transfert.
Gas limit, gas utilisé et max fee : ne pas confondre
- Gas limit : quantité maximale de gas que la transaction autorise à consommer.
- Gas utilisé : quantité réellement consommée par l’exécution.
- Base fee : prix minimum du bloc fixé par le protocole.
- Priority fee : pourboire destiné à encourager l’inclusion de la transaction.
- Max fee per gas : plafond accepté par l’utilisateur.
Une limite trop basse peut faire échouer l’exécution. Le gas consommé reste alors payé, car le réseau a effectué le calcul avant de constater l’échec. Un plafond élevé n’est pas nécessairement dépensé en totalité : la différence entre le plafond et le prix réellement appliqué est normalement remboursée selon les règles de la transaction.
Pourquoi les smart contracts utilisent-ils le wei ?
Les ordinateurs représentent plus sûrement les montants monétaires avec des entiers qu’avec des décimales en virgule flottante. Un contrat peut donc stocker 0,1 ETH comme 100 000 000 000 000 000 wei. Cette méthode évite une partie des erreurs d’arrondi, mais elle n’empêche pas les erreurs de formule, de division ou de conversion.
- définir précisément le montant envoyé avec une fonction ;
- calculer des frais ou répartir une récompense entre plusieurs comptes ;
- comparer un solde à un seuil minimal ;
- tester un contrat avec des valeurs identiques à celles du réseau ;
- éviter les ambiguïtés entre ETH affiché et valeur entière stockée.
Les langages et bibliothèques fournissent des fonctions comme parseEther et formatEther. Le développeur doit utiliser des types capables de contenir de très grands entiers. Convertir aveuglément un montant en nombre décimal JavaScript peut perdre de la précision.
Les erreurs fréquentes avec wei et gwei
- Confondre ETH et wei : envoyer 1 en pensant transmettre 1 ETH alors que le contrat interprète 1 wei.
- Confondre gas et gwei : le premier mesure le calcul, le second le prix d’une unité de gas.
- Perdre la précision : utiliser un type numérique trop petit ou une décimale flottante.
- Ignorer les décimales d’un token : tous les ERC-20 n’utilisent pas nécessairement 18 décimales.
- Copier un coût ancien : le prix du gas varie avec la demande.
- Fixer une limite arbitraire : un smart contract complexe peut consommer plus que prévu.
Avant d’envoyer des fonds depuis une plateforme, notre guide sur l’exchange crypto explique les réseaux et les frais de retrait. Pour comparer avec l’unité minimale de Bitcoin, consultez le guide complet sur Bitcoin.
Wei et sécurité : ce que l’unité ne protège pas
La précision du wei n’empêche ni une mauvaise adresse, ni une autorisation malveillante, ni une faille de contrat. Un utilisateur doit toujours vérifier la destination, le réseau, la valeur envoyée et l’action demandée. L’exemple d’un trader victime d’une signature piégée rappelle qu’une opération peut accorder des droits importants même si le montant immédiat paraît faible.
À retenir
Le wei est l’unité minimale d’ETH et le gwei sert surtout à afficher le prix du gas. Les frais résultent du gas utilisé multiplié par le prix par unité. Pour l’utilisateur, un wallet masque la plupart de ces conversions ; pour le développeur, manipuler des entiers en wei évite des erreurs de précision. Dans les deux cas, il faut contrôler unité, réseau et plafond avant de confirmer.
Ce contenu est fourni à titre pédagogique et ne constitue pas un conseil financier.