résumé
« Pas de clé, pas de cryptomonnaie. » Qu'il s'agisse d'un portefeuille à contrat intelligent ou d'un portefeuille personnel, la clé privée vous donne un contrôle total sur vos fonds. En cas de perte de cette clé, votre portefeuille est entièrement vulnérable.
Les clés privées sont la base des portefeuilles numériques, tandis que les phrases mnémoniques permettent de récupérer ces clés et constituent actuellement un obstacle au développement des portefeuilles numériques.
La solution technologique mnémotechnique apportée par le MPC et le rétablissement social est le fondement de l'adoption de masse.
Les possibilités futures des portefeuilles et les attentes concernant l'EIP-4337.
texte
En 2010, Vitalik Buterin, le fondateur d'Ethereum, possédait un compte de démoniste dans World of Warcraft. Un jour, Blizzard décida de nerfer le démoniste, en supprimant les dégâts des sorts du sort Drain de vie. Il pleura jusqu'à s'endormir et prit alors conscience des dangers que pouvaient engendrer les serveurs centralisés. Il décida alors de quitter le jeu et de créer le réseau décentralisé Ethereum. En novembre 2022, FTX, la plus grande plateforme d'échange de produits dérivés au monde, fut épinglée pour détournement de fonds d'utilisateurs, et son fondateur, SBF, fut arrêté par la police bahaméenne et en attente d'extradition vers les États-Unis pour y être jugé.
Des joueurs de Démonistes inexplicablement trahis par Blizzard il y a 13 ans aux victimes de FTX qui réclament réparation aujourd'hui, nous prenons de plus en plus conscience de l'importance de l'expression « Pas votre clé, pas votre argent ». Même avec des organismes d'audit et de réglementation tiers, les serveurs centralisés peuvent toujours manipuler et falsifier les données à leur guise, tandis que sur les réseaux décentralisés, le registre sur la blockchain est transparent et inviolable. Tant que nous possédons la clé privée de notre compte, nous avons un contrôle absolu sur nos actifs personnels.
La décentralisation est formidable, mais quels en sont les coûts ?
En vivant au sein du réseau blockchain, nous sommes les principaux responsables de nos actifs personnels. Lors du choix d'un portefeuille sur la blockchain, la question cruciale pour la plupart des utilisateurs est la suivante : quel niveau de risque et de responsabilité suis-je prêt à assumer pour mes actifs ? Prenons l'exemple des institutions financières traditionnelles :
Pour les utilisateurs qui privilégient la sécurité, ils préfèrent garder leur argent dans de grandes banques bien établies avec des procédures d'ouverture de compte fastidieuses : la sécurité perçue (risque) des fonds dans les grandes banques > la responsabilité perçue des procédures d'ouverture de compte strictes.
Pour les utilisateurs privilégiant la simplicité d'utilisation, il suffit de conserver leur argent sur WeChat et Alipay. Ces plateformes facilitent les transactions entre particuliers et l'inscription ne requiert qu'une pièce d'identité et un numéro de téléphone portable. Bien que WeChat et Alipay soient deux sociétés cotées en bourse et non des banques d'État, la facilité d'utilisation de WeChat (responsabilité) prime sur son statut opérationnel (risque).
Pour en revenir au Web3, il existe deux façons de stocker des actifs : les portefeuilles avec conservation et les portefeuilles sans conservation. Auparavant, il convient de présenter brièvement les principes des portefeuilles :
Portefeuille et clé privée
La création d'un compte consiste essentiellement à générer une clé privée. Sur Ethereum, il existe deux types de comptes : les comptes EOA (External Owned Accounts) et les comptes de contrat (contrats intelligents déployés sur la blockchain via des comptes EOA).
Prenons l'exemple d'un compte EOA,

Adresse EOA
En générant un nombre aléatoire de 256 bits comme clé privée, puis en utilisant l'algorithme SHA3 pour dériver la clé publique correspondante, et enfin en calculant l'adresse (les 20 derniers octets du hachage original) à l'aide de keccak-256, on obtient un compte personnel associé à une clé privée unique. Au cours de ce processus, la clé privée génère 12 phrases mnémoniques, qui peuvent être utilisées pour la reconstituer.

Actuellement, les portefeuilles dApp les plus courants sur les principales blockchains sont les portefeuilles EOA, tels que Metamask, Phantom (Solana), BSC Wallet (BSC) et Keplr (Cosmos).
2. Les comptes intelligents, quant à eux, sont des codes EVM déployés sur la blockchain via des comptes EOA, permettant diverses fonctionnalités. Cependant, contrairement aux comptes EOA, les comptes de contrat ne possèdent pas de clés privées et ne peuvent s'exécuter indépendamment ; ils ne peuvent être invoqués que par des comptes EOA. Par conséquent, le contrôle final d'un portefeuille de contrat intelligent est déterminé par la clé privée du compte EOA utilisé pour déployer le contrat. En ce sens, les comptes de contrats intelligents sont également contrôlés par des clés privées. Toute adresse de portefeuille correspondant à un contrat est un portefeuille de contrat intelligent.
Les portefeuilles de contrats intelligents sont divisés en portefeuilles multisignatures et en portefeuilles de comptes abstraits :
Portefeuilles multisignatures : Dès 2013, les portefeuilles multisignatures étaient devenus la solution privilégiée des fondations. Cette technologie, initialement développée au sein de l’écosystème Bitcoin, bénéficie désormais d’excellents portefeuilles multisignatures sur Ethereum (comme Gnosis Safe). La Fondation Ethereum utilise un portefeuille multisignatures 4 sur 7 (un contrat intelligent est créé pour gérer les fonds, contrôlé par sept comptes EOA ; seules les signatures d’au moins 4 des 7 comptes EOA sont nécessaires pour valider une transaction).
L'abstraction de compte utilise un seul portefeuille EOA pour contrôler l'adresse du contrat, simulant ainsi un EOA avec des contrats intelligents. Argent et Loopring, par exemple, sont des portefeuilles d'abstraction de compte.

Adresse du contrat Apecoin
3. Une fois le compte créé, nous ne pouvons participer à aucune activité sur la chaîne sans la participation de la clé privée.
D'après l'introduction du professeur Liao Xuefeng :
Dans un réseau décentralisé, il n'existe aucune institution de confiance comme une banque. Pour qu'une transaction puisse avoir lieu entre deux nœuds, un mécanisme de transactions sécurisées dans un environnement de confiance zéro doit être mis en place.
Supposons que Xiaoming et Xiaohong souhaitent conclure un accord. Une solution serait que Xiaohong prétende que Xiaoming lui a donné 10 000 yuans, ce qui est évidemment invraisemblable.
Une autre façon de valider une transaction consiste pour Xiaoming à déclarer avoir donné 10 000 yuans à Xiaohong. Si l’on peut vérifier que cette déclaration provient bien de Xiaoming et qu’il possède effectivement 10 000 yuans, la transaction est considérée comme valide.
Comment pouvons-nous vérifier les dires de Xiaoming ?
La signature créée à l'aide de la clé privée permet au vérificateur de confirmer l'auteur de la transaction : toute personne peut vérifier la signature numérique et le résultat du transfert en les comparant à la clé publique. Étant donné que seul Xiaoming, détenteur de la clé privée, peut initier cette transaction, il est possible de confirmer que celle-ci a bien été effectuée par Xiaoming.
Sur le réseau Ethereum, ces transactions incluent non seulement les transferts P2P, mais aussi les appels aux contrats intelligents.
Par conséquent, lorsque nous utilisons un portefeuille dans notre vie quotidienne, nous utilisons essentiellement la plateforme du portefeuille pour accéder à notre clé privée locale afin de compléter la signature sur la chaîne.
Sécurité des portefeuilles, barrières à l'entrée et résistance à la censure
Tout, dans un portefeuille numérique, repose sur la clé privée. Un portefeuille est essentiellement un outil permettant de : 1. créer, 2. stocker, 3. utiliser, 4. sauvegarder et 5. restaurer des clés privées. La solution la plus courante pour sauvegarder et restaurer une clé privée est une phrase mnémonique, composée de 12 ou 24 mots, qui apparaît lors de l'enregistrement du portefeuille.
La phrase mnémonique permet de retrouver la clé privée en clair. Lorsqu'un utilisateur transfère son portefeuille sur un nouvel appareil, il lui suffit de saisir cette phrase dans l'application portefeuille pour retrouver sa clé privée et ainsi reprendre le contrôle de son portefeuille.
Pour les utilisateurs, clé privée = phrase mnémonique, mais ces deux concepts restent différents dans l'utilisation quotidienne d'un portefeuille : la phrase mnémonique est un système de sauvegarde et de récupération de la clé privée de l'utilisateur.
Une analogie : une phrase mnémotechnique est comme une copie de votre clé. Si vous perdez votre clé, vous pouvez utiliser la phrase mnémotechnique pour en générer une identique.

Puisque la clé privée est notre seul identifiant pour interagir avec le réseau blockchain, il est de notre responsabilité de protéger la clé privée et la phrase mnémonique de notre portefeuille. La méthode la plus sûre pour créer un compte consiste, bien sûr, hors ligne, à générer sa propre adresse à l'aide d'un code qui exécute un générateur de nombres aléatoires (pour la clé privée) et l'algorithme SHA256. Cependant, cette méthode est sans aucun doute trop complexe et inadaptée à la plupart des utilisateurs. Par conséquent, lors du choix d'un portefeuille, les utilisateurs doivent prendre en compte trois critères : la sécurité, l'accessibilité et la résistance à la censure.
Sécurité : Combien coûte à un pirate informatique de déchiffrer la clé privée/phrase mnémonique d'un portefeuille ?
Prenons l'exemple des portefeuilles matériels : les pirates informatiques ne peuvent obtenir la clé privée d'un utilisateur que par hameçonnage ou vol hors ligne.
Seuil : À quel point le portefeuille est-il facile à utiliser ?
L'inscription à Metamask exige que les utilisateurs enregistrent 12 phrases mnémoniques, qu'il faut ressaisir à chaque changement d'appareil. En revanche, l'inscription à la plateforme Binance et la connexion, quel que soit l'appareil utilisé, se font en un seul clic grâce à l'adresse e-mail.
Résistance à la censure : l’utilisateur contrôle-t-il finalement son portefeuille ?
Si une application de portefeuille enregistre la phrase mnémonique importée par l'utilisateur en clair et la télécharge sur un serveur, des pirates pourraient potentiellement voler le portefeuille de l'utilisateur en s'introduisant dans le serveur. Même sans attaque informatique, il est possible que l'équipe du projet Slope soit impliquée dans le vol, car elle ne respecterait pas les normes de résistance à la censure.
Les portefeuilles se divisent principalement en deux catégories : les portefeuilles non dépositaires et les portefeuilles dépositaires centralisés.
Portefeuilles non dépositaires : les utilisateurs conservent eux-mêmes leurs phrases mnémoniques.
Prenons l'exemple du portefeuille numérique MetaMask. MetaMask est un portefeuille de cryptomonnaies non-custodial (ou auto-custodial). Cela signifie que MetaMask ne stocke aucune donnée relative au portefeuille ; les données de la clé privée résident localement dans le navigateur ou l'application mobile. Lorsqu'un utilisateur doit effectuer des signatures sur la blockchain, MetaMask récupère la clé privée depuis un fichier local. Cependant, si la clé privée et la phrase mnémonique d'un utilisateur sont perdues ou volées, MetaMask ne pourra pas l'aider à les récupérer, et ses actifs seront définitivement perdus.
b. Les portefeuilles matériels, largement considérés comme les plus sûrs (comme Ledger), utilisent un dispositif physique pour générer hors ligne la clé privée et l'adresse du portefeuille. La clé publique de cette adresse est ensuite importée dans un portefeuille en ligne tel que MetaMask. Lorsqu'une signature est requise, elle est vérifiée hors ligne via le matériel Ledger. La clé privée n'étant jamais transmise à Internet, il est très difficile pour les pirates de la voler. Cependant, si l'utilisateur perd sa phrase mnémonique ou est victime d'hameçonnage, la protection du portefeuille matériel devient inefficace et ses actifs restent vulnérables.
portefeuille de dépôt
Les portefeuilles d'échange comme Coinbase et Binance utilisent un système de portefeuille custodial. La différence réside dans le fait que le compte affiché sur Coinbase ne montre pas que l'utilisateur détient ses propres clés privées ; il s'agit simplement des données de transaction affichées dans l'application Coinbase, et non des actifs réels visibles sur la blockchain, comme sur Etherscan. On peut comprendre que l'utilisateur fait confiance à Coinbase et lui confie ses actifs plutôt que d'en être le propriétaire. Par conséquent, les comptes Coinbase ne peuvent pas interagir avec des dApps comme Uniswap.

En général, pour les portefeuilles custodiaux, l'équipe du projet détient la phrase mnémonique pour le compte de l'utilisateur, et les obstacles à l'enregistrement et à la restauration du portefeuille sont faibles. Cependant, la sécurité du portefeuille dépend de l'équipe du projet et non de l'utilisateur, et cette dernière en a le contrôle effectif. Pour les portefeuilles non custodiaux, la phrase mnémonique est en possession de l'utilisateur, et les obstacles à l'enregistrement et à la restauration du portefeuille sont élevés, mais la sécurité et la résistance à la censure sont très importantes.

Lacunes des systèmes mnémotechniques
Avec l'évolution constante du Web3, les besoins et les cas d'utilisation se multiplient, et l'écosystème on-chain est en plein essor. L'été 2021, marqué par l'engouement pour la DeFi, a notamment attiré de nombreux utilisateurs qui, initialement, négociaient uniquement sur des plateformes d'échange, souhaitant migrer leurs actifs vers la blockchain. En mars 2022, MetaMask comptait 30 millions d'utilisateurs actifs mensuels. Parallèlement, les phrases mnémoniques, solution de récupération de compte la plus répandue, sont devenues la cible privilégiée des pirates informatiques. Pour les utilisateurs lambda, les vols de portefeuille les plus fréquents sont dus à la copie de la phrase mnémonique depuis le presse-papiers ou à l'accès à des sites web d'hameçonnage qui dérobent les fichiers de clés privées stockés localement.
Lorsqu'un pirate informatique lance une attaque, il doit évaluer le coût de l'attaque par rapport aux gains potentiels. Toutes les clés privées (12 phrases mnémoniques) sont des sous-ensembles du dictionnaire ; en explorant exhaustivement toutes les permutations du dictionnaire, le pirate pourrait obtenir tous les actifs de la blockchain. Cependant, ce retour sur investissement est faible ; si le dictionnaire était permuté à l'aide d'un algorithme de force brute pour créer toutes les combinaisons possibles…
Actuellement, les phrases mnémotechniques courantes sont composées de 12 mots anglais, et le vocabulaire contient un total de 2048 mots. Autrement dit, 2048^12 = 5,44e39 combinaisons possibles (54445178707350000000000000000000000000000).
Si une telle puissance de calcul massive était utilisée, les pirates informatiques pourraient déjà contrôler le réseau Bitcoin grâce à une attaque à 51 %.
Par conséquent, une méthode plus lucrative pour les pirates informatiques consiste à obtenir les phrases mnémoniques des utilisateurs par le biais du phishing ou à voler les clés privées stockées sur les appareils locaux des utilisateurs.
Pour reprendre l'exemple de Metamask, les pirates peuvent obtenir la phrase mnémonique et la clé privée stockées à deux endroits :
mots mnémotechniques
a. Après la création d'un portefeuille, il est important de conserver précieusement la phrase mnémonique générée. Il est généralement conseillé de la noter sur une feuille de papier et de la garder en lieu sûr. Cependant, certaines personnes, par paresse, peuvent la copier-coller dans un document Word ou même dans l'historique d'une conversation WeChat.
b. Si un pirate a déjà installé un logiciel malveillant sur le téléphone ou l'ordinateur de l'utilisateur et surveille constamment son presse-papiers, il peut dérober la clé privée nouvellement créée. Par exemple, QuickQ VPN a été pris en flagrant délit de copie du presse-papiers des utilisateurs afin de voler leurs phrases mnémoniques.
Clé privée
a. De plus, Metamask chiffre et stocke généralement la clé privée sur l'appareil local où le portefeuille a été créé, pour un accès facilité. Si l'extension Metamask est installée sur Chrome :
i. Emplacement de stockage sous Windows : emplacement de stockage de la clé privée de Metamask :
C:\Utilisateurs\NOM_UTILISATEUR\AppData\Local\Google\Chrome\User Data\Default\Local Extension Settings\nkbihfbeogaeaoehlefnkodbefgpgknn
ii. Emplacement de stockage sur Mac : Bibliothèque > Application Support > Google > Chrome > Par défaut > Paramètres des extensions locales > nkbihfbeogaeaoehlefnkodbefgpgknn
b. Autrement dit, la sécurité de Metamask dépend de celle de Chrome. Une fois le pare-feu de Chrome compromis, les pirates peuvent obtenir l'adresse et la clé privée de l'utilisateur et transférer tous ses actifs. C'est pourquoi les portefeuilles matériels sont plus sûrs que les portefeuilles externes comme Metamask.
Au-delà de Metamask, certains portefeuilles non custodiaux n'offrent même pas une résistance élevée à la censure, comme l'illustre l'incident de vol de portefeuille Slope sur Solana : lorsque l'application mobile Slope crée un portefeuille Phantom, elle envoie une phrase mnémonique via TLS à son serveur Sentry, qui est ensuite stockée en clair. Cela signifie que toute personne ayant accès à Sentry peut accéder à la clé privée de l'utilisateur.
Outre ces incidents, de nombreux autres problèmes de sécurité liés aux portefeuilles électroniques méritent notre attention :
Compte EOA volé
Le portefeuille du fondateur de Fenbushi Capital a été volé :
Le vol du portefeuille Chenbo a été motivé par la fuite de sa phrase mnémonique. Le portefeuille utilisé au moment du vol était Trust Wallet, et le montant dérobé comprenait environ 38,23 millions de dollars américains (USDC), 1 607 ETH, 720 000 USDT et 4,13 BTC.
Le portefeuille Wintermute a subi une perte d'environ 160 millions de dollars suite à une attaque. Le vol est dû au fait que Wintermute utilisait Profanity pour créer le portefeuille Vanity (commençant par 0x0000000, ce qui permet de réduire les frais de gaz lors de l'appel de contrats intelligents).
L'option « Profanity » permet de créer des comptes avec des effets visuels spéciaux, comme des comptes commençant ou se terminant par des caractères spéciaux. En revanche, certains développeurs l'utilisent pour générer des comptes commençant par une série de zéros.
Après avoir obtenu la première clé privée 32 bits, SeedPrivateKey, Profanity parcourt cette clé à l'aide d'un algorithme fixe pour trouver l'adresse du compte recherché, jusqu'à 2 millions de fois (ces chiffres proviennent d'un article publié par 1inch). Lorsque la clé publique est connue, il est possible d'obtenir SeedPrivateKey en effectuant une recherche exhaustive entre SeedPrivateKey et Iterator, ce qui nécessite environ 2^32 fois 2 millions de calculs. Les cartes graphiques hautes performances peuvent accomplir cette tâche en quelques jours, voire en quelques heures.
Compte professionnel volé
L'adresse de déploiement du contrat de Paraswap a été volée :
D'après le rapport d'enquête de SlowMist, l'adresse du pirate (0xf358..7036) a accédé aux clés privées des serveurs de déploiement ParaSwap et QANplatform. À titre de test, le pirate a retiré 1 000 $ du serveur ParaSwap et les a transférés entre ce serveur et l'adresse du serveur QANplatform. Notre analyse de l'adresse 0xf358..7036, réalisée à l'aide d'une plateforme de lutte contre le blanchiment d'argent (LCB-FT), a révélé que le pirate a également dérobé le serveur de déploiement SolaVerse ainsi que plusieurs autres adresses premium. À ce jour, le préjudice s'élève à plus de 170 000 $.
Le site Ronin Bridge a été piraté en mars de cette année, entraînant la perte de 173 600 ETH et de 25,5 millions d’USDC.
Le pirate a créé une entreprise fictive et a contacté un ingénieur senior d'Axie via LinkedIn et WhatsApp. Il l'a appâté avec une offre d'emploi alléchante, a organisé un entretien et lui a proposé un contrat très lucratif. Cependant, le dossier d'offre était compromis, permettant au pirate d'infiltrer le système d'Axie et de dérober la clé privée de l'ingénieur pour l'adresse EOA utilisée pour déployer le contrat.
En plus d'être une cible privilégiée des pirates informatiques, les systèmes de phrases mnémotechniques constituent également une barrière importante à l'entrée pour les nouveaux utilisateurs souhaitant accéder au Web3.
Lors de la création d'un portefeuille numérique, pour des raisons de sécurité, il est recommandé de noter manuellement 12 mots. Il est fortement déconseillé de photographier et de conserver cette feuille blanche. Même en utilisant un logiciel de gestion de mots de passe open source fiable (tel que 1Password), le copier-coller est à proscrire en raison du risque de vol de données.
Lors de la restauration de votre portefeuille, c'est-à-dire lors du changement de votre appareil de connexion, vous devez sortir cette feuille de papier vierge et saisir à nouveau les 12 mots.
L'idée de protéger une simple feuille de papier vierge avec 12 mots inscrits dessus paraît incroyablement absurde et contraire à l'esprit du Web3 : nous envisageons un avenir au sein du métavers, et pourtant la sécurité de nos comptes repose sur une feuille de papier vierge, une invention datant de la dynastie Song. Ces deux étapes suffisent à dissuader la plupart des utilisateurs du Web2, car dans cet univers, la plupart des inscriptions se font en un clic grâce à un compte Google ou iOS.
Nouveau plan de récupération de compte sans phrase mnémotechnique
Pour faciliter l'accès aux portefeuilles numériques et attirer davantage d'utilisateurs vers le Web3, il est nécessaire d'utiliser des solutions de connexion via les réseaux sociaux, comme sur le Web2, sans compromettre la sécurité des portefeuilles ni leur résistance à la censure. Cela requiert une solution de récupération de compte plus pratique et sécurisée, et toutes les discussions actuelles convergent vers une solution optimale : les phrases mnémoniques. Actuellement, deux principaux schémas d'implémentation existent pour les phrases mnémoniques : le schéma MPC et le schéma de récupération via les réseaux sociaux.
Schéma MPC : La clé privée est générée conjointement par plusieurs parties, évitant ainsi les points de défaillance uniques causés par la perte ou le vol de la clé privée de l’utilisateur.
On peut l'interpréter ainsi : MPC est un système d'authentification à trois facteurs (3FA), où chaque méthode d'authentification utilise un fragment de clé. Le système ne repose pas sur une clé unique ; si un fragment est perdu, l'utilisateur peut le récupérer grâce à d'autres méthodes d'authentification.
Solution de récupération sociale : les fonds sont stockés dans un contrat intelligent et gérés par le portefeuille EOA via un système de signature multiple/unique, avec un tiers de confiance désigné comme garant. En cas de perte de la clé privée du portefeuille EOA, le contrôle du contrat est transféré par ce tiers, dispensant ainsi les utilisateurs de la nécessité de sauvegarder une phrase mnémonique.
Les discussions actuelles opposent généralement la récupération sociale et les portefeuilles d'abstraction de compte. Il est important de noter que la récupération sociale est une norme et une fonctionnalité des contrats intelligents, proposée dans l'EIP-2429 en 2019, qui permet aux utilisateurs de modifier la clé privée de contrôle du contrat par l'intermédiaire d'un tuteur. L'EIP-4337, récemment abordée, concerne quant à elle l'abstraction de compte, que nous examinerons dans les chapitres suivants.
Solution MPC
Le schéma MPC repose sur la création collaborative de fragments de clés privées par plusieurs parties lors de la création d'un portefeuille EOA. En 2019, un article intitulé « Two-Party Elliptic Curve Digital Signature Based on Secure Multi-Party Computation » a été publié lors de la conférence Crypto 2019, officialisant ainsi la mise en œuvre du MPC. MPC signifie « Secure Multi-Party Computation » (calcul multipartite sécurisé).
Le calcul multipartite (MPC) est une branche de la cryptographie issue des travaux pionniers d'Andrew C. Yao il y a près de 40 ans. Grâce au MPC, la génération de clés privées n'est plus l'apanage d'un seul interlocuteur, mais peut être effectuée conjointement et détenue par un groupe de n parties (n clés privées fragmentées) qui se méfient les unes des autres. Cette technologie est connue sous le nom de génération de clés distribuée (DKG).
La génération de clés distribuées peut être effectuée de manière à permettre différents types de structures d'accès : le cadre conventionnel « t sur n » (une signature valide est prouvée tant que t fragments de clé privée sur n participent à la signature) peut résister à jusqu'à t défaillances arbitraires dans les opérations liées à la clé privée sans compromettre la sécurité.
Les schémas de signature à seuil (TSS) sont un terme utilisé pour décrire la combinaison de la génération de clés distribuées (DKG) et des signatures distribuées.
Par ailleurs, si une partie perd ou divulgue des fragments de sa clé privée, la solution MPC prend en charge la récupération et le remplacement de ces fragments, assurant ainsi la sécurité du compte sans le modifier.
La solution MPC garantit que la clé privée complète n'est jamais présente lors de la création, de l'utilisation, du stockage, de la sauvegarde et de la restauration du compte. Grâce à la génération et à la conservation conjointes de fragments de clé privée par plusieurs parties et à un système de signature à seuil TSS « t sur n », elle offre une plus grande facilité d'utilisation que les portefeuilles à génération et conservation de clé privée centralisées, tels que Metamask. Sécurité et résistance à la censure : comparée aux solutions traditionnelles à phrase mnémonique, elle améliore considérablement la sécurité des utilisateurs, rivalisant même avec les portefeuilles matériels.
Sécurité
a. Absence de clé privée/phrase mnémonique : lors de la génération du portefeuille, chaque partie (équipe du projet et utilisateur) génère des fragments de clé privée via MPC. La clé privée complète n’est jamais utilisée. MPC peut donc être considéré comme un portefeuille véritablement sans clé privée.
b. Le coût du piratage augmente considérablement : même si un pirate parvient à infiltrer l’appareil local d’un utilisateur, il ne peut obtenir que des fragments de la clé privée. Ce n’est que lorsqu’il prend le contrôle à la fois du serveur du fournisseur du portefeuille et de l’appareil local de l’utilisateur qu’il peut s’emparer des actifs de ce dernier.
seuil:
Connexion via les réseaux sociaux : les utilisateurs peuvent créer un compte sur le portefeuille MPC via des méthodes d’authentification telles que le courrier électronique (en supposant que le portefeuille MPC utilise un schéma de signature 2/2, c’est-à-dire que deux fragments de clé privée doivent être utilisés simultanément pour signer).
Résistance à la censure :
Les institutions centralisées (fournisseurs de portefeuilles/dispositifs de sauvegarde) ne détiennent que des fragments de la clé privée du compte et ne peuvent pas contrôler le compte de l'utilisateur.
plan de rétablissement social
La solution de récupération sociale est déployée sur un compte de contrat intelligent. Un portefeuille de contrat intelligent peut être vu comme un contrat déployé sur la blockchain utilisant un compte EOA pour gérer les fonds. À l'instar d'un contrat intelligent classique, le portefeuille EOA du déployeur contrôle le contrat intelligent.
Les portefeuilles de contrats intelligents ne constituent pas une solution sans clé privée car le portefeuille EOA de contrôle contient une clé privée ;
Cependant, les portefeuilles de contrats intelligents peuvent modifier la clé privée de signature d'un utilisateur grâce à des systèmes de récupération sociale ;
Le plan de rétablissement social prévoit que votre tuteur remplace vos clés après leur perte.
Deux ans après la proposition EIP-2929, en 2021, Vitalik a proposé pour la première fois une application de portefeuille pour la récupération sociale au sein du forum :
Lors de la création d'un portefeuille de contrat intelligent, les utilisateurs peuvent désigner d'autres adresses EOA comme « gardiennes ». L'adresse « gardienne » doit être signée et confirmée sur la blockchain et s'acquitter des frais de gaz.
Le compte EOA de l'utilisateur sert de « clé privée de signature » et peut être utilisé pour approuver les transactions ;
Au moins trois (ou plus) comptes EOA « gardiens » ne peuvent pas approuver les transactions, mais ils peuvent modifier la « clé privée de signature ». La modification de la « clé privée de signature » exige également que le « gardien » paie des frais de gaz pour la confirmation de la signature.
La clé privée de signature a pour fonction d'ajouter ou de supprimer des gardiens, mais l'ensemble du processus prend un certain temps (généralement 1 à 3 jours).
Au quotidien, les utilisateurs peuvent se servir de portefeuilles à contrats intelligents avec récupération sociale (comme Argent et Loopring) comme de portefeuilles classiques, en confirmant les transactions avec leurs clés de signature. Chaque transaction peut ainsi être finalisée rapidement en une seule confirmation, à l'instar des portefeuilles traditionnels (comme Metamask).
a. Créer une clé privée
La création de clés privées pour un portefeuille abstrait de compte est identique à celle de Metamask.
b. Protégez votre clé privée
Étant donné que le portefeuille EOA contrôlant le contrat n'est utilisé que comme « clé privée de signature » et que le contrôle peut être transféré par l'intermédiaire d'un tuteur, les utilisateurs n'ont pas besoin de conserver leur phrase mnémonique en lieu sûr.
c. Utilisation de la clé privée
○ Les portefeuilles de contrats gèrent également les transferts/transactions, mais comme ils nécessitent l'appel de contrats, ils sont plus chers que les portefeuilles MPC et les portefeuilles traditionnels ;
Cependant, comme son fonctionnement repose sur l'appel d'un contrat, il prend en charge les paiements en jetons non natifs tels que l'USDC/USDT (par exemple, l'ETH est le jeton natif d'Ethereum utilisé pour payer les frais de gaz). Cela simplifiera considérablement l'intégration pour les nouveaux acteurs du Web3 : en principe, l'équipe du projet échange l'USDC de l'utilisateur contre de l'ETH au cours de la même transaction, puis prend en charge les frais de gaz.
d. Sauvegardez la clé privée
L'étape de sauvegarde de la clé privée pour les portefeuilles abstraits de compte est remplacée par un « gardien », mais cela est contre-intuitif et coûteux :
① Lorsqu'un utilisateur utilise web3 pour la première fois et souhaite enregistrer un portefeuille, il doit trouver trois amis de confiance qui possèdent déjà un portefeuille EOA sur web3 et leur demander de payer les frais de gaz pour devenir ses tuteurs.
2. Si un utilisateur souhaite rembourser les frais de gaz d'un ami en effectuant trois transferts depuis un portefeuille nouvellement créé, la création de ce portefeuille impliquerait le paiement de six fois les frais de gaz. Or, la création d'un compte portefeuille MPC est gratuite.
e. Récupérer la clé privée
Si un utilisateur perd sa clé de signature, il peut demander une récupération sociale. Il doit contacter son tuteur légal et lui faire signer une transaction spéciale (les frais de gaz étant à la charge de l'utilisateur ou du tuteur) afin de remplacer la clé publique de signature enregistrée dans le contrat du portefeuille par une nouvelle signature. Cette procédure est beaucoup plus simple : le tuteur légal peut consulter la demande de récupération et la signer en se rendant sur une page web, telle que security.loopring.
Cependant, en matière de sécurité des clés privées, il n'atteint pas le niveau des portefeuilles MPC.
Le coût d'une attaque : les pirates peuvent toujours obtenir la clé privée complète en infiltrant l'appareil de l'utilisateur. Autrement dit, l'utilisation d'un portefeuille à contrat intelligent offre simplement aux utilisateurs un moyen supplémentaire de récupérer leur clé privée en cas de perte.
Faible résistance à la censure : Le plan de redressement social exigeant la désignation d’un « tuteur », il est possible que ces « tuteurs » s’entendent pour commettre des actes répréhensibles.
Les principaux risques liés au rétablissement social sont :
① Collusion : Si certains utilisateurs savent qu’ils font partie d’une opération de récupération, ils peuvent être intéressés à exécuter l’attaque de récupération ;
② Attaque ciblée : des agents externes peuvent connaître le propriétaire de la récupération et cibler le point faible nécessaire pour exécuter une attaque de récupération ;
③ Exposition générale : Si un attaquant parvient à infecter une grande base d'utilisateurs et à obtenir l'accès à plusieurs identités, il peut également provoquer des effets secondaires chez les utilisateurs non affectés en restaurant l'accès.
Approche MPC vs approche de rétablissement social : sécurité, barrières à l’entrée et résistance à la censure

L'avenir de l'adoption massive : les portefeuilles Web3
Grâce à la solution de récupération de compte sans mnémonique, nous pouvons envisager l'avènement d'une nouvelle génération de portefeuilles Web3, permettant l'inscription et la connexion par adresse e-mail. Nous avons sélectionné des projets représentatifs de portefeuilles MPC et de portefeuilles d'abstraction de compte pour analyse : tous deux ont permis un accès utilisateur aisé grâce à des méthodes sans mnémonique, et nous les avons évalués séparément en termes de sécurité et de résistance à la censure.
#Bitizen
Parmi les portefeuilles MPC, Bitizen, qui offre une résistance à la censure relativement élevée et une grande facilité d'utilisation, utilise une solution TSS (Third-Side Security) 2/3. Analysons sa sécurité et sa résistance à la censure :
Sécurité:
a. Créer
Pour garantir une auditabilité renforcée, après avoir terminé l'enregistrement du portefeuille, les utilisateurs peuvent utiliser un deuxième appareil pour sauvegarder des fragments de clé privée via Bluetooth, en utilisant un schéma 2/3TSS : serveur Bitizen, appareil local de l'utilisateur et deuxième appareil de l'utilisateur.
b. Stockage
Comme aucune clé privée complète n'a été générée lors de la création du portefeuille, il n'y a pas non plus de phrase mnémonique. Le compte Bitizen de l'utilisateur sera lié à son espace de stockage cloud et à son adresse e-mail. L'utilisateur n'aura besoin de se connecter qu'avec son adresse e-mail pour utiliser son portefeuille Bitizen normalement.
c. Utiliser
① Les utilisateurs peuvent signer les fragments de clé privée stockés dans le cloud Bitizen et sur l'appareil local en les obtenant par authentification par reconnaissance faciale (2/3).
② Une fois que le deuxième appareil a sauvegardé le fragment de clé privée via Bluetooth, il peut être stocké complètement hors ligne et n'est pas nécessaire au quotidien (la signature ne doit être effectuée que par le serveur de Bitizen et l'appareil principal de l'utilisateur).
d. Sauvegarde
① Sauvegardez le fragment de clé privée locale sur le disque cloud de l'utilisateur ;
2. Lorsqu'un utilisateur doit se connecter depuis un autre appareil, il lui suffit de s'authentifier par e-mail et reconnaissance faciale. Bitizen lui demandera ensuite de restaurer une sauvegarde d'un fragment de clé privée depuis son espace de stockage cloud.
e. Récupération
① De même, si l’appareil d’un utilisateur est perdu ou si les fichiers locaux de Bitizen sont supprimés accidentellement, les fragments de clé privée peuvent être récupérés via le stockage cloud ;
②Lorsqu'un utilisateur est incapable de se connecter au lecteur cloud, Bitizen recalculera le fragment de clé privée en utilisant le fragment de clé privée sur le serveur et le deuxième périphérique de sauvegarde de l'utilisateur, permettant à l'utilisateur de reprendre une utilisation normale.

Source : Bitizen Résistance à la censure :
Le système TSS 2/3 offre aux utilisateurs un contrôle absolu sur leurs portefeuilles (2/3 des fragments de clé privée sont entre les mains de l'utilisateur), de sorte que même si Bitizen fait faillite ou disparaît, les utilisateurs peuvent toujours exercer un contrôle normal sur leurs portefeuilles.
#Unipass
Prenons Unipass comme exemple : le portefeuille abstrait de compte adopte une approche de contrat intelligent + portefeuille MPC, combinant les avantages des deux solutions :
Pour les transactions, vous pouvez utiliser n'importe quel jeton pris en charge par le portefeuille (jetons courants et très liquides) pour payer les frais de gaz ;
Pour le stockage des clés privées, les technologies MPC (2/2) et TSS sont utilisées afin de les générer de manière distribuée, empêchant ainsi tout accès non autorisé à la clé privée par un pirate informatique. La clé privée est divisée en deux parties : l’une est stockée sur le serveur d’Unipass et l’autre sur l’appareil local de l’utilisateur.
Pour récupérer les clés privées, Unipass utilise le protocole DKIM (DomainKeys Identified Mail), qui permet aux utilisateurs de désigner une adresse e-mail comme « gardien » plutôt qu'une autre adresse EOA. Cela simplifie considérablement la recherche d'un gardien : ce dernier n'a pas besoin d'utiliser la blockchain, seule son adresse e-mail est requise.

Source : Unipass
Faible barrière à l'entrée → Forte applicabilité
Les portefeuilles à faible barrière ne constituent pas l'objectif final des applications de portefeuille ; l'infrastructure Web3 actuelle reste en retrait par rapport à la finance Web2 traditionnelle. Les fonctionnalités de débit automatique et de paiement automatique récurrent de Visa offrent un confort considérable aux utilisateurs, mais leur implémentation sur Ethereum demeure complexe. L'abstraction de compte pourrait bien être la prochaine révolution en matière de portefeuilles blockchain : Visa a publié un article, « Paiements automatiques pour portefeuilles autogérés », explorant l'utilisation du portefeuille d'abstraction de compte Argent sur le réseau StarNet pour réaliser des paiements automatisés et programmables, permettant ainsi aux utilisateurs d'effectuer des paiements automatiquement à l'aide de portefeuilles autogérés sans avoir à signer chaque transaction. Mais comment un portefeuille d'abstraction de compte est-il concrètement implémenté ? Ce concept a en réalité une longue histoire.
Abstraction des comptes - De l'EIP-2938 à l'EIP-4337
Avec l'introduction de l'EIP-4337, la question de l'abstraction des comptes est revenue sur le devant de la scène. Les solutions de récupération sociale et l'abstraction des comptes (via des contrats intelligents comme portefeuilles EOA) avaient été proposées avant l'EIP-1271 et ont été implémentées avec succès par des portefeuilles comme Argent dans des environnements de couche 2 tels que StarkNet. Quelles sont les différences entre la solution EIP-4337 (abstraction des comptes), récemment au cœur de vifs débats, et l'EIP-4337 elle-même ?
De l'EIP-86 en 2015 au récent sujet brûlant EIP-4337, l'idée centrale des développeurs s'articule autour des « contrats en tant que portefeuilles ». L'abstraction des comptes permet aux utilisateurs d'interagir avec le réseau principal de manière intuitive, offrant un contrôle précis des permissions des comptes clés. Le code des comptes EOA étant déjà défini, il est impossible de concevoir des portefeuilles EOA modulaires et fonctionnels, comme l'ajout de transferts par lots ou de fonctionnalités de récupération sociale. C'est pourquoi l'attention s'est portée sur les contrats intelligents. La proposition la plus proche de l'EIP-4337 est l'EIP-2938, qui définit également un nouveau protocole de fonctionnement pour les contrats intelligents, mais exige des modifications au niveau du consensus, ce qui complique la maintenance pour les développeurs. La principale innovation de l'EIP-4337 est que le réseau principal ne nécessite aucune modification du protocole au niveau du consensus.
Dans EIP-1237, la signature des adresses de contrat nécessite la signature d'un Relayer centralisé, mais le Relayer est centralisé et les normes des différents Relayers sont incohérentes, ce qui le rend incompatible avec plusieurs chaînes/plusieurs dApps.
L'EIP-4337 propose de remplacer Relayer par Bunbler. Bunbler est un système multipartite décentralisé qui améliore la résistance à la censure des portefeuilles de contrats intelligents et unifie la norme de signature, ce qui peut considérablement simplifier l'intégration pour les développeurs.
L'EIP-4337 aura un impact à l'avenir, mais n'améliore pas l'expérience utilisateur actuellement. Par conséquent, les débats passionnés autour de cette solution se limitent aux investisseurs en capital-risque et aux développeurs, à l'instar de Move avec Aptos, qui avait suscité l'enthousiasme de ces mêmes acteurs. Pour les utilisateurs de web3, le choix du langage de programmation (Solidity ou Move) pour la couche 1 n'a actuellement aucune incidence significative sur leur expérience.
① Après tout, Argent, un portefeuille abstrait de comptes, a levé 56,2 millions de dollars depuis 2018 et, après quatre ans de développement, ne compte que 74 000 adresses. De même qu'après l'essor de la DeFi, les utilisateurs de cryptomonnaies ont délaissé les plateformes d'échange au profit de Metamask pour miner des cryptomonnaies à rendement élevé, ce qui a contribué à la popularité de Metamask, la tendance actuelle des portefeuilles à contrats intelligents a encore besoin d'un nouveau catalyseur.

Source : Dune ②Actuellement, les dépôts des utilisateurs sur Argent sont inférieurs au montant du financement disponible.

Source : Dune ③ Toutefois, avec la mise en œuvre de la proposition d'abstraction des comptes pour le réseau principal Ethereum, cela signifie que les utilisateurs d'Argent peuvent se connecter sans problème de StarkNet au réseau principal Ethereum, et les étincelles qui jailliront dans ce processus sont à attendre avec impatience.
Cas d'utilisation
① Contrôle d'accès précis : affiner l'autorisation de signature unique de l'EOA :
▽Accorder à l'utilisateur A une limite de transfert de X jetons B dans le contrat
▽Accorder à l'utilisateur B le droit d'échanger le jeton C dans le contrat, mais pas le droit de transférer des fonds.
▽Si un contrat reste inutilisé pendant une période prolongée, le droit d'utiliser le contrat sera automatiquement transféré.
②Gas propose diverses méthodes de paiement : paiement par une autre personne ou paiement en jetons.
③ Déduction automatique/remboursement automatique
Adoptez l'avenir du Web3
Pour réaffirmer un point, il existe 4,8 milliards d'utilisateurs du Web2, tandis que les utilisateurs du Web3 ont tout juste dépassé les 100 millions en 2022. Nous sommes encore au stade initial et non développé du développement de la blockchain.

Pour revenir à la question posée en début d'article : « Quel niveau de risque et de responsabilité suis-je prêt à assumer pour mes actifs ? », est-il possible de garantir que mon portefeuille ne sera pas perdu sans avoir à me souvenir de ma clé privée ?
Nous avons souvent entendu des investisseurs en capital-risque traditionnels se demander : existe-t-il des scénarios que seul le Web3 peut réaliser et que le Web2 ne peut pas ? Nous pensons que les portefeuilles Web3 en sont un exemple, remettant en question les affirmations du Web2 traditionnel : seul le réseau décentralisé du Web3 peut offrir un portefeuille répondant aux exigences de résistance à la censure, de sécurité et d'expérience utilisateur, où les utilisateurs ne courent aucun risque et n'assument aucune responsabilité. L'émergence de tels portefeuilles constitue également un fondement essentiel pour permettre aux 4,7 milliards d'utilisateurs du Web2 d'adopter l'avenir du Web3 : les portefeuilles sont non seulement le premier point d'entrée vers le Web3, mais aussi la base du développement des domaines on-chain (tels que l'ENS), des tokens liés à l'âme et des systèmes de réputation on-chain (identifiants décentralisés). Sans un environnement de portefeuille sécurisé, la construction du Web3 ne repose pas sur des fondations solides.
Il nous faut réfléchir plus attentivement. Les opportunités de lancer une campagne en période de marché baissier sont rares. MPC nous a montré un avenir où les portefeuilles EOA seront plus faciles à utiliser, plus sûrs et compatibles avec toutes les chaînes EVM actuelles. L'intégration des contrats intelligents dans les dApps est encore loin d'être achevée. Les solutions de récupération sociale semblent actuellement inefficaces, mais le potentiel futur des contrats intelligents est prometteur. Sur qui miser ? Nous vous apporterons la réponse concrètement.
2022 a été une année sombre pour les cryptomonnaies, mais nous restons optimistes. Nous sommes des démonistes éveillés dans World of Warcraft, et nous espérons créer un monde où personne ne pourra nous priver de notre source de vie (sauf si la proposition est adoptée par un vote).

Avertissement : Certains éléments de cet article sont tirés d’un entretien avec Winson, PDG du portefeuille Web3 Bitizen. Bitizen fait partie du portefeuille de RedlineDAO. Nous remercions Bitizen et Winson pour leur contribution à cet article.
Références
Instructions relatives à la signature du seuil : https://www.wwsww.cn/btbjiaoxue/1273.html
Faire passer les utilisateurs du Web2 au Web3 : l’avenir appartient aux portefeuilles numériques : https://mp.weixin.qq.com/s/TF2FCQDyyApzEVHQjxgZRg
Vitalik Buterin : Pourquoi avons-nous besoin d’une adoption généralisée des portefeuilles de relance sociale ? : https://www.163.com/dy/article/GNQ4K9D905373E94.html
Le portefeuille non-custodial Phantom de Solana a été piraté, entraînant le vol de fonds appartenant à plusieurs utilisateurs : https://chainfeeds.xyz/search
Shen Bo, associé fondateur de Fenbushi Capital, a déclaré que des biens personnels d'une valeur de 42 millions de yuans avaient été volés ; une plainte a été déposée auprès de la police : https://chainfeeds.xyz/feed/flash/detail/7a02d517-5a54-4892-a42a-ac519406da12
Wintermute perd 160 millions de dollars suite à un piratage DeFi : https://chainfeeds.xyz/feed/flash/detail/39c24b5e-693c-49a1-bf5c-ec04b829f8b6
La clé privée de l'adresse de déploiement du contrat ParaSwap a peut-être été compromise, entraînant le vol de fonds sur la blockchain : https://chainfeeds.xyz/feed/flash/detail/04c9a5d2-6e86-4207-9b1d-913eced8d2a7
Raison du vol du pont inter-chaînes Ronin : https://chainfeeds.xyz/feed/flash/detail/7a810726-80eb-4fef-a40b-a38c3c9f9738
Droits d'auteur réservés. Toute reproduction sans autorisation est interdite.




