Peut-on interagir avec ce contrat intelligent en toute sécurité ?
Les contrats intelligents sont des programmes informatiques qui s’exécutent sur la machine virtuelle Ethereum (EVM) et sur des chaînes de blocs similaires. Leur nom est quelque peu trompeur : lorsque vous interagissez avec eux, vous ne signez pas un contrat, mais vous déclenchez simplement l’exécution d’un programme.
Ce sont les possibilités pratiquement infinies offertes par les fonctions des contrats intelligents qui font la puissance d’Ethereum et du Web3. L’accessibilité est également une caractéristique essentielle : le Web3 étant conçu pour être décentralisé et accessible à tous, les contrats intelligents peuvent être créés et déployés par toute personne qui le souhaite. Inévitablement, certains tentent d’exploiter cette liberté aux dépens d’autres utilisateurs.
C’est pourquoi vous devez apprendre à identifier les contrats intelligents frauduleux et éviter d’être victime d’escroqueries.
Pour plus de clarté, les contrats intelligents peuvent représenter :
- Un jeton, tel que les jetons ERC-20, qui sont définis et gérés par des contrats intelligents, ou même une collection de NFT ;
- Une fonction au sein d’une dApp, telle qu’un programme supervisant un échange de jetons, ou encore les mécanismes de gouvernance d’une DAO.
Connexion ou approbation
Lorsque vous utilisez MetaMask, vous serez souvent invité à connecter votre portefeuille. On vous demandera également assez souvent d’approuver certaines opérations. Dans ce contexte, ce sont les approbations (également appelées « permissions ») sur lesquelles vous devez vous concentrer : la distinction est importante !
- Le fait de connecter votre portefeuille à un site ne lui permet pas d’effectuer la moindre opération sur vos fonds, sauf si vous donnez votre consentement explicite. Ainsi, même si cette connexion permet à une dApp de vous proposer certaines transactions ou actions, rien ne se passera avec vos fonds tant que vous n’aurez pas approuvé les transactions suggérées. Pour en savoir plus sur la connexion de votre portefeuille, cliquez ici.
- Les approbations, quant à elles, accordent à un contrat intelligent l’autorisation d’interagir et d’utiliser librement un certain nombre de jetons. Vous devez toujours prendre le temps de réfléchir lorsqu’on vous demande d’approuver quelque chose, car cela implique généralement de céder le contrôle de vos actifs à un programme informatique qui aurait pu être écrit par n’importe qui. Pour en savoir plus, cliquez ici.
Vérifier si un contrat intelligent est fiable
Passons en revue certains éléments à prendre en compte pour déterminer si vous pouvez faire confiance à un contrat intelligent :
- Vous demande-t-il d’autoriser l’accès à vos jetons ?
- Outre l’ingénierie sociale visant à s’emparer de votre phrase secrète de récupération (découvrez comment vous protéger), les escroqueries liées à l’autorisation d’accès aux jetons constituent l’un des vecteurs d’attaque les plus courants dans le Web3. C’est pourquoi nous les avons brièvement expliquées ci-dessus. Si vous consentez à l’autorisation d’accès aux jetons demandée par une dApp, vous lui confiez le contrôle du jeton (et de la quantité de ce jeton) que vous approuvez. Ce simple fait devrait vous inciter à y réfléchir à deux fois.
- Le jeton auquel la dApp demande l’accès est-il pertinent ? Est-il en rapport avec la fonctionnalité de la dApp que vous aviez l’intention d’utiliser ?
- La quantité de jetons demandée est-elle raisonnable ? Gardez à l’esprit que de nombreuses applications populaires demandent l’accès à une quantité pratiquement illimitée de jetons afin de vous éviter d’avoir à signer (et à payer) de nombreuses transactions à l’avenir. Pour en savoir plus, cliquez ici.
-
Recherchez l’adresse sur l’explorateur de blocs correspondant. Tous les contrats intelligents possèdent une adresse. Toute dApp, collection de NFT ou autre entité digne de confiance devrait mettre cette adresse à votre disposition, soit directement sur son site principal, soit dans sa documentation. MetaMask vous indiquera également l’adresse du contrat intelligent avant que vous ne signiez une transaction.
Saisissez cette adresse dans la barre de recherche d’un explorateur de blocs. La plupart d’entre eux, notamment Etherscan, vous indiqueront si le code est vérifié ou non, comme illustré ci-dessous. Vous pouvez également vérifier si le contrat porte un nom : s’il n’en a pas, il pourrait s’agir d’un contrat très récent ou peu fiable.
Vous pouvez également consulter la section « commentaires » de l’explorateur de blocs pour vous faire une idée de l’opinion des utilisateurs. Prenez toutefois ces informations avec des pincettes, car elles pourraient être influencées par les fraudeurs eux-mêmes.
-
Utilisez des sites répertoriant les cryptomonnaies et les jetons pour vous renseigner sur un jeton. Rendez-vous par exemple sur Coingecko et saisissez le nom ou l’adresse du jeton. Vous devriez pouvoir consulter des informations pertinentes sur le jeton, telles que le site web du projet et ses comptes de réseaux sociaux. Vous pourrez ainsi vérifier si la dApp, le jeton ou le projet dispose d’une véritable communauté active qui ne se compose pas uniquement de bots, ou rechercher un livre blanc sur son site web démontrant qu’il ne s’agit pas simplement d’une éventuelle tentative de rug pull. Notre guide sur les meilleures pratiques en matière de sécurité des jetons est également très utile dans ce contexte.
-
Vérifiez l’activité récente du contrat. Examinez les transactions récentes répertoriées sur la page du contrat intelligent dans l’explorateur de blocs. Même si les explorateurs de blocs peuvent sembler complexes, essayez simplement de repérer des tendances, puis demandez-vous pourquoi ces tendances pourraient exister. Une pratique frauduleuse courante consiste, par exemple, à empêcher les acheteurs et les détenteurs de jetons de vendre ces derniers ; ainsi, si vous ne voyez aucune transaction de vente, vous êtes peut-être face à une arnaque de type « honeypot ».
Malheureusement, il n’existe aucun moyen d’être sûr à 100 % de la légitimité d’un contrat intelligent, à moins de passer de nombreuses heures à vous familiariser avec Solidity et les langages de programmation associés afin de pouvoir les auditer vous-même.
Il est donc important de bien garder ce qui suit à l’esprit : agissez toujours avec prudence sur le Web3. Si vous avez des doutes concernant un site en particulier ou si vous avez d’autres questions, contactez-nous via la fiche « Contacter l’assistance » ci-dessous, ou depuis la page d’accueil de ce site.
Contacter le service d’assistance
Contactez-nous pour obtenir de l’aide. Connectez votre portefeuille pour bénéficier d’une assistance plus rapide et personnalisée, basée sur les informations publiques de votre portefeuille et votre utilisation de MetaMask.