Un de mes amis développeur de Solidity a tendu la main sur Signal l’autre jour dans un tizzy. «Je ne peux pas croire cela», a-t-il écrit. «Comment les développeurs Ethereum ont-ils laissé cela se produire?»
Il faisait référence à un article récent se souciant de la mise à niveau d’Ethereum PECTRA – en particulier de l’EIP-7702 – et de sa supposée capacité de laisser les pirates «drainer les portefeuilles avec juste une signature hors duclat». Le morceau a été bandé sur X / Twitter, semble-t-il, mais pas par des gens que je suis. Les craintes étaient clairement attrayantes dans certains cercles qu’un nouveau type de transaction a discrètement permis aux attaquants de prendre le contrôle des portefeuilles sans transaction Onchain ou même aux connaissances d’un utilisateur.
Mais comme beaucoup de choses dans la crypto, la réalité est à la fois plus nuancée – et moins dramatique.
La récente mise à niveau de PECTRA d’Ethereum, activée le 7 mai, a introduit un mécanisme puissant qui permet aux comptes appartenant à l’extérieur (EOAS) d’agir temporairement comme des comptes intelligents. Mais le déploiement s’est accompagné de revendications à bout de souffle selon lesquelles elle expose les utilisateurs à un nouveau risque fou.
Ces titres sont trompeurs. Bien que l’EIP-7702 puisse introduire une nouvelle surface d’attaque pour le phishing, il ne contourne pas les signatures de portefeuille ou ne permet pas un accès non autorisé en soi. Au lieu de cela, il signe un message spécial pour les superpuissances temporaires. Mais si ce message tombe entre de mauvaises mains, quelqu’un d’autre pourrait prendre le contrôle – comme s’ils remettant une clé privée à votre portefeuille pour une seule session.
Cela semble dangereux, et cela peut l’être, mais seulement si un utilisateur est trompé dans la signature d’une délégation malveillante. Ce n’est pas une défaillance du protocole, mais quelque chose pour les éditeurs de logiciels de portefeuille.
Les chercheurs en sécurité et les portefeuilles ont répondu de manière proactive au 7702. Par exemple, parallèlement à la prise en charge de la fonctionnalité, Ambire et Trust Wallet ont publié des correctifs ou des avertissements. Les portefeuilles qui ne supportent pas encore 7702 ne sont pas soudainement rendus peu sûrs. Mais la confusion s’est propagée avec des tweets viraux affirmant que l’EIP-7702 a fait des portefeuilles matériels «plus sûrs», par exemple.
Will Hennessy, chef de produit d’Alchimie, a fortement repoussé ce récit:
« C’est un non-problème pour les utilisateurs finaux », a-t-il déclaré à Blockworks. «Aucun portefeuille ne prend en charge la signature de délégations arbitraires, ni un RPC de portefeuille pour un DAPP pour demander une signature de délégation arbitraire.»
Il a raison… aujourd’hui. Les portefeuilles traditionnels comme Metamask et Ledger n’exposent pas de méthode pour signer les tuples d’autorisation EIP-7702 – le terme pour le bordereau d’autorisation unique, signé par le propriétaire du portefeuille.
Mais cela commence à changer. Les sdks de portefeuille intégrés – y compris le kit de compte d’Alchemy – incluent déjà une méthode appelée signalation de signalisation qui crée des signatures EIP-7702 valides. Ces produits peuvent contourner entièrement la norme EIP-1193 en regroupant leur propre fournisseur. Alors que les portefeuilles commencent à prendre en charge nativement les comptes intelligents, cette fonctionnalité se propagera probablement.
« L’article décrit la signature d’un message avec un portefeuille à partir d’un site Web malveillant », a ajouté Hennessy, « mais il n’est possible pour aucun site Web de demander une signature de délégation EIP-7702 à un portefeuille externe. »