Titre original : "Web3 Mini Program ?" Interprétation des Snaps MetaMask》
Source originale : équipe ZAN
Snaps MetaMask
MetaMask Snaps (https://metamask.io/snaps/) est un projet avec des idéaux à long terme. Cependant, quelle que soit la cape « idéale » qu’il porte, je préfère l’appeler un petit programme dans le monde Web3. Ou donnez-lui un nom fantaisiste : dApplet.
En tant que développeurs, notamment chinois, vous devez connaître son concept. Ces dernières années, on entend souvent des argots Internet tels que « création écologique » et « super App ». Les géants du secteur veulent toujours rendre Internet de plus en plus fermé afin de passer du rôle de fournisseur de services au rôle de standard. l'encadreur.
Aujourd’hui, cette tendance semble s’étendre lentement au domaine Web3.
À ce jour (juin 2024), bien que Snaps existe depuis près d'un an et que cela fait au moins 4 ans que le concept a été proposé, les utilisateurs ordinaires ne le comprennent presque pas. J'ai des amis qui sont très préoccupés par le marché des crypto-monnaies. Ouvrir MetaMask tous les jours est aussi naturel que manger et dormir, mais ils ne savent toujours pas ce que sont les MetaMask Snaps. Cependant, après que l'auteur leur ait expliqué "comme un petit programme", un sourire indescriptible apparaît toujours sur son visage (ce sont tous des développeurs, pour la plupart des développeurs front-end).
Cette scène rappelle inexplicablement la situation lorsque le mini-programme WeChat est sorti pour la première fois. Parce que l'entrée de la fonction n'était pas évidente, l'utilisation était très faible. Plus tard, après que l’entrée ait été remplacée par une liste de mini-programmes apparaissant dans le menu déroulant de la page d’accueil, l’utilisation a commencé à augmenter de manière significative. Puisque MetaMask veut construire un écosystème, comment attirer les utilisateurs à entrer dans l'écosystème deviendra probablement une question importante qui doit être résolue de toute urgence.
Depuis l'émergence des mini-programmes, il y a eu une controverse constante dans l'industrie Internet. Les ingénieurs front-end méprisent généralement son émergence, estimant qu'il s'agit simplement d'un outil commercial utilisé par les géants de l'Internet pour monopoliser le trafic et bloquer l'écosystème, et qu'il ne contribue pas beaucoup au développement technologique. Je me demande dans quelle mesure les Web3 Snaps peuvent apporter à la communauté ? En parcourant la documentation fournie par MetaMask, il devient de plus en plus évident que les futurs développeurs de Snap connaîtront les difficultés de danser avec des chaînes.
Cela fait près d'un an que MetaMask a ouvert la version bêta publique de Snaps. Cependant, le nombre de Snaps disponibles répertoriés sur son site officiel n'est en réalité pas très important. En juin 2024, il n'y avait que 68 Snaps complets. Vous savez, avant la version bêta publique officielle, dès 2020 environ, les responsables avaient déjà proposé le concept de Snaps, et les développeurs l'ont en fait bien compris depuis un certain temps.
Quelques clichés
L'auteur n'a pas rencontré de développeur spécialisé dans le développement de Snaps, mais il y a encore de nombreux développeurs de petits programmes dans Web2 autour de moi. L'opinion générale des petits programmes est que l'expérience de développement est relativement médiocre. Le développement de mini-programmes utilise toujours l'écosystème front-end, mais il s'agit d'une version castrée. Pour diverses raisons, les fabricants limitent ce que les développeurs peuvent réellement faire. De plus, les capacités techniques et la qualité des documents fournis par chaque fabricant sont inégales, ce qui oblige les développeurs à passer par toutes sortes d'embûches étranges sur différentes plates-formes avant de pouvoir être qualifiés d'« expérimentés ».
Pour en revenir au Web3, pour des raisons de sécurité et d'autres facteurs, Snaps est très probablement confronté à une situation similaire. Il doit s'exécuter dans un contexte de sécurité isolé, en utilisant "Secure ECMAScript", qui est en fait une modification de l'API JavaScript. Certaines limitations. , comme l'impossibilité d'accéder au DOM, à Node.js, à l'API du plug-in du navigateur, etc.
En raison de problèmes de sécurité compréhensibles, un Snaps de base ne fait pas grand-chose. La plupart de ses fonctions nécessitent les autorisations correspondantes, Snaps doit donc demander les autorisations pertinentes à l'utilisateur lors de l'installation. Les autorisations disponibles incluent le cycle de vie, la transaction, la signature, le CRON, etc. :
https://docs.metamask.io/snaps/reference/permissions/#eth_accounts
Par conséquent, par rapport au prospère écosystème Web3, les Snaps actuellement disponibles sont très peu nombreux, et MetaMask en a fait quelques classifications.
Type de clichés
Selon la classification du site officiel de MetaMask, il peut être grossièrement divisé en 4 types :
Gestion des comptes Gestion des comptes
Ce type de Snaps utilise principalement la technologie MPC (Multi-Party Computation, multi-party computing, https://blog.usecapsule.com/what-is-mpc/) pour améliorer la sécurité des clés privées.
Pensez à la façon dont nous protégeons habituellement nos clés privées ? Beaucoup de gens enregistrent probablement leurs phrases mnémotechniques quelque part, je suppose que c'est généralement sur leur ordinateur ou leur téléphone portable, haha. Bien sûr, si vous êtes très riche et que vous avez beaucoup d’argent dans votre portefeuille, vous pouvez effectivement utiliser une méthode plus confidentielle, comme l’utilisation d’un portefeuille matériel. Mais honnêtement, la plupart des gens collent simplement leur phrase mnémonique quelque part où ils peuvent facilement la trouver pour éviter de l’oublier complètement.
Cette façon de sauvegarder peut poser certains problèmes :
1. Si vous oubliez où vous avez mis votre phrase mnémonique, vous direz probablement au revoir aux actifs de votre portefeuille.
2. Si l'appareil sur lequel vous enregistrez vos mots mnémoniques rencontre un virus cheval de Troie, il sera difficile d'empêcher les pirates de voler vos mots mnémoniques. Certains utilisateurs peuvent diviser leurs phrases mnémoniques et les stocker séparément afin d'améliorer la sécurité. Cela peut accroître une certaine sécurité, mais cela augmentera sans doute la difficulté de gestion et le risque d'oubli.
La technologie MPC peut automatiquement diviser votre clé privée en plusieurs copies et les stocker à différents endroits. Ce n'est que lorsque vous devez utiliser la clé privée pour signer une transaction que vous pouvez les assembler pour générer une clé privée complète. être généré au cours de ce processus, maximisant ainsi la protection de la clé privée contre les fuites.
Pour l'instant (juin 2024), il n'existe que 3 Snaps de gestion de compte, à savoir Capsule, Silent Shard et Safeheron.
· Capsule utilise la clé PassKey, le mot de passe de récupération et le 2FA de l'appareil pour conserver conjointement la même clé. Si l'une est perdue, elle peut être restaurée via les deux autres.
· Silent Shard et Safeheron le font en utilisant plusieurs appareils pour installer leurs applications.
Il est difficile de dire combien d’utilisateurs Web3 ce type de Snaps peut attirer. À en juger par les données affichées sur le site Snaps, il existe en effet très peu de Snaps de ce type et le nombre d’installations n’est pas élevé.
Ils ne sont pas compliqués à utiliser et ne seront pas décrits en détail ici. Une fois l'installation terminée, il y aura une adresse supplémentaire dans votre portefeuille MetaMask :
Interopérabilité
Ce type de Snaps offre principalement une compatibilité avec les réseaux non EVM, et nous pouvons voir de nombreuses chaînes familières, notamment Solana, Cosmos, Near, Sui, etc. Actuellement, cette catégorie est la plus grande, représentant plus de la moitié de l’ensemble de l’écosystème Snaps.
Snaps multi-chaînes riches
Notifications et communication par chat
L'auteur préfère personnellement ce type de Snaps, mais à l'heure actuelle, avec autant d'applications de chat disponibles, le nombre d'utilisateurs prêts à envoyer des messages via des liens est évidemment encore minoritaire. Il est alors dommage que nous ne puissions que continuer à « combattre l'avenir ».
Sécurité Sécurité
Ce type de demande est relativement important. En particulier, MetaMask lui-même ne fait pas assez pour avertir les utilisateurs lorsqu'ils rencontrent des transactions de phishing. En tant qu'opération la plus courante dans le domaine de la crypto-monnaie et de la blockchain, les transactions sont intrinsèquement à haut risque et très sensibles. Grâce aux fonctions liées aux informations sur les transactions fournies par Snaps, les développeurs peuvent afficher des informations de transaction plus riches aux utilisateurs et fournir des analyses et des informations sur les transactions. minimiser les pertes d’actifs des utilisateurs.
Un de mes amis a vu le solde de son compte transféré par un site Web de phishing. Cependant, il n'y a eu aucun avertissement pendant tout le processus entre la connexion du portefeuille et le transfert réussi de MetaMask, je n'ai donc pas eu d'autre choix que de passer à un autre portefeuille. De plus, l’auteur ne savait pas grand-chose des Snaps à l’époque, mais lui a seulement recommandé le service KYT (https://zan.top/home/know-your-transaction?chInfo=ch_wxdyh) de ZAN pour protéger ses transactions. Espérons que ces types de Snaps sécurisés compenseront les lacunes de MetaMask lui-même. En fait, à en juger par les données affichées sur le site officiel des Snaps, les Snaps sécurisés sont en effet les plus demandés en dehors du support multi-chaînes, représentant actuellement 20 % du total.
MetaMask Snaps fournit les autorisations endowment:transaction-insight et endowment:signature-insight pour répondre aux besoins associés. Une fois que Snap a demandé les autorisations pertinentes, il peut lire la charge utile de la transaction ou de la signature d'origine lorsque l'utilisateur initie une transaction ou une signature. Snap peut l'analyser puis montrer aux utilisateurs des instructions de sécurité plus riches.
Réflexions MetaMask souhaite étendre son champ d'action à d'autres plates-formes de chaînes via Snaps, mais il peut être difficile de voir jusqu'où cela peut aller au final. Prenons l'exemple des mini-programmes dans le domaine Web2. Bien que de nombreuses applications proposent des versions de mini-programmes, les services fournis par de simples mini-programmes sont souvent loin de ceux des applications, et le suivi des nouvelles fonctions est souvent à la traîne. programmes Les utilisateurs seront dirigés directement vers leur propre application. Après la croissance explosive des mini-programmes, de plus en plus d'applications ont voulu avoir une part du gâteau et ont lancé leurs propres plates-formes de mini-programmes l'une après l'autre. Chaque entreprise a travaillé dur pour renforcer son propre fossé, et le monde du Web dans son ensemble est devenu de plus en plus ". centralisé."
Le capital dans le domaine Web3 ne sera pas supérieur à celui du Web2. Si Snaps se développe bien plus tard, d'autres portefeuilles suivront inévitablement. Si l'on en arrive réellement à ce point, les développeurs du domaine Web3 devront développer des versions correspondantes de « Snaps » pour chaque portefeuille, ce qui les rendra probablement malheureux pendant un certain temps. Cependant, si chaque fabricant construit son propre écosystème « Snaps », cela signifie presque qu’aucun d’entre eux ne possède son propre écosystème unique. Hé, cela semble coïncider avec leur étiquette « décentralisée ».
Nous pourrons peut-être prédire un peu qu'il pourrait y avoir divers "Snaps-likes" qui apparaîtront dans le futur, avec d'énormes différences de plates-formes. À l'heure actuelle, la compatibilité avec diverses plates-formes est devenue le travail quotidien des développeurs, et a finalement atteint. un point intolérable. Snaps Standard est donc né au milieu des attentes de nombreux développeurs. En même temps, il y aura divers « SIP » permettant aux gens de participer aux discussions, et la communauté est prospère...
Désolé, l'auteur semble avoir peu confiance dans MetaMask Snaps. En tout cas, il s’agit au moins d’un produit construit par un groupe de développeurs passionnés qui souhaitent résoudre un vrai problème, plutôt que d’une arnaque lancée par un groupe d’experts financiers.
Cependant, pour la plupart des utilisateurs actuels de MetaMask, Snaps n'est en effet pas une fonctionnalité particulièrement nécessaire. MetaMask devra peut-être faire davantage de travail pour le promouvoir plus efficacement.
Lien d'origine