Le co-fondateur d’Ethereum, Vitalik Buterin vient de proposer un système de « stealth adress » ou adresse furtive, en français pour favoriser les transactions privées sur la blockchain.
Adresse Furtive : Protéger la confidentialité sur Ethereum
Ethereum et Vie Privée – Si à chaque fois que vous transféreriez de l’argent à votre mère tous les clients seraient au courant de la transaction, resteriez-vous toujours chez banque? Certes, la banque, en tant qu’intermédiaire saura que vous avez effectué une transaction à l’ordre de quelqu’un mais les clients autres de cette institution n’en sauront rien.
En revanche, en tant qu’un grand livre ouvert, toutes les transactions effectuées sur la blockchain Ethereum sont visibles sur le réseau et n’importe qui peut les suivre. Imaginez que vous êtes un trader et qu’à partir de vos adresses, on peut facilement anticiper vos négociations. Alors, le concept de visibilité publique des transactions pose un sérieux problème de confidentialité.
« L’un des plus grands défis restants dans l’écosystème Ethereum est la confidentialité. Par défaut, tout ce qui va sur une blockchain publique est visible à tous. Cela est valable pour les transactions financières mais aussi pour les noms ENS, les POAP, les NFT […] et bien plus encore ».
Vitalik Buterin, Co-fondateur d’Ethereum – note de blog.
Ainsi, pour faire face à ce problème, Vitalik Buterin propose l’implémentation d’un nouveau système sur le réseau : l’utilisation des adresses furtives ou « stealth adress ». Concrètement, ce système se repose sur un mécanisme permettant à n’importe quel portefeuille d’Ethereum de générer des adresses publiques obfusquées afin de recevoir des fonds de manière privée et d’y accéder à l’aide d’un code spécial appelé “clé de dépense“.
Un concept bien différent des mixeurs
Certains diront, c’est ce que font les mixeurs comme Tornado Cash ou ChipMixer mais Vitalik Buterin a bien pris le soin de faire la différence entre un « stealth adress » et un mixeur. Il explique dans son article :
« Notez qu’il s’agit d’un type de confidentialité différent de ce qui est fourni par exemple par Tornado Cash. Tornado Cash peut cacher les transferts d’actifs fongibles courants tels que l’ETH ou les principaux ERC20 (bien qu’il soit plus facilement utile pour s’envoyer des informations privées à soi-même), mais il est très faible pour ajouter de la confidentialité aux transferts d’obscurs ERC20, et il ne peut pas du tout ajouter de la confidentialité aux transferts NFT ».
Comment générer cette adresse furtive sur Ethereum ?
Il paraît simple de dire qu’avec ce nouveau système, les utilisateurs pourront garder leurs transactions privées sur la blockchain Ethereum mais comment vont-ils pouvoir l’utiliser. Prenons un exemple concret, si Jean veut envoyer des ETH à Robert et qu’il ne veut pas que les utilisateurs de la blockchain puissent suivre sa transaction.
D’abord, Jean génère une « clé de dépense ». A partir de cette clé, il crée « une meta adresse furtive ». Il passe cette meta adresse à Robert qui par la suite crée une autre adresse furtive appartenant à Jean pour lui envoyer les Ethers à n’importe quel moment.
Vitalik Buterin nous dit qu’à côté de ce transfert, Robert publie des données cryptographiques supplémentaires (une pubkey éphémère) sur la chaîne qui permet à Jean de découvrir que cette adresse lui appartient.
L’utilisation d’algorithmes de codes secrets partagés
Toutefois, il y a un hic, comment les deux personnes arriveront-elles à partager les adresses furtives ? Le développeur d’Ethereum, explique que pour résoudre ce problème, il faut utiliser une pair d’algorithme pour générer un « code secret partagé ».
« Un algorithme qui utilise la chose secrète d’Alice (sa clé éphémère) et la chose publique de Bob (sa méta-adresse), et un autre algorithme qui utilise la chose secrète de Bob (sa clé de dépense racine) et la chose publique d’Alice (sa clé publique éphémère) ».
Il y a la méthode mathématique « Diffie–Hellman key exchange » qui facilite cet echange de « code secret partagé ». Mais Vitalik Buterin trouve qu’en utilisant l’algorithme de Diffie et Hellman, il aurait peut-être des soucis de sécurité. Ainsi, il propose un « mécanisme de clé d’aveuglement » qui serait de telle sorte que :
« Une paire d’algorithmes où Jean peut combiner le secret partagé avec sa clé de dépense racine, et où Robert peut combiner le secret partagé avec la méta-adresse de Jean, de telle sorte que Robert puisse générer l’adresse furtive, et que Jean puisse générer la clé de dépense pour cette adresse furtive, le tout sans créer un lien public entre l’adresse furtive et la méta-adresse de Jean (ou entre une adresse furtive et une autre). »
Morale de l’histoire : Qui n’aimerait pas que ses transactions sur la blockchain soient gardées privées ? Cette idée de Vitalik Buterin montre qu’il y a toujours de la place pour l’amélioration et le progrès.
Avis de non-responsabilité
Avis de non-responsabilité : Conformément aux directives de The Trust Project, BeInCrypto s'engage à fournir des informations impartiales et transparentes. Cet article vise à fournir des informations exactes et pertinentes. Toutefois, nous invitons les lecteurs à vérifier les faits de leur propre chef et à consulter un professionnel avant de prendre une décision sur la base de ce contenu.