Rencontrez CoinJoin, un protocole de mélange de devises décentralisé et sécurisé pour Bitcoin et les crypto-monnaies compatibles, qui permet aux utilisateurs d'améliorer les niveaux de confidentialité et d'anonymat des utilisateurs, en protégeant leur identité des outils d'analyse de la blockchain et des BigData.
Eprotocole l CoinRejoindre, est un protocole implémenté pour améliorer la confidentialité et l'anonymat des utilisateurs de Bitcoin. Cette méthode consiste à pouvoir unifier dans un même ensemble toutes les transactions qui seront effectuées par différents utilisateurs du système. Ainsi, une fois toutes ces transactions unifiées, aucun utilisateur ne peut déterminer d'où proviennent les fonds; car les entrées et sorties de ces transactions ne peuvent être ni vues ni associées. Ainsi, même le destinataire d'une transaction ne pouvait pas dire d'où il avait reçu les fonds transférés.
La mise en œuvre de cette méthode est particulièrement utile pour éviter de suivre les fonds reçus ou les paiements effectués dans le système Bitcoin. Surtout si nous prenons soin de notre vie privée et que nous nous en souvenons bien que Bitcoin soit privé, il n'est pas anonyme. Cela signifie que les transactions Bitcoin peuvent être tracées jusqu'au point de trouver votre identité. Ce n'est certes pas une tâche facile, mais l'analyse des transactions et les profils numériques permettent ce type de construction, aussi difficile que cela puisse paraître. Cela devient de plus en plus facile à faire et les transactions Bitcoin ne disparaissent jamais, ni ne disparaîtront, avec tous leurs liens créés.
Pour cette raison, et pour augmenter la confidentialité, CoinJoin a été conçu. Voyons maintenant comment fonctionne CoinJoin, quelles options il nous offre et ses capacités et limitations (dont il dispose également).
Origine de CoinJoin
Le concept a été introduit par le développeur Gregory Maxwell, qui en août 2013 a fait un Publicación dans votre compte BitcoinTalk, où il a expliqué en détail le développement et le fonctionnement de son idée, soulignant également que cela n'implique pas une modification du protocole Bitcoin.
Le besoin de ce type de solution est né de la recherche d'une confidentialité plus protégée au sein de Bitcoin. Rappelons-nous que Bitcoin n'est pas une crypto-monnaie vraiment anonyme, mais une pseudo-anonyme. Cela signifie que chacune des transactions que nous effectuons apparaît de manière totalement transparente sur la blockchain.
Mais pas seulement cela, mais il est également possible de créer un profil complet des adresses que nous utilisons. Y compris les adresses à partir desquelles nous recevons de l'argent ou les adresses que nous envoyons, en précisant les montants dans chacune d'elles. Bien entendu, dans chacune de ces transactions, il n'y a jamais de données telles que des noms ou qui nous identifient directement en tant qu'utilisateurs.
Mais si les pirates et les analystes aiment quelque chose, ce sont des défis. Le défi de la confidentialité Bitcoin a conduit ces groupes à créer des outils spécialisés pour étudier ces données et les relier à toute autre activité en ligne que nous avons. En conséquence, ils collectent nos données sur la blockchain et sur Internet, créent un profil et si nous ne faisons pas assez attention, ils peuvent retrouver en toute sécurité nos vraies identités.
C'est ainsi que plusieurs sociétés d'analyse de la blockchain parviennent à trouver l'identité de nombreux utilisateurs de crypto-monnaie, et c'est ainsi que la confidentialité et le pseudo anonymat de Bitcoin sont réduits à néant.
Dans ce contexte, la création de CoinJoin a été présentée comme une réponse satisfaisante. En effet, si cet outil est bien utilisé, il est pratiquement impossible de suivre les utilisateurs de Bitcoin. De plus, la création de CoinJoin était techniquement supérieure à celle du pièce de mixage, une autre option qui était déjà utilisée à l'époque. La raison en est que CoinJoin a agi comme un protocole P2P tandis que les pièces de mixage étaient centralisées, données aux escroqueries et autres pillages.
Comment fonctionne CoinJoin?
Tout d'abord, pour effectuer une transaction CoinJoin, il est nécessaire que plusieurs utilisateurs du réseau établissent la décision d'utiliser cette méthode. Autrement dit, tout le monde est d'accord sur joindre des transactions pour faire une seule transaction groupée et conjointe. Autrement dit, sans que d'autres personnes (ou plutôt des adresses avec des fonds) veuillent se mélanger avec vous, vous ne pouvez pas utiliser CoinJoin.
Cependant, cela ne signifie pas qu'en regroupant toutes les transactions en une seule, vous donnez en quelque sorte le contrôle des transactions à une partie spécifique. Non, c'est plutôt le contraire. Sur les transactions Bitcoin CoinJoin les signatures de chaque transaction restent indépendantes les unes des autres. Ceci quel que soit le nombre de transactions regroupées dans une transaction CoinJoin.
Ensuite, chaque utilisateur aura un contrôle particulier sur ses entrées et sorties et ne signera une opération que s'il est d'accord avec ladite transaction et si elle est correcte. Et jusqu'à ce que tous les utilisateurs participants dans un signe de transaction CoinJoin, la transaction ne sera pas effectuée.
Désormais, une fois que tous les utilisateurs auront signé chaque transaction particulière, ils seront regroupés dans la même transaction CoinJoin, qui sera traitée et validée par les mineurs pour l'inclure dans la blockchain. Où cela sera reflété comme une transaction unique et conjointe, qui ne montre pas clairement d'où proviennent les fonds ni où ils ont été envoyés
Comprendre le fonctionnement de CoinJoin
Maintenant, pour comprendre exactement comment fonctionne CoinJoin, il est préférable de le voir à travers un exemple. On a donc le cas suivant:
Supposons que Maria veuille transférer 1 BTC de l'adresse A à l'adresse B.Tandis que Juan souhaite transférer 1 BTC de l'adresse C à l'adresse D.Pour rendre cette transaction privée, ils décident tous les deux d'utiliser CoinJoin aux fins de combiner leurs transferts en une seule transaction qui a deux entrées (A et C) et deux sorties (B et D).
Ce que fait CoinJoin dans tout cela, c'est de prendre les entrées de María et Juan, de les combiner dans la même transaction, et à partir d'elles, de mélanger ces devises pour générer les transactions qui iront à leur destination. Si l'opération nécessite le remboursement d'un changement, la transaction CoinJoin créera également cette transaction et l'envoyera à une adresse d'échange sous le contrôle de la personne qui possède ces pièces. L'opération de paiement CoinJoin n'aura lieu que lorsque María et Pedro signeront cryptographiquement leurs transactions respectives.
Cependant, l'astuce de CoinJoin montre toute sa puissance sur la blockchain. Normalement, les transactions de Maria et Juan montreraient un modèle clair de livraison de pièces. Autrement dit, les pièces vont de votre adresse à l'adresse de destination. Mais dans CoinJoin, nous pouvons voir une seule transaction où plusieurs entrées sont jointes et il y a plusieurs sorties.
Cela rend plus difficile pour un tiers de déterminer quel destinataire a reçu quelle sortie. Même le destinataire de la transaction ne serait pas en mesure de déterminer de quelle adresse proviennent les fonds reçus, car les UTXO ne sont pas directement liés à une adresse elle-même, mais à une transaction à entrées multiples, toutes indépendantes.
De cet exemple, nous pouvons déduire ce qui suit:
- CoinJoin utilise le schéma des pièces UTXO ou Bitcoin non dépensées, pour générer avec eux un schéma massif d'entrées pour la même transaction. Bien sûr, ces UTXO proviennent du solde disponible pour chacune des personnes qui participent au programme CoinJoin, donc plus il y a de personnes qui participent, plus le niveau d'anonymat atteint est élevé.
- En prenant tous les UTXO des personnes du CoinJoin comme entrées, un mélange de devises de ces UTXO est généré.
- Le paiement du CoinJoin aura lieu une fois que toutes les personnes auront signé la transaction conjointe et accepté les soldes qu'elle présente.
- Enfin, CoinJoin effectuera le paiement. En fonction de l'implémentation, CoinJoin peut effectuer divers paiements vers d'autres adresses intermédiaires qui créeront également un CoinJoin supplémentaire. Une mesure qui vise à augmenter le niveau de sécurité de la transaction. Mais finalement, le CoinJoin apportera le solde de paiement de Maria et Juan à leurs destinataires. Dans la blockchain, nous verrons une seule transaction, plusieurs sorties et rien qui les relie les unes aux autres. Nous avons effectué une transaction anonyme.
Pourquoi CoinJoin est-il important dans Bitcoin?
Bitcoin est un système décentralisé et autonome qui offre un certain degré de confidentialité dans les transactions. Étant donné qu'au lieu de demander des données personnelles comme dans les systèmes traditionnels, Bitcoin utilise uniquement adresses, qui fonctionnent comme un type de compte bancaire où vous pouvez recevoir de l'argent sans aucun risque. Cependant, Bitcoin est aussi un système transparent et auditable, ce qui signifie que dans un explorateur de blockchain Vous pouvez librement observer les transactions effectuées dans ce système depuis sa création en 2009 jusqu'à aujourd'hui.
Ainsi, même si les données personnelles ne sont pas divulguées, tout tiers pourrait suivre certaines adresses pour voir comment les fonds y sont déplacés ou gérés. Déterminer l'activité transactionnelle d'un utilisateur au sein du réseau. N'oubliez pas que, bien que Bitcoin n'utilise pas les données personnelles d'un utilisateur, il est possible d'associer une adresse particulière à une personne ou une entreprise.
Par exemple, si cette personne ou cette entreprise a ouvertement publié qu'elle est propriétaire d'une adresse particulière, ou si les adresses IP à partir desquelles plusieurs transactions ont été effectuées sont surveillées et suivies. C'est pourquoi Bitcoin est connu comme un système pseudo anonyme, c'est-à-dire qu'il offre un anonymat partiel à ses utilisateurs.
Cette fonctionnalité permet dans Bitcoin de marquer / étiqueter certaines devises comme «corrompues ou contaminées». Si un suivi révèle qu'ils ont été impliqués dans des échanges frauduleux de blanchiment d'argent ou de financement d'activités illégales. Ce qui nuit également à la qualité fongibilité à la crypto-monnaie; c'est-à-dire sa capacité à être consommable et extensible. Étant donné que de nombreux utilisateurs du réseau ne voudront pas utiliser ces crypto-monnaies qui ont été étiquetées comme «contaminées» parce qu'elles sont liées à des activités illégales. Ainsi, un bitcoin n'est plus le même qu'un autre bitcoin.
C'est pourquoi la mise en œuvre de la méthode CoinJoin offre une solution alternative viable à ces problèmes de confidentialité du système Bitcoin. En évitant que les transactions effectuées sur le réseau soient suivies par des tiers ou liées à certaines activités.
Implémentations CoinJoin
Comme nous l'avons mentionné au début, CoinJoin a été initialement implémenté sur la blockchain Bitcoin afin d'améliorer votre confidentialité et votre anonymat. Cependant, à ce jour, il existe plusieurs implémentations de cette méthode, la plus courante et la Samourai portefeuille, Portefeuille Wasabi y JoinMarket.
La Samourai portefeuille Il est orienté vers la protection et la garantie de la vie privée des utilisateurs. Il implémente donc la méthode CoinJoin via l'interface de Tourbillon pour mélanger et faire correspondre les entrées et les sorties des transactions du même utilisateur, pour les faire apparaître comme provenant d'une transaction CoinJoin. Ce portefeuille est disponible pour les ordinateurs et les smartphones fonctionnant avec le système Android. En plus, nous avons un guide complet sur l'utilisation du portefeuille Samurai et de son Whirlpool afin que vous puissiez tirer le meilleur parti de CoinJoin.
Pour sa part, Portefeuille Wasabi utiliser le service de Pièce chaumienne et le protocole réseau Tor pour mélanger les transactions et garantir une confidentialité maximale à ses utilisateurs. Rendre les transactions pratiquement impossibles à retracer, ainsi que les adresses IP publiques utilisées. Les taux de commission pour l'utilisation de ces services de confidentialité et d'anonymat sont gérés dans les deux portefeuilles.
De même, la mise en œuvre du logiciel JoinMarket of CoinJoin cherche, de la même manière, à améliorer la confidentialité et l'anonymat dans les transactions Bitcoin. Permettre aux utilisateurs d'acheter, à un taux très bas, une place dans une transaction CoinJoin, comme s'il s'agissait d'un marché. En réalité, JoinMarket fonctionne comme un marché pour les transactions Bitcoin.
En résumé, la mise en œuvre de CoinJoin s'est avérée être une méthode très efficace et efficiente pour garantir la confidentialité et l'anonymat sur le réseau Bitcoin. Mais comme toute méthode, elle nécessite une utilisation massive pour garantir l'anonymat de tous les bitcoins existants à ce jour. Plus le nombre d'utilisateurs qui implémentent CoinJoin est élevé, plus le nombre de bitcoins privés est élevé.
Curiosités sur CoinJoin
À ce stade, il est important de mettre en évidence certaines curiosités sur CoinJoin, nées des questions et des préoccupations des utilisateurs de Bitcoin. Parmi eux, nous pouvons citer:
CoinJoin et le mythe de l'anonymat absolu
CoinJoin ne garantit pas l'anonymat à 100%. En effet, l'analyse des données, le comportement de la blockchain, même l'interception de données réseau peuvent toujours être effectués pour l'analyse d'une cible sous enquête à l'aide de Bitcoin. Le mythe selon lequel CoinJoin garantit une confidentialité à 100% est donc faux. Cela l'améliore certainement à un niveau jamais vu dans Bitcoin sans ce protocole, mais l'anonymat complet n'est en aucun cas garanti.
Coûts d'une transaction
Le coût d'une transaction CoinJoin est beaucoup plus élevé que celui d'une transaction Bitcoin courante. En effet, CoinJoin effectue des «mix jump» qui ne sont rien de plus que des transactions de crypto-monnaie supplémentaires entre les participants de CoinJoin. Chacun de ces sauts génère une nouvelle transaction qui à son tour a des frais miniers associés. Au total, plus le minage saute, plus l'anonymat est élevé, mais plus le coût de la transaction finale CoinJoin est élevé.
Avantages et inconvénients de CoinJoin
Maintenant que nous en savons un peu plus sur CoinJoin et ce qu'il fait, il est temps de savoir quels sont les avantages et les inconvénients. En ce sens, on peut citer:
Avantages
- Cela améliore considérablement la confidentialité de nos opérations de crypto-monnaie.
- Aide à éviter l'étiquetage des pièces dans des environnements centralisés. Par exemple, une pièce qui a été utilisée dans des environnements criminels peut être lavée et mise en circulation sans problème. Quelque chose de particulièrement utile si la monnaie est revenue aux mains légales et plus encore si l'on tient compte du fait que Bitcoin est limité à seulement 21 millions de pièces.
- CoinJoin n'a pas besoin de changements de protocole pour fonctionner. Quelque chose de positif qui maintient la compatibilité de Bitcoin avec d'autres clients sans causer de problèmes majeurs.
Inconvénients
- CoinJoin peut entacher notre Bitcoin avec d'autres Bitcoin d'activités illicites. Voici un jugement de valeur, de liberté et de morale de la part de chaque utilisateur, dans lequel il faut garder à l'esprit que si vous rejoignez CoinJoin, les utilisateurs qui ont acquis ce bitcoin illégalement peuvent participer avec vous.
- Il peut y avoir exposition des données utilisateur. Cela est possible si vous joignez vos soldes gérés avec CoinJoin avec d'autres soldes gérés avec votre identité. À ce stade, il est possible de faire une analyse de données qui peut révéler votre identité même si vous utilisez CoinJoin.
L'avenir de la confidentialité et de l'anonymat dans Bitcoin
Maintenant, il est certain que Bitcoin n'est pas complètement anonyme a provoqué différentes réactions dans la communauté. D'une part, de nombreux utilisateurs pensent que Bitcoin doit être anonyme dans son intégralité, ce que partagent de nombreux développeurs. La question demeure donc: à quoi pouvons-nous nous attendre pour l'avenir du Bitcoin? La vérité est que beaucoup. La création de CoinJoin est une réponse aux besoins de confidentialité de nombreuses personnes. Ce n'est certainement pas une version par défaut qui fonctionne pour tout le monde, mais l'option est là et cela fonctionne très bien.
Mais nous devons être conscients que la confidentialité, l'anonymat et la sécurité totale ne peuvent être garantis dans un monde 100% numérique. Cela dit, les développeurs de Bitcoin ont déployé des efforts plus prudents et concentrés sur une meilleure protection de la vie privée et la création de divers mécanismes qui aident à mieux protéger la confidentialité et le pseudo-anonymat déjà disponibles dans Bitcoin. Des créations comme CoinJoin, JoinMarket ou des sidechains comme Lightning Network et Liquid Network aident beaucoup à créer une meilleure confidentialité et un meilleur anonymat pour ceux qui en ont besoin.
Un autre exemple du développement d'options de confidentialité et d'anonymat dans Bitcoin sont les Transactions confidentielles. On peut voir ce type d'options conçues dans le projet Elements par BlockStream et ils s'appliquent à Bitcoin, où ils peuvent être activés au moyen d'un soft fork. Donc en quelques mots, en Bitcoin, ils parient sur l'anonymat du choix et non l'anonymat par défaut, sachant que l'anonymat par défaut et la sécurité par l'obscurité, n'offrent pas réellement une certitude à 100% que ledit anonymat est complet.
En fait, ce type d'approche peut faire est d'introduire des changements incompatibles avec le réseau actuel nécessitant des hard forks. Cela peut également conduire à de graves failles de sécurité en raison de la difficulté de transférer des techniques de cryptage plus avancées et afin de parvenir à l'anonymat sur le réseau. Un bon exemple de cela peut être vu dans les événements de Zcash et GRIN.
Dans le premier cas, Zcash avait un bug pendant plusieurs mois, cela a permis à quiconque le connaissait de créer des pièces à partir de zéro. Cela inclut les transactions coinbase qui génèrent ces pièces. Une grave erreur qui pourrait conduire ladite crypto-monnaie à une catastrophe totale. Dans le second, le protocole MimbleWimble a un design qui peut être exploité pour détruire toute l'intimité et l'anonymat qu'il prétend avoir.
Face à de tels faits, l'approche Bitcoin est non seulement plus prudente, mais aussi moins risquée pour l'écosystème et le protocole lui-même. Et en même temps, il vous permet de créer des outils de confidentialité qui s'améliorent de plus en plus au fil du temps.