Aller au contenu principal
Transactions

Change

Le change est l'output qui retourne à l'expéditeur le surplus d'une transaction. Bitcoin n'a pas de division des inputs : si on dépense une UTXO de 1 BTC pour 0,3 BTC, on récupère 0,7 BTC en change (- frais). C'est un point clé de la confidentialité car il révèle souvent le wallet payeur.

Pourquoi Bitcoin produit du change

Bitcoin utilise le modèle UTXO (Unspent Transaction Output) : chaque pièce existe comme une « note » indivisible. Pour envoyer 0,3 BTC à partir d'une UTXO de 1 BTC, on dépense l'UTXO entière et on crée deux outputs : 0,3 BTC pour le destinataire, et environ 0,7 BTC pour soi-même (le change), moins les frais. C'est une mécanique différente du modèle « compte » d'Ethereum où l'on débite simplement un solde.

Exemple concret

Imaginons une dépense de 50 000 sats avec 1 200 sats de frais, depuis une UTXO de 200 000 sats :

| Élément | Valeur | |---------|--------| | Input | 200 000 sats (UTXO existante) | | Output 1 (destinataire) | 50 000 sats | | Output 2 (change) | 148 800 sats | | Frais (input − outputs) | 1 200 sats |

L'output de change retourne sur une nouvelle adresse appartenant au même wallet (chaîne interne, BIP-44 m/.../1/...).

Le problème de confidentialité

Le change est exploité par les chaînalystes pour cartographier les wallets via l'heuristique du change :

  • Output rond vs output non-rond (le non-rond est souvent le change)
  • Type de script identique aux inputs (le change reprend le script type)
  • Réutilisation d'adresse (les wallets paresseux n'utilisent qu'une adresse de change)
  • Ordre des outputs (certains wallets placent toujours le change en deuxième)
  • Co-spent avec d'autres outputs identifiés

Une fois le change identifié, on peut lier toutes les UTXO consommées à un même propriétaire, ce qui éclate la confidentialité.

Stratégies de mitigation

| Stratégie | Effet | |-----------|-------| | Change avoidance (BnB) | Supprime l'output de change | | Randomisation de l'ordre des outputs | Brise l'heuristique d'ordre | | Multi-script (P2WPKH + P2TR) | Mélange les types pour brouiller | | Coin control manuel | Choix conscient des UTXO | | Round numbers | Outputs payeur et change parfois ronds | | Payjoin | Casse la common input ownership | | CoinJoin | Anonymise massivement |

Sparrow Wallet et Wasabi Wallet implémentent plusieurs de ces techniques par défaut.

Le cas du « doxxic change »

Un « doxxic change » apparaît quand un output de change est manifestement le change (montant non rond, type identique aux inputs), associant clairement le destinataire à votre wallet. C'est la pire situation : votre paiement révèle votre adresse de change, qui révèle votre wallet entier.

À retenir

Le change est un sous-produit incontournable du modèle UTXO, mais aussi le talon d'Achille de la confidentialité on-chain. Le comprendre, et utiliser des wallets qui prennent au sérieux sa gestion (Sparrow, Wasabi, Samourai à l'époque, BlueWallet), est un saut qualitatif majeur dans la souveraineté financière.

Termes lies

← Retour au glossaire complet

Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.