Glossaire / Confidentialité et sécurité
Contrôle des pièces
- Qu'est-ce que le contrôle des pièces ?
- Le contrôle des pièces est la fonction du portefeuille qui vous permet de choisir exactement quels bitcoins déjà détenus sont dépensés dans une transaction, au lieu de laisser le portefeuille choisir à votre place.
Un solde n'est pas un seul nombre mais un empilement de morceaux distincts, chacun étant le reste d'un paiement antérieur reçu dans votre portefeuille, et chaque dépense consomme des morceaux entiers. Ajouter un morceau supplémentaire à une transaction coûte environ 68 octets virtuels en frais et indique à quiconque lit la chaîne que les deux morceaux appartiennent au même propriétaire. Le contrôle des pièces est ce qui vous permet de reprendre cette décision.
Comment cela fonctionne
Tout portefeuille sélectionne déjà des pièces à votre place. Lorsque vous saisissez un montant et appuyez sur envoyer, un algorithme parcourt vos sorties non dépensées à la recherche d'une combinaison qui le couvre. Bitcoin Core utilise le solveur branch and bound de Murch depuis la version 0.17.0 en 2018, qui cherche un ensemble d'entrées correspondant assez précisément à la cible pour éviter complètement une sortie de monnaie. Il optimise les frais, et il ne sait rien des pièces que vous préféreriez ne pas toucher.
Activer le contrôle des pièces remplace cette estimation par une liste. Dans Bitcoin Core, vous cochez « Enable coin control features » dans les paramètres, et l'écran d'envoi fait apparaître un sélecteur d'entrées ; la fonctionnalité est présente dans le portefeuille graphique depuis la version 0.9.0 en 2014. Sparrow, Electrum, Wasabi et BlueWallet exposent tous la même chose sous forme d'un onglet UTXO où chaque pièce affiche son montant, son nombre de confirmations et l'étiquette que vous lui avez donnée.
Trois contrôles l'accompagnent. Vous pouvez sélectionner des entrées à la main, de sorte que la transaction ne dépense que les pièces que vous avez cochées. Vous pouvez geler une pièce, ce qui rend la sélection automatique définitivement aveugle à son égard. Et vous pouvez étiqueter les pièces à leur arrivée, ce que les gens négligent et regrettent ensuite, car une sortie non étiquetée vieille de six mois n'est qu'un nombre sans histoire attachée.
Choisir les entrées décide aussi de la monnaie. Dépensez une pièce de 250 000 satoshis pour payer 200 000, et vous créez une nouvelle pièce d'une valeur égale au reste moins les frais, qui hérite de l'historique de tout ce que vous venez de dépenser.
Pourquoi cela compte lorsque vous achetez du bitcoin
Retirer depuis une plateforme d'échange inscrit votre identité à côté d'une adresse dans la base de données de conformité de quelqu'un. Toutes les grandes plateformes de ce site vérifient d'abord l'identité, de sorte que les bitcoins qui arrivent dans votre portefeuille arrivent pré-étiquetés comme les vôtres aux yeux de quiconque exploite des analyses. Le contrôle des pièces est ce qui vous permet d'empêcher cette étiquette de se propager. Si vous acquérez plus tard du bitcoin ailleurs, lors d'un échange pair-à-pair ou d'un paiement pour un travail, garder ces bitcoins hors des mêmes transactions que vos retraits depuis une plateforme d'échange, c'est la différence entre deux histoires séparées et une seule.
La deuxième raison est le prix de revient. L'investissement programmé produit beaucoup de petites pièces : River ne facture rien sur les achats récurrents, et une habitude de retrait hebdomadaire vous laisse avec 52 sorties distinctes par an, chacune achetée à un prix différent. Les règles fiscales de la plupart des pays vous permettent d'identifier les unités que vous avez cédées, et le contrôle des pièces accompagné d'une étiquette datée sur chaque pièce entrante est ce qui rend cette identification prouvable plutôt que théorique. Vendre la pièce de 2 000 dollars plutôt que celle de 200 dollars change réellement la facture fiscale.
Troisièmement, cela protège ce que vous divulguez à une contrepartie. La personne que vous payez peut voir chaque entrée que vous avez utilisée, et donc la valeur totale des pièces que vous avez dépensées. Payer une facture de 40 dollars à partir d'une sortie d'épargne de 2 BTC indique au destinataire combien vous détenez. La payer à partir d'une petite pièce dédiée ne lui dit rien.
Choisir les entrées pour un paiement de 200 000 satoshis
Supposez que votre portefeuille contienne trois pièces : 40 000 satoshis issus d'un achat sur Swan, 250 000 satoshis retirés de Kraken, et 5 000 000 satoshis d'épargne à long terme provenant d'un portefeuille matériel que vous avez configuré il y a des années. Vous devez 200 000 satoshis à quelqu'un et la mempool est calme à 8 sat/vB.
Livré à lui-même, le portefeuille pourrait choisir la pièce de 40 000 et celle de 250 000 ensemble, car cette combinaison minimise le gaspillage. Le résultat est 2 entrées et 2 sorties, environ 209 octets virtuels, des frais d'environ 1 672 satoshis, et une déclaration publique permanente que la pièce de Swan et celle de Kraken appartiennent à la même personne.
Avec le contrôle des pièces, vous cochez la pièce de 250 000 satoshis seule. Cela donne 1 entrée et 2 sorties, environ 141 octets virtuels, des frais d'environ 1 128 satoshis, et une monnaie de 48 872 satoshis. Vous avez payé 544 satoshis de moins et divulgué une source au lieu de deux. La pièce d'épargne de 5 000 000 satoshis reste gelée et invisible pour l'algorithme, exactement comme il se doit.
Contrôle des pièces vs regroupement des UTXO
Le contrôle des pièces est le volant ; le regroupement est une destination particulière. Regrouper signifie dépenser délibérément de nombreuses pièces en une seule pour réduire les frais futurs, ce qui est une fusion que vous avez choisie. Le contrôle des pièces est la capacité générale de choisir, et la plupart du temps vous l'utilisez pour faire l'inverse, en gardant séparées des pièces que l'algorithme aurait combinées.
Contrôle des pièces vs CoinJoin
Le contrôle des pièces est une discipline de tenue de comptes et ne coûte rien d'autre que de l'attention. Il empêche la création de nouveaux liens, mais il ne peut pas effacer un lien qui existe déjà sur la chaîne. Un coinjoin est une transaction active et coordonnée avec des inconnus qui ajoute de l'ambiguïté à des pièces dont l'historique est déjà public. Les deux sont complémentaires, et le contrôle des pièces est celui qui compte d'abord, car une sélection d'entrées négligente défait un coinjoin en une seule dépense.