Définition
Paymaster : définition
Un paymaster est un smart contract qui accepte de payer les frais de gas à la place d'un utilisateur, dans le cadre de l'account abstraction (ERC-4337). Il peut offrir les frais ou se faire rembourser dans un autre token que l'ETH.
Thème : Ethereum et smart contracts
Sur Ethereum, chaque transaction doit normalement être payée en ETH par le compte qui l'envoie. Cela oblige un nouvel utilisateur à acquérir de l'ETH avant toute action, ce qui complique l'arrivée dans une application. Avec l'account abstraction introduite par le standard ERC-4337, les opérations des comptes intelligents, appelées UserOperations, peuvent désigner un paymaster. Ce contrat vérifie s'il accepte de couvrir les frais, puis les avance au bundler qui inclut l'opération dans un bloc.
Le paymaster applique ses propres règles. Une application peut sponsoriser les frais de ses utilisateurs pour certaines actions, par exemple la création d'un compte ou un premier achat. Un autre paymaster peut accepter d'être remboursé en stablecoins, en prélevant l'équivalent sur le compte de l'utilisateur. Pour garantir qu'il pourra payer, le paymaster dépose des ETH dans le contrat central du système, appelé EntryPoint.
Un exemple concret
Un jeu fictif sur un réseau compatible Ethereum veut éviter que ses joueurs aient à acheter de l'ETH. Il met en place un paymaster qui paie les frais de toutes les actions de jeu. Lorsque Lina obtient un objet et l'inscrit sur la blockchain, elle signe simplement l'opération : les frais sont pris en charge par le paymaster du jeu, sans qu'elle possède le moindre ETH.
Les risques à connaître
Un paymaster gratuit peut cesser de sponsoriser les frais à tout moment, laissant l'utilisateur sans moyen d'agir s'il ne possède pas d'ETH. Les paymasters qui prélèvent des tokens appliquent leur propre taux de conversion, parfois défavorable. Mal conçu, un paymaster peut aussi être vidé par des opérations abusives.
Questions fréquentes sur Paymaster
Peut-on utiliser Ethereum sans posséder d'ETH ?
Avec un compte intelligent et un paymaster, oui : les frais peuvent être offerts par une application ou payés dans un autre token. Le paymaster, lui, paie toujours en ETH en arrière-plan.
Pourquoi une application paierait-elle les frais de ses utilisateurs ?
Pour simplifier leur arrivée et supprimer l'obstacle de l'achat d'ETH. C'est un coût d'acquisition, comparable à une offre de bienvenue.