Comprendre le message de signature
Il existe de nombreuses idées fausses sur les signatures. Dans cet article, je souhaite passer en revue quatre types de signatures de messages pour aider les utilisateurs à comprendre les risques associés à la signature de messages (parfois également appelée signatures sans gaz) sur Ethereum ou d'autres blockchains compatibles avec l'EVM.
The quatre types de signatures
Ces types de signatures sont absolument essentielles à comprendre par tous les utilisateurs d’Ethereum du Web3..
Type #1 - la preuve d’identité (Sécurisée)
C'est principalement ce à quoi servent les signatures dans le Web3. Bien qu'il n'existe pas de norme unifiée sur leur apparence, certaines choses courantes incluent généralement des conditions générales d'utilisation, votre adresse de portefeuille, parfois un nonce pour éviter les attaques, et éventuellement une courte chaîne pour garantir que le message que vous signez sur le portefeuille logiciel est le même sur le portefeuille matériel. Voici quelques exemples :


Type #2 - La signature tapée [Interaction avec un Smart Contract] (Prudence)
Souvent, certaines parties des contrats intelligents s'appuient sur des signatures hors chaîne pour faire avancer les choses. Ces types de signatures décomposent toutes les entrées qui feront partie de l'interaction avec le contrat. C'est assez pratique, mais c'est là que vous devez faire attention si vous avez des approbations ouvertes. Comme nous l'avons discuté dans notre article sur les approbations, bien que vous puissiez comprendre exactement ce qu'ils font dans cet exemple, vous devez vous assurer que la source qui met en avant ce type de demandes de signature est fiable.
Par exemple, si vous recevez la demande d'approbation de signature illustrée en dehors d'Opensea, vous devriez être très inquiet et ne jamais la signer. Cela est particulièrement vrai si vous utilisez votre adresse de portefeuille "Vente", comme nous l'avons présenté dans notre article “Wallet For Every Occasion”.

Type #3 - La signature hex (hexadécimale) déroutante Hex Signature (Prudence Extrême!)
Maintenant, simplement parce qu'une chose n'a pas une signature joliment tapée conformément à la norme EIP-712 mentionnée ci-dessus, cela ne signifie pas que c'est une arnaque. Cependant, cela signifie que vous faites confiance à la contrepartie avec n'importe quel type de message que vous pourriez être en train de signer, car vous faites une “Signature à l’aveugle” un message. Bien que nous ne voyions plus cela exploité sur Opensea ces jours-ci en raison des mises à niveau dans le contrat Seaport, je ferais quand même une pause avant de signer ces types de messages, surtout si vous êtes sur une adresse de portefeuille avec des approbations ouvertes. Pas sûr ? Consultez notre article sur la révocation des approbations et voyez quelles approbations vous avez ouvertes sur cette adresse de portefeuille !

Type #4 - ETH_Sign - Obsolète et effrayant (Dangereux !)
Il s'agit d'un type de signature très dangereux, essentiellement le "chèque en blanc" d'Ethereum. Le demandeur peut l'utiliser pour signer n'importe quelle transaction avec votre clé privée. La bonne nouvelle est que Metamask affiche un gros avertissement rouge s'il jamais il est demandé. Cela permet effectivement à quelqu'un, s'il conçoit correctement la charge utile de la signature, de pouvoir "rejouer" une transaction à son avantage, comme s'envoyer de l'ETH. Cela ne dépend pas des approbations comme le font le wETH volé, les NFT et autres jetons. Il s'agit du seul type de signature qui présente ce type de risque, et il devrait généralement être évité à tout prix, car il est rare qu’il soit utilisé !

MISE À JOUR : Suite à nos retours et à ceux d'autres membres de la communauté, ETH_SIGN est désormais désactivé par défaut dans Metamask (mais vous pouvez l'activer dans les paramètres avancés), nous laissons donc cela ici pour l'exhaustivité ! Nous considérons cela comme une grande victoire en termes d'interface utilisateur et d'expérience utilisateur dans l'espace, ce qui simplifie notre communication concernant les signatures.
Ressources supplémentaires
Nous comprenons que nous simplifions certains des termes techniques ici, donc avant de dire "Vous utilisez les mauvais termes pour cela !", sachez que nous essayons de simplifier le cadre pour le rendre plus compréhensible pour tous ! Ci-dessous, vous trouverez plus de ressources et des explications techniques supplémentaires sur les signatures, les types de signatures et leurs mises en œuvre !
Plus d'informations sur les aspects techniques ici :
Can your wallet be drained simply by signing a message in Metamask?
Let's talk about it.
🧵👇— IOE (@CT_IOE) June 8, 2022
Autres articles utils sur les Signatures:
- Intro to cryptography and Signatures in Ethereum - by Immunefi
- Signing Data | Metamask - by Metamask
Avez-vous des questions ou souhaitez-vous en savoir plus sur la sécurité Web3 et rester informé des informations de sécurité les plus récentes, des escroqueries et des tactiques ? Rejoignez-nous sur notre serveur Discord à l'adresse https://discord.gg/boringsecurity . ![]()


