Glossaire / Confidentialité et sécurité
Évitement de fusion
- Qu'est-ce que l'évitement de fusion ?
- L'évitement de fusion consiste à ne jamais dépenser deux de vos bitcoins dans la même transaction, afin que les différentes parties de votre portefeuille ne soient pas reliées publiquement entre elles.
Le terme vient d'un essai de décembre 2013 écrit par Mike Hearn, à une époque où le regroupement des entrées était déjà le moyen le plus simple de cartographier les avoirs de quelqu'un. Sa proposition allait plus loin qu'une dépense prudente : un payeur envoyait plusieurs transactions parallèles vers plusieurs adresses du destinataire, de sorte qu'aucune transaction unique ne rassemblait tout. Aujourd'hui, elle subsiste comme une discipline plutôt que comme un protocole.
Comment cela fonctionne
La règle de l'évitement de fusion est négative, ce qui la rend facile à suivre et facile à oublier. Ne construisez jamais une transaction dont les entrées proviennent de deux bitcoins que vous voulez garder séparés.
En pratique, cela signifie traiter votre portefeuille comme un ensemble de bocaux plutôt que comme un solde. Un bocal contient des bitcoins retirés d'un compte de plateforme d'échange vérifié. Un autre contient des bitcoins achetés en pair-à-pair ou reçus en paiement. Un troisième contient l'épargne de long terme. Chaque dépense puise dans un seul bocal, et si le bocal ne contient aucun bitcoin assez gros à lui seul, vous envoyez moins, vous envoyez depuis un autre bocal, ou vous acceptez que ce paiement précis fusionne deux bitcoins et vous tenez compte de ce lien.
La version plus stricte de Hearn faisait porter le travail au payeur. Au lieu d'assembler une transaction à partir de trois bitcoins, le payeur diffusait trois transactions distinctes vers trois adresses fournies par le destinataire, de sorte que le paiement arrivait intact sans que rien dans les données de la chaîne ne relie les éléments. Le protocole de paiement qu'il concevait prenait en charge plusieurs adresses de sortie dans une seule demande ; il a été abandonné il y a des années, et aucun portefeuille grand public n'automatise ce schéma aujourd'hui.
Le coût est réel et il se paie plus tard. Refuser de fusionner signifie garder beaucoup de petits bitcoins, et les petits bitcoins coûtent cher à déplacer : dépenser une entrée SegWit native coûte environ 68 octets virtuels, donc à 150 sat/vB en période de forte activité, cela représente 10 200 satoshis, la moitié de la valeur d'un bitcoin de 20 000 satoshis. Poussez plus loin et les bitcoins passent sous le seuil de poussière, où les dépenser coûte plus qu'ils ne valent. L'évitement de fusion protège la confidentialité en acceptant une taxe de frais permanente et un plancher sur la taille utile minimale de vos bitcoins.
Où cela se voit
L'évitement de fusion apparaît comme une fonctionnalité dans les portefeuilles qui prennent la confidentialité au sérieux.
Sparrow, Wasabi et Electrum indiquent tous quels bitcoins précis une dépense va consommer avant que vous ne signiez, ce qui transforme une fusion invisible en choix visible. Le gel fonctionne comme un mécanisme d'application brutal : gelez les bitcoins du bocal dans lequel vous ne dépensez pas et la sélection automatique ne peut plus les atteindre. Certains vont plus loin et utilisent des portefeuilles séparés, ou des comptes séparés sous une même phrase de récupération, de sorte qu'aucun écran d'envoi ne puisse même voir les deux piles.
L'endroit où cela n'est pas facultatif, c'est après un coinjoin. Les sorties mélangées tirent leur confidentialité du fait d'être indiscernables des sorties mélangées d'autres personnes, et en dépenser deux ensemble prouve immédiatement qu'elles appartiennent à une seule personne, ce qui anéantit tout le résultat. Il en va de même pour la monnaie rendue en entrant dans un mélange : elle reste séparée pour toujours, sinon le mélange n'a servi à rien.
Évitement de fusion vs CoinJoin
Hearn présentait l'évitement de fusion et le coinjoin comme des alternatives dans l'essai d'origine, et la comparaison tient toujours. L'évitement de fusion est gratuit, n'exige aucune contrepartie et n'attire pas l'attention, parce que les transactions qu'il produit ressemblent à celles de tout le monde. Ce qu'il ne peut pas faire, c'est aider avec des liens qui existent déjà : il protège l'avenir, jamais le passé. Un coinjoin fait l'inverse, en dépensant de l'argent réel et en produisant une transaction manifestement collaborative en échange d'une ambiguïté sur des bitcoins dont l'historique est déjà public. Faire le second sans le premier, c'est de l'argent gaspillé.