
En réfléchissant à la vie privée dans l'environnement des cryptomonnaies, on peut noter que les cryptomonnaies sont souvent présentées comme des moyens de paiement anonymes, bien qu'il soit également affirmé que le suivi des mouvements de fonds numériques est beaucoup plus facile que le suivi des mouvements de devises fiduciaires telles que le dollar. Pour concilier ces deux affirmations, il est tout d'abord nécessaire de comprendre ce que signifie la vie privée dans le monde des cryptomonnaies. Répondre à cette question n'est pas aussi simple qu'il y paraît au premier abord, car le terme « vie privée » dans le domaine des technologies blockchain peut désigner une multitude de phénomènes différents. En même temps, le comprendre est extrêmement important pour les développeurs, les investisseurs et les autres participants au système crypto-économique. Essayons de donner un sens à cette question.
Considérons trois aspects principaux de la vie privée dans le contexte des actifs numériques, qui incluent : les informations personnelles de l'utilisateur effectuant une transaction en cryptomonnaie ; les données concernant l'opération en cours ; des informations générales sur l'état de la blockchain, obtenues en combinant des données sur toutes les transactions. Afin de rendre l'accès à ces informations, ou leur obtention par calcul, impossible (ou théoriquement extrêmement difficile) pour un observateur extérieur, la cryptographie peut être utilisée dans le protocole. En même temps, ceux qui cherchent à obtenir des informations sur la blockchain peuvent combiner des fragments individuels de celle-ci afin d'apprendre les informations qui les intéressent ou du moins faire des hypothèses correspondantes. En ce sens, la tâche principale du point de vue de la vie privée est de développer un protocole qui divulguera aux attaquants potentiels le minimum possible d'informations sur des attributs de transaction spécifiques.
Il est important de noter que la confidentialité de certains attributs est loin d'être un phénomène sans ambiguïté. Par exemple, certaines informations peuvent être connues de certains observateurs et inconnues d'autres, ou les observateurs peuvent faire certaines hypothèses sans en être pleinement confiants. Cette dualité rend souvent des affirmations telles que «La cryptomonnaie X garantit la confidentialité» ou «La cryptomonnaie X est plus privée que la cryptomonnaie Y» dénuées de sens. De plus, lorsqu'elles sont utilisées de manière imprudente, de telles déclarations peuvent mener à la confusion et à des interprétations incorrectes, et c'est précisément pourquoi elles peuvent être utilisées pour induire délibérément les utilisateurs en erreur. Nous croyons qu'il est beaucoup plus raisonnable de faire des déclarations plus spécifiques telles que «dans Monero, le montant de la transaction est privé» ou «dans ZCash, les adresses des expéditeurs sont anonymes dans une certaine mesure». Comme nous le verrons plus tard, dans certains cas, des outils cryptographiques tels que les preuves à divulgation nulle de connaissance peuvent aider à analyser de telles déclarations ou même fournir des arguments solides en leur faveur.
Alors, considérons chacun des aspects de la vie privée en ce qui concerne les cryptomonnaies séparément. La vie privée des informations personnelles (anonymat) L'anonymat est la première chose qui vient à l'esprit des gens lorsqu'ils entendent le mot « vie privée ». L'anonymat signifie l'absence de lien entre les actions d'un utilisateur et sa véritable identité. L'une des variétés les plus facilement assurées est ce qu'on appelle la « pseudonymie » : en essence, c'est exactement ce que divers services en ligne nous garantissent en attribuant des pseudonymes tels que bitcoinlover2008 au lieu de nos vrais noms. Dans cette situation, dans la plupart des transactions impliquant d'autres utilisateurs du protocole, les données concernant la personne physique ou morale de l'utilisateur bitcoinlover2008 ne seront pas révélées. Dans la plupart des réseaux de cryptomonnaies, y compris Bitcoin, les utilisateurs se voient attribuer une clé publique et une clé privée. La clé publique sert d'analogue à un identifiant, et la clé privée comme un mot de passe. Quiconque obtient la clé privée, légalement ou par vol, peut générer des messages « signés » avec votre nom, et grâce à la clé publique, n'importe qui peut vérifier et confirmer leur autorité. Grâce à cette fonction, les utilisateurs peuvent, par exemple, recevoir des bitcoins sur une ou plusieurs clés publiques.les clés-adresses et contrôler leurs fonds et les envoyer en utilisant la clé privée – et tout cela sans l'intervention d'organismes centralisés. Ces concepts forment la base de la cryptographie mathématique moderne et sont d'un grand intérêt en eux-mêmes. Cependant, pour nos besoins, posséder une combinaison d'une clé publique et d'une clé privée signifie simplement un moyen de mettre en œuvre le concept de pseudonymat dans le contexte des réseaux décentralisés. En raison de ce pseudonymat généralement inhérent aux protocoles de cryptomonnaie, les représentants des médias et le grand public forment une impression erronée selon laquelle les cryptomonnaies sont anonymes ou, à tout le moins, offrent une bien plus grande anonymité que l'utilisation simple de pseudonymes. Il n'est pas surprenant que ce malentendu conduise les gens à commencer à utiliser les cryptomonnaies à des fins illégales, que ce soit pour le jeu en ligne ou des transactions sur le darknet.
Cependant, le niveau réel d'anonymat des cryptomonnaies peut sérieusement décevoir de tels utilisateurs : ils envoient et reçoivent effectivement des pièces à des adresses publiques, et leurs vrais noms ne sont pas divulgués lors des transactions, pourtant, à la suite de certaines actions, ces adresses peuvent tout à fait être liées à leurs vraies données personnelles.
Tout d'abord, la plupart des utilisateurs acquièrent des bitcoins sur des échanges contre des fonds fiat. Effectuer des transactions en monnaies ordinaires nécessite généralement une interaction avec le système bancaire et la fourniture de données personnelles réelles. Comme nous l'avons mentionné précédemment, dans Bitcoin, toutes les informations sur les transactions sont de nature publique, donc toute personne ayant accès à la base de données d'un échange peut lier des adresses publiques aux vrais noms des utilisateurs. Par exemple, si Alice retire 0,1 BTC via Coinbase vers une adresse qui lui appartient, le service pourra lier son vrai nom à cette clé. Et si elle envoie 0,2 BTC à l'adresse d'un site illégal qui accepte des paris sportifs en ligne, alors un observateur extérieur peut conclure qu'Alice participe à une activité de jeu illégale et même fournir des preuves publiques irréfutables de ce fait. De telles techniques sont appelées analyses de blockchain et sont utilisées par des entreprises telles que Chainalysis pour regrouper des adresses publiques par utilisateur, établir leur lien avec de vraies identités et analyser les flux de transactions.
Deuxièmement, effectuer une transaction en utilisant des cryptomonnaies nécessite d'envoyer certaines informations sur Internet. Dans certaines circonstances, les métadonnées concernant de telles interactions peuvent être utilisées pour suivre l'adresse IP de l'utilisateur qui a effectué l'opération, et même l'utilisation d'anonymiseurs tels que Tor ne prévient pas cela. La combinaison de ces deux facteurs rend l'exécution de transactions entièrement anonymes en utilisant uniquement la propriété de pseudonymat une tâche extrêmement difficile. Confidentialité des informations de transaction Lorsque l'on parle de la confidentialité des cryptomonnaies, les gens font généralement référence à la confidentialité de certains aspects des transactions. En termes simples, une transaction est une action qu'un utilisateur effectue afin de changer l'état de la blockchain. Par exemple, Alice peut envoyer X pièces de son portefeuille au portefeuille de Bob. Même dans une situation apparemment innocente, plusieurs fragments de données peuvent être obtenus à la fois : l'une des adresses d'Alice – la connexion entre les adresses d'Alice et de Bob ; l'une des adresses de Bob ; le montant de pièces envoyées. Des transactions plus complexes peuvent également contenir d'autres types d'informations. Un exemple frappant de cela est le code de contrat intelligent dans Ethereum. Différentes blockchainsprésenter les données de transaction différemment, et certaines de ces méthodes permettent de cacher certains aspects à un observateur extérieur qui ne voit que les données « brutes » enregistrées dans la blockchain. C'est précisément pourquoi nous avons intitulé cette section « Confidentialité des informations de transaction » plutôt que « Confidentialité des transactions », puisque le degré de confidentialité des différents types de données de transfert peut varier. L'information la plus importante qui peut être cachée est les adresses d'Alice et Bob. Si elles sont privées, alors déterminer l'expéditeur et le destinataire d'une transaction à partir des informations à son sujet sera impossible. Cela peut également entraver la conduite d'analyses de blockchain. Ainsi, si Alice achète la cryptomonnaie Monero, qui a une telle caractéristique, via l'échange populaire Binance et qu'elle la retire ensuite de là, Binance ne pourra pas lier ce retrait à aucune des opérations ultérieures d'Alice avec ces pièces. Et si Alice transfère Monero à Bob, alors il ne pourra également pas apprendre que les pièces ont été achetées sur Binance. De plus, la réponse à la question de savoir si un certain fragment d'information sur une transaction est privé ne peut pas être binaire.
Dans l'exemple avec l'adresse d'Alice, le degré de confidentialité peut être évalué par la valeur de l'ensemble d'anonymat. L'ensemble d'anonymat est le minimum d'adresses à partir duquel il est possible de déterminer l'expéditeur d'une transaction, basé uniquement sur les données de la blockchain. Plus sa valeur est élevée, moins d'informations sur l'expéditeur sont contenues dans les données de la blockchain. Par exemple, dans le cas de Bitcoin, la valeur de l'ensemble d'anonymat pour les transactions les plus simples et les plus directes est égale à un, puisque l'adresse de l'expéditeur est contenue dans les informations de transfert, tandis que pour Monero, ce chiffre sera beaucoup plus élevé. Confidentialité des informations sur l'état complet de la blockchain Dans le cas de Bitcoin, toutes les données de transaction sont publiques. Cela signifie qu'un observateur extérieur, ayant accès aux enregistrements dans tous les blocs de la chaîne, peut reconstruire le grand livre des soldes de chacune des adresses (bien qu'elles puissent être divisées en différents UTXOs (Unspent Transaction Output), ou sorties de transaction non dépensées – parties indivisibles d'un bitcoin liées à un propriétaire spécifique). C'est ce que nous appelons des informations sur l'état complet de la blockchain.
Cependant, si certains aspects des transactions sont privés, alors la connaissance de tous les enregistrements dans la blockchain ne donnera pas à un utilisateur une connaissance de l'état complet de la blockchain. Elle est distribuée parmi différents utilisateurs, et la blockchain garantit la cohérence de leur connaissance. Malgré le fait que la connaissance d'un utilisateur de certains aspects de l'état de la blockchain dépend uniquement du protocole et de la prise de conscience des transactions qui ont conduit à la formation de l'état actuel, la connexion entre eux peut créer des interactions complexes. En conséquence, divers attributs de l'état complet de la blockchain peuvent s'avérer privés à différents degrés, par exemple : la liste de toutes les adresses ; le solde d'une adresse individuelle (par exemple, le portefeuille 0x2569C92345013F55CFb47C633c57F2f5756B9acA détient 1 ETH) ; le code du contrat intelligent à une adresse spécifique (par exemple, le code du contrat intelligent CryptoKitties à l'adresse 0x06012c8cf97BEaD5deAe237070F9587f8E7A266d) ; les informations associées à un contrat (par exemple, les données stockées dans le contrat CryptoKitties).
Voici un exemple simple : dans ZCoin, le montant de chaque transaction est public, cependant les informations concernant l'expéditeur et le destinataire sont privées, ce qui signifie que les données sur le solde de leurs portefeuilles restent également privées. D'autre part, dans Mimblewimble, la sécurité des informations sur l'état des comptes des utilisateurs est assurée différemment : ici, les montants des transactions sont privés, tandis que les informations sur l'expéditeur et le destinataire sont publiques. Les utilisateurs de Mimblewimble doivent stocker eux-mêmes leurs fonds, et la blockchain ne conserve que suffisamment d'informations pour exclure la possibilité de dépenses dépassant les montants appartenant aux utilisateurs. Dans la plupart des cas, cacher les caractéristiques des transactions est bénéfique pour les utilisateurs individuels, mais dans le contexte de la blockchain, ce n'est pas toujours le cas. Par exemple, si le nombre total de pièces d'une cryptomonnaie particulière est privé, alors les utilisateurs ne peuvent pas vérifier de telles caractéristiques du protocole comme, par exemple, le calendrier d'émission. De plus, dans de telles conditions, il est difficile de remarquer un attaquant qui exploite des vulnérabilités cryptographiques ou des failles dans le protocole pour l'émission non autorisée de nouvelles pièces.
Par conséquent, en réfléchissant à la vie privée dans l'environnement des cryptomonnaies, au lieu de phrases générales telles que «MyCoin est plus privé que TheirCoin», essayez de répondre aux questions suivantes : certains fragments d'information (lesquels ?) sur l'état du monde (à quel moment ?) sont-ils privés (à quel degré ?) pour certaines personnes (pour qui ?). Une telle approche nous permettra d'évaluer les technologies de la vie privée et leurs compromis de manière plus objective.






