Les évolutions récentes autour des deux implémentations populaires de CoinJoin, Samourai Whirlpool et Wasabi Wallet, ont été plutôt mouvementées, c’est le moins qu’on puisse dire. La saisie du site officiel de Samourai Wallet et l’arrestation qui a suivi des deux fondateurs ont pris de court une grande partie de la communauté Bitcoin. Les chefs d’accusation pour blanchiment d’argent et « transmission d’argent sans licence » ont créé de l’incertitude dans le secteur, certains services réagissant rapidement en annonçant qu’ils bloqueraient à l’avenir les utilisateurs basés aux États-Unis.
À peine une semaine après l’inculpation, zkSNACKs, l’entreprise derrière Wasabi Wallet, a informé les utilisateurs qu’elle fermerait également son service de coordination CoinJoin d’ici la fin du mois.
En laissant de côté un instant les événements des dernières semaines, examinons de plus près comment fonctionnent réellement les transactions CoinJoin, en quoi elles diffèrent des services de « mixing » classiques et pourquoi les utilisateurs peuvent vouloir s’en servir.
Bitcoin n’est pas anonyme
Contrairement à une idée répandue et à certains articles dans les médias, les utilisateurs du réseau Bitcoin ne sont pas anonymes. Dans la plupart des cas, c’est même l’inverse : comme chaque transaction reste publiquement accessible pour toujours, il est relativement facile de suivre les paiements et le patrimoine d’un utilisateur si ses transactions peuvent être reliées à son identité ne serait-ce qu’une seule fois. La raison est double : d’une part, certains détails techniques du fonctionnement du réseau Bitcoin finissent par créer des failles de confidentialité s’ils ne sont pas activement surveillés et atténués. Le modèle de transaction utilisé dans Bitcoin fonctionne de manière similaire à un portefeuille d’espèces classique, comme nous l’expliquons dans notre article plus détaillé sur les UTXO.
Dans l’exemple ci-dessous, Alice paie son ami Bob 0.25 BTC. Pour couvrir le coût, elle doit dépenser des fonds provenant de deux adresses différentes, les reliant entre elles, et créer aussi une nouvelle sortie de change, qui suggère une autre adresse lui appartenant.

Cette transaction bitcoin présente plusieurs inconvénients en matière de confidentialité.
En bref, cela signifie que même si de bonnes pratiques comme le non-réemploi des adresses bitcoin sont appliquées par des portefeuilles comme BitBoxApp, il reste possible de relier ces adresses entre elles, car plusieurs UTXO peuvent être sélectionnés et dépensés ensemble dans de futures transactions. Il devient alors théoriquement possible de suivre indéfiniment la trace d’un « coin ».
La seconde raison tient davantage aux usages des utilisateurs : la plupart des gens passent par des exchanges et des courtiers régulés pour acheter et vendre du bitcoin, ce qui permet au service de connaître leurs adresses et de les rattacher à leur identité. Ce n’est évidemment pas un problème si l’utilisateur l’accepte. En revanche, si vous souhaitez un jour améliorer votre confidentialité, il n’est pas facile de « revenir en arrière », car l’historique des transactions est gravé dans le marbre pour l’éternité.
La confidentialité sur Bitcoin n’est pas perdue pour autant. S’il est impossible de changer le passé, vous pouvez réduire la traçabilité future de vos bitcoins en participant à des transactions CoinJoin.
CoinJoin
Les détails techniques des implémentations CoinJoin peuvent devenir complexes assez vite, mais le principe de base est en réalité relativement simple. Chaque transaction bitcoin se compose, dans la plupart des cas, de plusieurs entrées et sorties. Dans notre exemple précédent où la confidentialité est sous-optimale (un exchange connaît les adresses d’un utilisateur), ces entrées et sorties peuvent être analysées et suivies assez facilement, puisqu’elles peuvent généralement toutes être rattachées à la même identité.
Dans un CoinJoin, plusieurs utilisateurs se joignent pour dépenser leurs coins dans une seule transaction bitcoin. Au départ, il est possible de voir qui entre dans le CoinJoin en raison du faible niveau de confidentialité initial. Mais si l’on observe l’état après la transaction, les choses deviennent plus difficiles, car toutes les nouvelles sorties se ressemblent ou, autrement dit, ont des valeurs similaires.
Par exemple, vous pouvez repérer Alice et Bob entrant dans un CoinJoin avec respectivement 0.12 BTC et 0.13 BTC. En regardant les sorties, deux d’entre elles auront une valeur de exactement 0.1 BTC. Il n’y a alors aucun moyen de savoir à qui appartiennent ces sorties, à moins de faire une supposition. Alice et Bob ont utilisé une propriété des transactions bitcoin, qui constituait au départ un désavantage en matière de confidentialité, pour l’améliorer.

Un CoinJoin simplifié effectué par Alice et Bob.
Vous avez peut-être remarqué les deux sorties supplémentaires de 0.02 BTC et 0.03 BTC en bas à droite. Ces montants étaient trop faibles pour former des sorties de 0.1 BTC et ne peuvent donc pas bénéficier du CoinJoin. On les appelle parfois le « doxxic change », une façon amusante de dire qu’elles conservent les mêmes mauvaises propriétés de confidentialité qu’avant et peuvent « dox » l’utilisateur si elles sont mal utilisées plus tard. Dans cet exemple, il y a de très fortes chances que la sortie de 0.02 BTC appartienne à Alice, tandis que celle de 0.03 BTC appartient à Bob.
De belles transactions
En réalité, il n’y a pas qu’Alice et Bob qui participent à un CoinJoin, mais des centaines, voire des milliers d’utilisateurs en même temps, encore et encore dans des transactions successives. D’un point de vue mathématique, à partir d’un certain point, le niveau de confidentialité devient presque « parfait » ; autrement dit, il devient pratiquement impossible de suivre ou de deviner quelles sorties appartiennent à quel participant initial.
Ces entrées et sorties de taille égale ont aussi un effet secondaire sympa : elles sont assez impressionnantes lorsqu’on les visualise sous forme de diagramme de flux, comme sur le célèbre explorateur Bitcoin mempool.space:

Visualisation d’une transaction CoinJoin récente.
L’auto-garde est préservée
L’un des principaux avantages d’un CoinJoin par rapport aux services de mixage centralisés concerne les exigences de confiance. Les utilisateurs gardent la maîtrise de leurs clés et donc de leurs bitcoins pendant toute la durée du CoinJoin, puisque toutes les transactions sont en pratique de simples transferts vers leurs propres adresses. Même si des services de coordination comme le coordinateur Samourai Whirlpool, désormais hors service, sont utilisés pour permettre le processus de messagerie et de signature avec des centaines d’utilisateurs en temps réel, il n’est pas nécessaire de leur faire confiance d’une quelconque manière.
C’est fini maintenant, non ?
Pas forcément. Même si l’arrêt soudain non pas d’un, mais des deux principaux services de coordination CoinJoin porte un coup dur à tous ceux qui cherchent à améliorer leur confidentialité financière, la technologie CoinJoin ne va pas disparaître. Les implémentations de zkSNACKs et de Samourai Wallet sont toutes deux open source et peuvent, en théorie, être utilisées et hébergées par d’autres. Il existe en outre des approches décentralisées comme JoinMarket, qui ne reposent pas sur un service de coordination central et pourraient attirer davantage l’attention des utilisateurs comme des développeurs, maintenant que la demande en CoinJoin va se détourner de Samourai et Wasabi.
Conclusion
Les CoinJoin offrent un moyen efficace, sans tiers de confiance, de regagner ou de préserver sa confidentialité sur le réseau Bitcoin. Même si les erreurs de confidentialité liées aux transactions passées ne peuvent pas être annulées et que, même après un CoinJoin, les utilisateurs doivent continuer à surveiller de près leur sélection des coins, ils constituent un outil important pour la souveraineté financière et méritent d’être défendus.
Vous n’avez pas encore de BitBox ?
Protéger vos cryptos n’a pas besoin d’être compliqué. Le hardware wallet BitBox02 stocke hors ligne les clés privées de vos cryptomonnaies. Vous pouvez ainsi gérer vos coins en toute sécurité.
Le BitBox02 existe aussi en version Bitcoin-only, avec un firmware radicalement ciblé : moins de code signifie une surface d’attaque plus réduite, ce qui améliore encore votre sécurité si vous stockez uniquement du Bitcoin.
Commandez le vôtre dans notre boutique !

Shift Crypto est une société privée basée à Zurich, en Suisse. Notre équipe de contributeurs Bitcoin, d’experts crypto et d’ingénieurs en sécurité conçoit des produits qui permettent aux clients d’aborder la gestion des cryptomonnaies sereinement, du niveau débutant jusqu’à la maîtrise. Le BitBox02, notre hardware wallet de deuxième génération, permet aux utilisateurs de stocker, protéger et utiliser facilement du Bitcoin et d’autres cryptomonnaies, avec son compagnon logiciel BitBoxApp.
This post was translated with the help of AI