Présentation de Smart Gas : payez les frais réseau avec des stablecoins

Les transactions Smart gas sont désormais disponibles dans Tangem Wallet sur Ethereum, BNB Smart Chain, Polygon, Arbitrum One

Cet article est disponible dans les langues suivantes :

Author logo
Patrick Dike-Ndulue
Post image

Les utilisateurs qui passent des plateformes centralisées aux wallets en auto-garde rencontrent systématiquement le même obstacle : ils retirent des tokens vers leur nouveau wallet, tentent d’effectuer une transaction, et découvrent qu’ils ne peuvent pas. La transaction exige des frais de gaz à régler dans la devise native du réseau : ETH sur Ethereum, BNB sur BNB Smart Chain, MATIC sur Polygon, et ils n’en possèdent pas.
 

Ce n’est pas un simple désagrément. L’utilisateur doit maintenant acquérir une petite quantité de tokens natifs uniquement pour déplacer ses propres actifs. Cela implique de trouver une plateforme qui accepte les petits achats, de payer des frais de retrait parfois supérieurs au montant nécessaire, ou de trouver un faucet ou un proche prêt à lui envoyer de quoi démarrer. Pour beaucoup, notamment ceux qui découvrent l’auto-garde, c’est souvent à ce stade qu’ils abandonnent.

Nous intégrons les transactions Smart gas pour éliminer totalement ce frein.

Qu’est-ce qu’un paiement Smart gas ?

Le paiement Smart gas permet aux utilisateurs de régler les frais réseau avec des stablecoins populaires au lieu des tokens natifs. Si vous détenez des USDC ou USDT sur un réseau compatible, vous pouvez les utiliser pour payer directement les frais de transaction.

Exemple : Alice retire 100 USDT depuis Coinbase vers son Tangem Wallet sur le réseau Ethereum. Elle souhaite envoyer 50 USDT à Bob, mais elle n’a pas d’ETH sur Tangem pour régler le gas. Avec les transactions Smart gas, l’application détecte son solde USDT et propose de payer les frais en USDT. Alice confirme et signe la transaction : 50 USDT sont envoyés à Bob, et environ 0,80 $ en USDT sont prélevés comme frais réseau. Elle n’a jamais eu besoin d’acquérir d’ETH.

Réseaux et tokens pris en charge

Les transactions Smart gas sont disponibles sur les principaux réseaux EVM ayant mis en œuvre EIP-7702 (mise à niveau Pectra). Nous avons sélectionné les tokens de frais selon leur liquidité, le coût de transfert prévisible et leur adoption : principalement des stablecoins indexés sur l’USD que les utilisateurs détiennent souvent après un retrait depuis une plateforme.

 

Réseau

Tokens de frais pris en charge

Ethereum

USDC, USDT

BNB Smart Chain

USDC, BSC-USD

Polygon

USDC, USDT0

Arbitrum One

USDC, USDT0

Base

USDC

Comment fonctionne une transaction Smart gas en coulisses

Cette fonctionnalité repose sur EIP-7702 (« Set Code for EOA »), introduit avec la mise à niveau Pectra en mai 2025. Ce standard marque une évolution majeure dans la façon dont les comptes Ethereum peuvent fonctionner.

Comment fonctionne EIP-7702

Traditionnellement, Ethereum propose deux types de comptes : les comptes externes (EOA), contrôlés par des clés privées, et les comptes contrats, qui contiennent du code exécutable. Les EOA sont simples : ils peuvent détenir des actifs et signer des transactions, mais n’exécutent pas de logique personnalisée. Les comptes contrats, eux, peuvent exécuter du code arbitraire mais nécessitent un déploiement et présentent d’autres propriétés de sécurité.

EIP-7702 comble cet écart. Il permet à un EOA de déléguer temporairement à un contrat intelligent en signant un message d’autorisation. Point essentiel : cette autorisation ne nécessite aucune transaction on-chain. L’utilisateur signe un message, et cette signature peut être incluse dans une transaction soumise par un tiers.

C’est ce qui rend les transactions Smart gas possibles : les utilisateurs peuvent autoriser l’ajout de notre logique de contrat à leur compte sans payer de frais de gaz pour cette autorisation.

Implémentation du smart contract Tangem

Nous avons développé un smart contract sur mesure plutôt que d’adopter des solutions existantes. Les implémentations prêtes à l’emploi que nous avons évaluées étaient soit plus coûteuses pour l’utilisateur (à cause de frais inutiles), soit comportaient des fonctionnalités élargissant la surface d’attaque sans avantage pour notre cas d’usage.

Notre implémentation repose sur deux contrats :

Tangem7702Smart gasExecutor

C’est le contrat délégué par l’EOA de l’utilisateur. Il gère :

  1. Vérification de la signature — Valide que les paramètres de la transaction Smart gas ont bien été signés par le propriétaire du compte via EIP-712 (signature de données typées)
  2. Exécution de la transaction — Exécute la transaction souhaitée par l’utilisateur (par exemple, un transfert de tokens)
  3. Compensation des frais — Calcule le gaz effectivement consommé et transfère le montant approprié de token de frais au destinataire

Le contrat conserve un stockage minimal : uniquement un nonce pour la protection contre les replays. La disposition du stockage est décalée grâce à la fonctionnalité de layout personnalisé de Solidity, afin d’éviter les collisions si l’utilisateur rattache un autre contrat à son compte. 

// Core data structures
struct Transaction {
    address to;
    uint value;     
    bytes data;
}
struct Fee {
    address feeToken;           // Token used for fee payment
    uint maxTokenFee;           // Maximum fee in token units
    uint coinPriceInToken;      // Native currency price in token
    uint feeTransferGasLimit;   // Gas limit for fee transfer
    uint baseGas;               // Fixed overhead (signature verification, nonce update)
    address feeReceiver;        // Fee collection address
}
struct Smart gasTransaction {
    Transaction transaction;
    Fee fee;
    uint nonce;    // From user's contract storage
}

Constantes clés :

  • BASE_GAS = 60 000 — Surcoût de gaz fixe pour la vérification de la signature, la mise à jour du nonce et la structure d’exécution

Tangem7702EntryPoint : le contrat d’entrée (Entry Point)

Nous avons également déployé un contrat Entry Point qui sert d’interface à notre relais pour exécuter les transactions Smart gas. Son rôle est simple et essentiel : il vérifie que le code du contrat rattaché à l’adresse utilisateur correspond exactement à celui attendu avant de transmettre la transaction pour exécution.

function executeTransaction(
    Smart gasTransaction calldata gasslessTx,
    bytes calldata signature,
    bool forced,
    address executor
) external

Le paramètre forced contrôle le comportement lorsque le gaz consommé pour le transfert des frais dépasse feeTransferGasLimit :

  • false — Annule la transaction (utilisé lors de l’estimation du gaz)
  • true — Déclenche un événement et poursuit (utilisé lors de l’exécution réelle, car le gaz est déjà dépensé)

Cela protège notre infrastructure de relais. Puisque nous avançons les frais de gaz réels et recevons la compensation depuis le solde de tokens de frais de l’utilisateur, nous devons nous assurer que le contrat rattaché calcule et transfère correctement cette compensation. Le contrat Entry Point garantit que nous interagissons uniquement avec des comptes utilisant notre code audité. 

Paramètres de frais

Lorsque vous approuvez une transaction Smart gas, vous signez un message contenant :

  • Fee token : le stablecoin utilisé pour le paiement (ex. : USDC)
  • Token price : le taux de change entre le token de frais et la devise native, pour calculer le coût équivalent
  • Maximum fee : le montant maximal que vous acceptez de payer, affiché dans l’application Tangem
  • Autres paramètres pour la protection contre les replays et les détails de la transaction

Le montant maximal garantit à l’utilisateur une visibilité sur le coût. Le montant réellement prélevé dépendra de la consommation réelle de gaz, et sera généralement inférieur à ce maximum.

Modèle de sécurité

Nous avons évalué les solutions existantes, mais développer notre propre contrat est un choix de sécurité assumé. Notre contrat est conçu spécifiquement pour les transferts de tokens avec paiement des frais. Il ne fait qu’une seule chose, ce qui le rend plus facile à auditer et à analyser.

Facteur

ERC-4337

Implémentation Tangem

Surcoût de gaz

Plus élevé (infrastructure bundler)

Plus faible (exécution directe)

Surface d’attaque

Plus large (plus de fonctionnalités)

Minimale (usage unique)

Risque de collision de stockage

Variable selon l’implémentation

Atténué via un layout personnalisé

Possibilité de mise à jour

Souvent incluse (risque de clé admin)

Non modifiable

Audit

Le contrat a été audité par Pessimistic, un cabinet spécialisé dans la sécurité blockchain et l’analyse de smart contracts. Le rapport complet d’audit est disponible sur GitHub. 

Expérience utilisateur

Malgré la complexité technique sous-jacente, l’expérience côté utilisateur reste simple :

  1. Vous initiez une transaction (envoi, swap, envoi via swap) sur un réseau compatible
  2. Si vous détenez un solde dans un stablecoin pris en charge, l’application propose de payer les frais avec ce token
  3. Vous voyez le montant maximal des frais en stablecoin et vous confirmez la transaction
  4. En coulisses : vous signez à la fois l’autorisation EIP-7702 (rattachement du smart contract Tangem à votre compte) et les paramètres de la transaction Smart gas
  5. Ce paquet signé est envoyé à notre backend, qui soumet la transaction au réseau
  6. La transaction s’exécute et les frais sont prélevés sur votre solde de stablecoin

De votre point de vue, il s’agit d’une transaction classique, à la différence près que vous n’avez pas eu besoin de tokens natifs pour la réaliser.

Limites et points d’attention

Les transactions Smart gas fonctionnent actuellement avec les stablecoins listés plus haut dans cet article. Nous les avons sélectionnés selon leur liquidité, leur adoption et leur compatibilité technique. Autres limites à noter :

  • Surcoût de frais : les transactions Smart gas peuvent coûter légèrement plus cher qu’un paiement en tokens natifs, en raison du surcoût d’exécution du smart contract et de la conversion du prix du token. Notre contrat est optimisé pour limiter ce surcoût.
     
  • Support réseau : EIP-7702 n’est disponible que sur les réseaux ayant activé la mise à niveau Pectra. Nous avons activé la fonctionnalité sur les réseaux où le support EIP-7702 et la liquidité stablecoin la rendent pertinente.

Conclusion

Les transactions Smart gas lèvent l’un des principaux freins à l’auto-garde. Grâce à EIP-7702, les utilisateurs peuvent désormais effectuer des transactions uniquement avec les tokens déjà détenus.

Pour les utilisateurs venant des plateformes, cela signifie que leurs tokens retirés sont immédiatement utilisables. Pour l’écosystème au sens large, c’est un pas vers une infrastructure crypto qui s’adapte à l’utilisateur, sans exiger la maîtrise des mécanismes de gas avant de pouvoir gérer son argent.

Author logo
Auteur Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.

Author logo
Examiné par Rukkayah Jigam

Writer & editor covering digital assets and product updates.