Que voit-on sur la chaîne de blocs ?

Bitcoin fonctionne grâce à une chaîne de blocs, qui est le registre de toutes les transactions ayant eu lieu depuis son lancement. L'historique est accessible à tous dans le but de garantir son intégrité : chacun peut vérifier la validité des transactions ajoutées et la preuve de travail de chaque bloc. Sur la chaîne de blocs, on peut donc observer l'ensemble des opérations effectuées par les utilisateurs.

Les transactions sont généralement des transferts d'unités (appelées des satoshis) d'une ou plusieurs adresses d'envoi vers une ou plusieurs adresses de réception. Ces adresses (dans Bitcoin) sont des chaînes alphanumériques qui permettent de recenser la propriété sur la blockchain. Chaque adresse est liée à une clé privée permettant à l'utilisateur qui connaît ladite clé de dépenser les fonds présents sur l'adresse.

C'est pourquoi on parle parfois du bitcoin comme une monnaie pseudonyme (et non anonyme) : les utilisateurs possèdent en effet des adresses liées à eux sur le registre. Néanmoins, contrairement aux services centralisés qui limitent le nombre de pseudonymes pouvant être créés, Bitcoin ne restreint pas le nombre d'adresses que l'utilisateur peut générer.

Contrairement à l'idée qu'on se fait parfois, le protocole interne ne considère pas les adresses comme des comptes possédant un solde en satoshis, mais se fonde sur des pièces programmables, qui sont appelées des sorties transactionnelles non dépensées, ou Unspent Transaction Outputs en anglais, communément abrégées en UTXO. Ces pièces peuvent « être détenues » par une certaine adresse ou un script, et peuvent avoir toutes les tailles possibles et imaginables : par exemple, un utilisateur pourra posséder une pièce de 13 bitcoins (1,3 milliard de satoshis) sur une adresse et une pièce de 0,05 bitcoin (5 millions de satoshis) sur une adresse différente. Ce fonctionnement n'empêche pas donc aux adresses d'avoir un solde, mais il s'agit d'une réinterprétation des portefeuilles des données présentes sur la chaîne.

On peut voir le système de transactions de Bitcoin comme une fonderie de pièces de monnaies : dans une transaction, une ou plusieurs pièces de bitcoin en entrée sont « fondues » pour donner une ou plusieurs pièces en sortie. Ceci implique de rassembler des pièces de valeur suffisante en entrée et de créer une nouvelle pièce sur sa propre adresse en sortie pour se rendre la monnaie. Par exemple, si Alice possède une pièce de 13 mBTC et veut donner 3 mBTC à Bob, elle devra créer une transaction ayant pour entrée ces 13 mBTC, et ayant pour sorties une pièce de 3 mBTC pour Bob et une pièce restante de 10 mBTC pour elle-même.

Transaction UTXO adresses une entrée deux sorties

Si Alice ne possède pas une pièce ayant une valeur faciale supérieure à 3 mBTC, alors elle devra regrouper des pièces pour réunir un montant suffisant en entrée. Ces pièces peuvent provenir d'une même adresse ou d'adresses différentes.

Transaction UTXO adresses trois entrées deux sorties

Ainsi, ce qu'on peut observer sur la chaîne, ce n'est pas les transferts bruts d'une adresse à une autre, mais les combinaisons et les séparations des différentes pièces de bitcoin pour arriver à ce but.

Qu'est-ce qui est analysé sur la chaîne ?

Comme le dit le livre blanc, une pièce est une « chaîne de signatures numériques ». Par conséquent, toute son histoire est inscrite sur la chaîne et l'ensemble des transactions ayant mené à son existence peut être retracé. C'est ce sur quoi se base l'analyse de chaîne.

L'analyse de chaîne, ou blockchain analysis en anglais, est un procédé de surveillance consistant à recueillir des données numériques sur la chaîne de blocs d'une cryptomonnaie, à lier ces données à des identités réelles et à en tirer des conclusions sur les échanges qui ont pu être réalisés. Elle est aujourd'hui en plein essor avec des sociétés comme Chainalysis qui vendent des solutions techniques aux plateformes d'échange, aux entreprises réglementées, aux banques et aux agences étatiques pour qu'elles puissent suivre avec acuité ce qui a lieu sur le réseau. Leurs modèles et leurs informations s'améliorent au cours du temps, ce qui fait que leur impact est aujourd'hui non négligeable sur la confidentialité des utilisateurs.

Chainalysis logo

L'analyse de chaîne se fonde sur des heuristiques (entendez par là des suppositions méthodologiques) qui permettent de déterminer de manière probabilistique, mais non optimale, ce qui se passe sur la chaîne à partir des données contenues dans les transactions. Les principales heuristiques utilisées sont les suivantes :

  • Toutes les entrées d'une transaction sont contrôlées par une seule entité (heuristique de co-dépense).
  • Des données différentes dans les transactions (type d'adresse, ordre des sorties, valeur du champ nLocktime, frais, pièces sélectionnées, etc.) indiquent l'usage de portefeuilles différents (empreinte du portefeuille).
  • La seconde sortie d'une transaction à deux sorties appartient à l'entité émettant la transaction si l'autre sortie peut être identifiée comme le récepteur (heuristique de la sortie complémentaire) : la sortie principale peut être identifiée par exemple par un montant rond, par un montant au moins 100 fois plus petit que l'entrée ou par un montant qui correspond à la fusion des entrées (contrairement à l'autre sortie).
  • Une transaction à une seule sortie indique le déplacement de fonds d'un portefeuille à un autre.

L'analyse peut être également améliorée par des opérations sur la chaîne effectuées par l'analyste lui-même. Une pratique courante est l'envoi de poussières de bitcoin sur des adresses déjà utilisées. Cela oblige l'utilisateur recevant une poussière à la combiner avec d'autres pièces présentes à d'autres adresses, ce qui lie les différentes adresses entre elles. Une autre pratique est la participation à certaines transactions à utilisateurs multiples comme les transactions de mélange : en effet, faire partie d'une transaction permet à l'analyste d'exclure des possibilités et de se faciliter la tâche.

Ainsi, grâce à l'analyse de chaîne, on peut remonter la piste assez facilement si l'utilisateur est imprudent. Si ce dernier fournit une information permettant de lier son identité à l'une de ses adresses (déclaration publique, retrait d'une plateforme d'échange, paiement en personne, etc.) et qu'il lie ses adresses entre elles en réalisant des transactions diverses, alors il sera possible d'identifier ses bitcoins.

Pour illustrer cela, on peut examiner le cas de Hal Finney, l'une des premières personnes à avoir essayé Bitcoin en 2009 et à en avoir miné. Il est aussi celui qui a reçu la toute première transaction effective du réseau de la part de Satoshi Nakamoto. L'exemple est bon, car, à l'époque, les gens comprenaient moins bien comment Bitcoin fonctionnait, et même les cypherpunks les plus aguerris faisaient des erreurs.

En mars 2014, le journaliste Andy Greenberg s'est rendu chez Hal Finney (alors gravement atteint par la maladie de Charcot), où il a pu observer le logiciel avec lequel ce dernier avait miné. Sur la capture d'écran partagée dans l'article, on pouvait voir que Hal avait validé le bloc 78, information confirmée par son témoignage de 2013 dans lequel il affirme avoir « miné le bloc 70 et quelques ».

Connaissant cette information, n'importe qui peut aujourd'hui en déduire les autres blocs minés par Hal Finney grâce à l'heuristique de co-dépense. En effet, les 50 bitcoins générés par le bloc 78 ont été dépensés dans une transaction du 14 juin 2011 qui fusionnait 31 pièces pour produire une pièce de 2000 bitcoins (tout pile) et un reste de 0,43 bitcoin.

Transaction fusion Hal Finney juin 2011

Sur cette transaction, on peut observer quelques-uns des blocs minés par Hal Finney, comme le bloc 7569 ou le bloc 8932. Mais ce n'est pas tout : si l'on suppose que Hal Finney a tenté de diviser ses bitcoins en paquets de 2000 (pour les mettre en sécurité), alors le reste de 0,43 bitcoin est la façon dont le logiciel a rendu la monnaie. Si l'on regarde ce qu'il est advenu de ce reste, on peut voir qu'il a été dépensé le même jour par une transaction fusionnant 39 pièces pour donner une pièce de 2000,84 bitcoins. Outre d'autres récompenses de bloc, la transaction contient plusieurs restes du même type, ce qui permet de remonter à d'autres transactions formant des pièces de 2000 bitcoins le même jour. En regroupant ces informations, on peut conclure que Hal Finney a miné des dizaines et des dizaines de blocs et possédait ce jour-là plus de 10 000 bitcoins.

De ce fait, on peut voir que la surveillance de chaîne peut être un danger pour chaque utilisateur qui ne fait pas attention. Ici Hal Finney a volontairement dévoilé l'information permettant de l'identifier, mais il n'imaginait peut-être pas que cela permettait de voir qu'il avait miné pendant plusieurs mois, ayant menti dans son témoignage de 2013 en disant n'avoir miné pendant « quelques jours » et regretter de ne pas l'avoir fait « plus longtemps ».

Aujourd'hui, la surveillance s'intensifie avec les normes de connaissance du client (KYC) et d'anti-blanchiment (AML) imposées aux plateformes d'échange et autres services, ce qui est en train de créer un vrai fichage de la chaîne. À terme, la surveillance de Bitcoin pourrait mener à une perte de confidentialité pour l'ensemble des utilisateurs : plus de portefeuilles seront identifiés, plus les autres portefeuilles deviendront identifiables.

De plus, cela permet d'établir peu à peu un statut pour chaque bitcoin sur la chaîne : en observant les différentes transactions, les analystes peuvent ainsi déterminer quelle pièce est « sale » et quelle pièce ne l'est pas. Si ce modèle a des limites, notamment concernant la contamination, une réglementation drastique des points d'agrégation pourrait mener à une destruction de la fongibilité de la monnaie. L'activité pourrait se diviser en deux économies distinctes : l'économie réglementée, dite « propre », qui ne concerneraient que les bitcoins identifiés et n'ayant pas pris part dans des activités illicites, et l'économie libre, dite « sale », qui inclurait tous les bitcoins, y compris ceux utilisés sur les places de marchés du dark web.

Comment se protéger ?

La surveillance de la chaîne est ainsi un réel problème, autant pour l'utilisateur individuel que pour le système global. Pour être utile et pour fonctionner, Bitcoin se doit en effet d'assurer une certaine anonymité à l'utilisateur.

Le problème avait dès le début été identifié par Satoshi Nakamoto au sein du livre blanc de Bitcoin. Ainsi dans la section dédiée à la confidentialité (section 10), il écrivait :

Le modèle bancaire traditionnel atteint un certain niveau de confidentialité en limitant l'accès aux informations aux parties concernées et au tiers de confiance. La nécessité d'annoncer publiquement toutes les transactions exclut cette méthode, mais la confidentialité peut toujours être préservée en interrompant le flux d'informations à un autre endroit : en gardant les clés publiques anonymes. Le public peut voir que quelqu'un envoie un montant à quelqu'un d'autre, mais ne dispose pas d'informations reliant la transaction à qui que ce soit. Ceci est similaire au niveau d'information disponible en bourse, où l'heure et la taille des transactions individuelles, les « ordres », sont rendues publiques, mais où l'identité des parties n'est pas révélée.

Comme pare-feu supplémentaire, une nouvelle paire de clés devrait être utilisée pour chaque transaction afin de les empêcher d'être liées à un propriétaire commun. Certains liens sont toujours inévitables avec les transactions à entrées multiples, qui révèlent nécessairement que leurs entrées appartiennent au même propriétaire. Le risque est que si le propriétaire d'une clé est révélé, la liaison pourrait révéler d'autres transactions qui lui appartiennent.

Ainsi, Satoshi comprenait dès 2008 que son système possédait une confidentialité relative, et indiquait comment il était possible de conserver son anonymat : en gardant secret le lien entre son identité et ses adresses.

Livre blanc modèle de confidentialité de Bitcoin

En se proposant de briser le modèle de confidentialité de Bitcoin, l'analyse de chaîne s'oppose complètement à sa philosophie initiale. L'objectif de Bitcoin n'était pas d'être quelque chose de traçable, et la transparence du registre n'était qu'une composante dans le mécanisme de consensus imaginé par Satoshi Nakamoto.

Heureusement, un certain nombre de techniques ont été développées pour contrer cette analyse. Présentons-en les principales.

Tout d'abord, la technique la plus utilisée, et celle qui est citée dans le livre blanc, c'est l'usage unique des adresses. En effet, sauf cas exceptionnel (adresse de donation publique), il est crucial de n'utiliser chaque adresse qu'une seule fois : si vous ne le faites pas, l'ensemble de vos transactions pourra être dévoilé à autrui par une seule erreur liant votre identité à l'adresse. De plus, cette pratique protège également les fonds de l'attaque d'un hypothétique ordinateur quantique.

Puis, nous pouvons citer une méthode pratique évidente : certaines personnes évitent les plateformes réglementées qui pratiquent la connaissance du client (KYC). Il existe ainsi toute une gamme de services qui n'appliquent pas ces contraintes, comme les plateformes d'achat et de vente en pair-à-pair (LocalCryptos, Hodl Hodl, Bisq), les places de marché (TradeOgre) ou les échangeurs directs (SideShift.ai).

Ensuite, il y a évidemment toutes les techniques basées sur la combinaison de pièces avec d'autres utilisateurs ayant pour but de brouiller les pistes. On peut notamment citer le mélange de pièces (CoinJoin classique) ou PayJoin. En outre, il existe une technique en développement appelée CoinSwap qui permet d'échanger ses pièces avec d'autres utilisateurs, sans qu'aucune combinaison de pièces n'apparaisse sur la chaîne.

Enfin, d'autres techniques diverses et variées sont utilisées comme les adresses furtives, Ricochet ou même l'usage du réseau Lightning. À mesure que le temps passera et que la surveillance s'intensifiera, nous pouvons être certains que l'ensemble de ces méthodes se développera.

Conclusion

La chaîne de blocs, solution technique au problème des généraux byzantins, implique une nécessaire transparence. Bien que le but de Bitcoin soit d'être un argent liquide, et donc d'être relativement confidentiel, son fonctionnement permet à l'analyse de chaîne de désanonymiser l'activité des utilisateurs, en exploitant les informations prélevées par les entreprises réglementées de l'écosystème comme les plateformes d'échange. Cette situation représente aujourd'hui une menace pour Bitcoin, mais pourrait être améliorée par l'application de diverses techniques de protection de la vie privée.

Pour en savoir plus sur les techniques utilisées par les sociétés d'analyse de chaîne et sur les différentes méthodes de confidentialité permettant de se protéger, n'hésitez pas à consulter la page « Privacy » du wiki Bitcoin.it.

Newsletter 🍞

Recevez un récapitulatif de l'actualité crypto chaque dimanche 👌 Et c'est tout.

A propos de l'auteur : Ludovic Lars

twitter-soothsayerdatatwitter-soothsayerdata

Je suis fasciné par les cryptomonnaies et par l’impact qu’elles pourraient avoir sur nos vies. De formation scientifique, je m’attache à décrire leur fonctionnement technique de la façon la plus fidèle possible. Sur Cryptoast, je me propose de vous aider à mieux comprendre comment fonctionnent les cryptomonnaies (principalement Bitcoin, Bitcoin Cash et Ethereum) et quels sont les enjeux qui animent cet écosystème fascinant.
Tous les articles de Ludovic Lars.

guest
2 Commentaires
Inline Feedbacks
View all comments
Louferlou

Hello, Pour ma part je suis complètement traçable puisque tous les Bitcoin sur les adresses dont je possède les clés privées, proviennent d’Exchanges avec KYC. En revanche à partir du moment où je génère une nouvelle adresse à partir d’une nouvelle clé privée, cette dernière n’est que pseudonyme, donc personne ne peut savoir si j’ai réalisé un transfert vers moi-même ou vers un tiers. Donc problème de confidentialité résolu non ? Le seul truc c’est effectivement que les régulateurs vont certainement autoriser le paiement en BTC dans les commerces et dans l’économie réelle, seulement si l’origine des fonds est identifiée… Read more »