Aller au contenu

MetaMask Developer et SpruceID collaborent pour implémenter l'EIP-4361

Découvrez comment MetaMask Developer et SpruceID ont collaboré pour implémenter l'EIP-4361, Sign-In with Ethereum, dans MetaMask.

3 min de lecture
MetaMask Developer et SpruceID collaborent pour implémenter l'EIP-4361

SpruceID est une entreprise spécialisée dans la gestion de l'identité numérique et des données personnelles, qui développe l'infrastructure et les outils permettant aux utilisateurs de reprendre le contrôle de leur identité et de leurs données sur Internet. Avec plus de 3 millions de téléchargements et plus de 1 000 dapps utilisant leurs bibliothèques open-source pour le standard Sign-In With Ethereum (SIWE), SpruceID s'attaque au problème persistant de la propriété des données utilisateurs et de l'interopérabilité.

MetaMask Developer désigne la branche développeur de MetaMask, proposant un ensemble complet d'outils, d'API et de SDK conçus pour faciliter l'onboarding des utilisateurs et permettre aux développeurs de créer des connexions de wallet uniques et sans permission, ainsi que des expériences in-dapp pour les utilisateurs de MetaMask. Fondé sur les bases fiables et sécurisées de MetaMask et d'Infura, MetaMask Developer vise également à améliorer l'expérience du wallet MetaMask pour les utilisateurs et les développeurs, grâce à un engagement actif et à une collaboration avec la communauté.

Ce blog met en avant un partenaire de l'écosystème, SpruceID, et son travail visant à permettre l'interopérabilité des données via une authentification contrôlée par l'utilisateur. Il explique également comment, grâce à sa collaboration avec MetaMask Developer, l'EIP-4361, aussi appelé Sign-In with Ethereum (SIWE), a été implémenté dans MetaMask, tout en donnant naissance à la MetaMask Improvement Proposal.

Permettre l'interopérabilité des données grâce à une authentification contrôlée par l'utilisateur

L'internet d'aujourd'hui est centralisé, et l'interopérabilité des données utilisateurs est inexistante. Par exemple, un patient souhaitant changer de prestataire de soins aurait du mal à transférer ses dossiers médicaux existants, en raison de la façon dont ces données sont stockées — dans des bases de données centralisées. Cette pratique n'est pas propre aux prestataires de santé ; elle est courante dans la finance traditionnelle, les réseaux sociaux et les administrations publiques.

SpruceID reconnaît que ce problème peut facilement être résolu en adoptant une architecture de coffre-fort de données (Data Vault Architecture), où, au lieu que les données des utilisateurs soient stockées et gérées par des services tiers, elles résident dans un coffre-fort personnel sécurisé et chiffré, géré par l'utilisateur lui-même.

Cependant, pour que cela fonctionne, un standard d'authentification permettant aux utilisateurs d'accorder ou de révoquer l'accès à leurs données à tout moment est nécessaire. Ce standard devrait également être suffisamment extensible pour prendre en charge le partage basé sur le consentement, afin que les utilisateurs disposent d'un contrôle granulaire sur les données à partager ou non, au cas par cas.

Un autre défi consiste à s'assurer que ce standard d'authentification est reconnu et adopté au sein de l'écosystème par les développeurs de dapps. De plus, certains problèmes de sécurité spécifiques à cette méthode d'authentification ne peuvent être résolus qu'au niveau du wallet. Par exemple, si un site web demande à un utilisateur de signer une transaction, vérifier que l'adresse dans la barre d'adresse de l'utilisateur est correcte et que la requête est transmise via un réseau sécurisé sont des contrôles de sécurité complexes à mettre en œuvre au niveau de la dapp. En revanche, un wallet peut facilement les appliquer.

MetaMask Developer implémente l'EIP-4361 en collaboration avec SpruceID

En rédigeant le standard (SIWE), l'équipe de Spruce ID a créé une méthode d'authentification contrôlée par l'utilisateur, basée sur la cryptographie et les clés publiques et privées des utilisateurs. Grâce à ces clés, les utilisateurs peuvent signer des signatures numériques impossibles à falsifier par des machines. Ils peuvent également signer des autorisations permettant aux dapps d'accéder à leur coffre-fort de données. SIWE offre également un contrôle granulaire, permettant aux utilisateurs de spécifier quelles ressources de leur coffre-fort de données sont impliquées dans une interaction.

Pour favoriser une adoption plus large au sein de l'écosystème, notamment parmi les développeurs de dapps, SpruceID a collaboré avec MetaMask Developer afin d'intégrer SIWE dans le wallet MetaMask en tant que fonctionnalité. Cette collaboration a permis de résoudre plusieurs problèmes de sécurité au niveau du wallet, en s'appuyant sur l'expertise des spécialistes JavaScript en sécurité internes à MetaMask. Ainsi, les développeurs n'ont plus besoin de gérer ces problèmes au niveau de la dapp.

« En repensant à notre expérience de collaboration avec l'équipe MetaMask Developer, deux mots me viennent à l'esprit : « extrêmement réactive » et « rigoureuse »**. Il y a eu de nombreuses itérations, avec des allers-retours constants pour trouver le meilleur résultat possible pour les utilisateurs. Nous sommes reconnaissants que l'équipe MetaMask Developer ait reconnu le potentiel de cette approche pour assurer la sécurité des utilisateurs. » - Wayne Chang, Fondateur, SpruceID*.*

De plus, grâce à cette collaboration, MetaMask Developer a établi un processus permettant à des projets comme SpruceID de proposer de nouvelles fonctionnalités et de suggérer des modifications à l'API du wallet MetaMask. Ce processus s'appelle MetaMask Improvement Proposal (MIP), et vous trouverez plus de détails dans ce blog.

Commencez dès aujourd'hui avec MetaMask Developer

Êtes-vous un développeur qui crée des dapps grand public ?

La suite MetaMask Developer, comprenant l'API du wallet MetaMask, le SDK, les API de services Web3 et Snaps, offre un ensemble complet d'outils pour onboarder des millions des utilisateurs les plus engagés du web.

Consultez le portail développeur pour en savoir plus sur nos offres.

Traduit par IA. Peut contenir des erreurs. Veuillez toujours vérifier les informations.

Évaluer la traduction

Cet article a été rédigé par :

  • Kingsley Okonkwo

    Kingsley, développeur blockchain Ethereum certifié, occupe le poste de rédacteur technique chez Consensys, avec une spécialisation dans les outils destinés aux développeurs. Avant de rejoindre Consensys, Kingsley a travaillé en tant que développeur backend freelance sur plusieurs plateformes, dont Gigster et Braintrust. Fort de 5 ans d'expérience en développement logiciel, il maîtrise des outils tels que JavaScript (Node.js & React), GoLang, SQL et Docker. Kingsley excelle dans la création de tutoriels pas à pas et de guides pratiques, en s'appuyant sur les dernières technologies web3 pour aider les développeurs à créer de meilleures dapps. Actuellement basé à Dubaï, Kingsley aime jouer au basketball et au football pendant son temps libre.

    Lire tous les articles