Dépenser des bitcoins en privé

Prérequis

Ce guide explique comment envoyer des bitcoins tout en protégeant votre vie privée. Si vous ne connaissez pas encore Sparrow, le guide de démarrage rapide constitue une introduction utile.

L'importance de la protection de la vie privée dans le secteur du bitcoin

Pour comprendre pourquoi des outils de protection de la vie privée sont nécessaires, il est important de comprendre le modèle UTXO de Bitcoin.

Chaque solde de bitcoin est représenté par une sortie de transaction (TXO), qui est envoyée à une adresse spécifique. Avant que ces fonds ne soient dépensés, ils sont appelés sorties de transaction non dépensées (UTXO). Chaque UTXO a un montant unique et fixe.

Lorsque vous dépensez des bitcoins, vous combinez un ou plusieurs UTXO en tant qu'intrants pour votre transaction. Une fois la transaction confirmée sur la blockchain, ces UTXO d'entrée deviennent "dépensés", ce qui signifie qu'ils ne peuvent plus être utilisés. Si le montant que vous dépensez ne correspond pas exactement aux UTXO d'entrée, une "monnaie" est créée, renvoyant les fonds restants dans votre portefeuille sous la forme d'un nouvel UTXO.

La blockchain Bitcoin étant publique, ce modèle a plusieurs implications pour la protection de la vie privée :

  • Révéler son équilibre : N'importe qui peut voir les UTXO que vous avez utilisés pour vos transactions, ce qui peut révéler des informations sur votre solde.
  • Suivi de vos dépenses : La blockchain publique permet aux observateurs de voir quand la "monnaie" (et les sorties de monnaie ultérieures) est dépensée, révélant ainsi vos habitudes de dépenses au fil du temps.
  • UTXO Clustering : Toutes les UTXO d'entrée d'une transaction sont souvent supposées appartenir au même propriétaire, créant ainsi une grappe qui relie vos transactions.
  • Analyse de la blockchain : Les outils d'analyse de la blockchain utilisent l'heuristique pour déterminer les changements de propriété et identifier votre activité financière.

Outils de protection de la vie privée

Les outils de protection de la vie privée visent à perturber ces heuristiques et à protéger votre vie privée. En voici quelques exemples :

  • Coïncide : Ceux-ci combinent les transactions de plusieurs utilisateurs, ce qui introduit de la confusion et de l'entropie dans le graphe des transactions.
  • Payjoin : Cela rompt les hypothèses sur la propriété d'UTXO, ce qui rend plus difficile le suivi de vos fonds.

Pourquoi la protection de la vie privée est importante

En utilisant les outils de protection de la vie privée, vous pouvez

  • Obfusquer l'historique des transactions : rendre difficile l'établissement d'un lien entre vos transactions et le suivi de vos dépenses.
  • Protégez votre équilibre : Réduire la quantité d'informations divulguées sur vos avoirs financiers.

Fausses pièces de monnaie pour deux personnes (transaction Stonewall)

Un moyen courant d'accroître la confidentialité des transactions en bitcoins consiste à utiliser une technique appelée "equal output coinjoin". Cette technique consiste à faire contribuer plusieurs personnes à la création d'une transaction dont les montants de sortie sont égaux. Cette ambiguïté rend plus difficile la traçabilité de la propriété des fonds, car chaque sortie peut appartenir à n'importe lequel des participants.

Un moyen simple d'introduire de la confidentialité sans avoir à se coordonner avec d'autres personnes consiste à créer une "fausse jointure de pièces" (également connue sous le nom de "transaction Stonewall"). Il s'agit d'une transaction que vous créez vous-même, mais qui semble avoir été créée par plusieurs personnes. Un observateur extérieur ne peut pas dire si le coinjoin est vrai ou faux.

Avantages des fausses pièces de monnaie :

  • Pas de collaboration : Vous n'avez pas besoin de travailler avec quelqu'un d'autre.
  • Fonctionne avec n'importe quel portefeuille : Cette technique peut être utilisée avec n'importe quel type de portefeuille, y compris les portefeuilles matériels.

Comment cela fonctionne-t-il ?

Imaginez une transaction avec deux résultats égaux. Il peut s'agir d'un véritable coinjoin où deux personnes ont apporté des fonds, ou de la division de vos propres fonds en deux sorties égales. Cette ambiguïté fait qu'il est difficile de savoir quels fonds appartiennent à qui.

Remarque : Bien que les faux coinjoins assurent une certaine confidentialité, ils ne sont pas aussi efficaces que les vrais coinjoins, qui impliquent une véritable collaboration entre plusieurs parties.

Pour créer un coinjoin avec vous-même, allez dans l'onglet Envoyer de Sparrow et créez une transaction comme vous le feriez normalement. Ensuite, activez l'optimisation pour Vie privée dans le coin inférieur gauche. Si votre portefeuille dispose de suffisamment de fonds, Sparrow construira automatiquement un coinjoin pour vous.

Voici comment Sparrow va construire le coinjoin :

fausse technique de jonction de pièces

Sparrow créera un coinjoin avec deux ensembles d'entrées, représentant chaque "individu" dans le coinjoin. Étant donné que chaque " individu " doit contribuer à un montant supérieur à celui du paiement, votre porte-monnaie doit disposer de suffisamment de fonds pour couvrir le double du paiement que vous effectuez. Si vous n'avez pas assez de fonds, vous pouvez toujours effectuer une coinjoin collaborative, dont nous parlerons plus tard.

La transaction aura plusieurs résultats :

  • Le premier résultat est le paiement effectif à l'adresse indiquée dans le champ Payer à domaine.
  • La deuxième sortie est un "leurre" du même montant (5 670 sats), envoyé à l'une de vos adresses de changement.
  • Enfin, deux sorties de monnaie, une pour chaque "individu", sont renvoyées vers votre portefeuille.

Pour un observateur extérieur, cette transaction ressemble à une véritable coinjoin à deux personnes, mais il s'agit en fait d'une transaction où vous utilisez vos propres fonds pour créer l'illusion d'une coinjoin. Cette couche supplémentaire de confidentialité s'accompagne de frais légèrement plus élevés en raison des entrées et sorties supplémentaires.

Pour créer ce type de coinjoin dans Sparrow, l'adresse à laquelle vous payez doit être du même type que votre portefeuille. Cela permet de s'assurer que les résultats sont similaires et de renforcer l'illusion d'une véritable jointure de pièces.

Vous pouvez maintenant créer, signer et diffuser cette transaction comme vous le feriez normalement, tout en bénéficiant d'une plus grande confidentialité.

PayNym et codes de paiement pour les paiements non interactifs

Dans l'exemple précédent, vous deviez obtenir une nouvelle adresse du destinataire pour chaque paiement. Mais qu'en est-il si vous souhaitez payer quelqu'un sans avoir à le contacter à chaque fois ? C'est là que PayNyms et les codes de paiement entrent en jeu.

Codes de paiement :

  • Identifiant unique : Chaque portefeuille peut créer un identifiant unique appelé code de paiement.
  • Génération déterministe : Ce code est généré de manière déterministe, c'est-à-dire qu'il est calculé sur la base d'un algorithme spécifique.
  • Vie privée : Un code de paiement ne révèle aucune information sur votre portefeuille, ce qui permet de le partager en toute sécurité.
  • Longueur : Les codes de paiement sont assez longs, ce qui les rend difficiles à partager en personne.

PayNyms :

  • Répertoire : Le répertoire PayNym à l'adresse https://PayNym.is vous permet de créer un nom court et convivial pour votre code de paiement.
  • Exemple : Un PayNym pourrait ressembler à +roundgrass881.
  • Unicité : Chaque PayNym est unique.
  • Photos du profil : Les PayNyms sont associés à des images de profil "robot" afin de les rendre plus faciles à mémoriser.
  • Contacts : Chaque PayNym peut avoir une liste de contacts représentant d'autres PayNyms avec lesquels vous interagissez régulièrement.

Utiliser PayNyms :

  • En option : L'utilisation de PayNym est facultative et peut être activée dans le fichier de configuration.
  • Codes de paiement : Vous pouvez toujours utiliser les codes de paiement directement sans créer de PayNyms.

Avantages :

  • Paiements non interactifs : Vous pouvez payer quelqu'un sans avoir à demander une nouvelle adresse à chaque fois.
  • Vie privée : Les PayNyms et les codes de paiement permettent de protéger votre vie privée en cachant les informations de votre portefeuille.
  • Facilité d'utilisation : Les PayNyms, courts et conviviaux, facilitent le partage des informations de paiement.

Les PayNyms sont une fonctionnalité de Sparrow qui permet des paiements non interactifs plus transparents et privés.

Payer à un PayNym

Vous pouvez envoyer un paiement directement à un PayNym, qui acheminera automatiquement les fonds vers une adresse privée connue uniquement de vous et du destinataire.

Dans le cadre de la Envoyer cliquez sur la flèche vers le bas à droite de l'onglet Payer à et sélectionnez PayNym...

envoyer à paynym

Vous verrez une boîte de dialogue affichant le PayNym associé à votre portefeuille. Si vous souhaitez le récupérer, cliquez sur le bouton Récupérer le numéro de paye bouton.

payer à payernym

Une fois que vous avez sélectionné PayNym... dans le Envoyer vous devez trouver le PayNym du destinataire :

  1. Trouver un contact : Recherchez le PayNym dans votre liste de contacts.
  2. Ajouter un contact : Si le PayNym ne figure pas dans votre liste, saisissez-le dans le champ Trouver un contact et cliquez sur Ajouter un contact lorsqu'il apparaît.
  3. Lien Contact : Après avoir ajouté le PayNym, cliquez sur le bouton Lien Contact bouton.

Lier un contact :

L'établissement d'un lien avec un contact implique l'envoi d'une petite transaction de notification à une adresse associée au PayNym auquel vous envoyez des fonds. Cette opération est nécessaire pour établir une connexion et s'assurer que le PayNym est prêt à recevoir des fonds. Cette transaction de notification coûtera 546 sats (plus les frais de minage).

Alternative : Paiement direct avec code de paiement :

Vous pouvez également envoyer directement un code de paiement en le collant dans le champ "Payer à".

Remarque : Actuellement, les paiements directs vers PayNyms ne sont pas pris en charge par les portefeuilles Taproot (P2TR).

paynym linking

Après avoir lié un contact, Sparrow et le portefeuille PayNym créeront un ensemble unique d'adresses d'envoi et de réception pour les deux portefeuilles. Cela vous permet d'envoyer des paiements de manière indépendante et privée à ce PayNym sans avoir besoin d'une interaction supplémentaire.

  • Lien unique : La transaction de notification ne doit être envoyée qu'une seule fois pour établir le lien.
  • Lien de contact : Si le PayNym vous ajoute comme contact, il sera automatiquement lié à vous et pourra envoyer des paiements de la même manière.
  • Stockage de la blockchain : Le lien est stocké sur la blockchain.
  • Restauration des semences : Si vous devez restaurer votre portefeuille à partir d'une sauvegarde, vous pouvez utiliser la graine de votre portefeuille pour récupérer les fonds envoyés à ces adresses.
  • Portefeuille principal : Les fonds qui vous sont envoyés grâce à cette fonction apparaîtront dans votre portefeuille principal, même si vous avez configuré plusieurs comptes.

Envoi à un PayNym lié :

  1. Envoyer à Contact : Cliquez sur Envoyer au contact pour initier le paiement.
  2. PayNym dans Pay To Field : La boîte de dialogue se ferme et le Payer à Le champ d'affichage indiquera que vous payez à un PayNym.
  3. Étiquette et montant : Saisissez votre étiquette de paiement et le montant.

Paiement direct :

  • Adresse privée : Sparrow utilisera automatiquement une adresse d'envoi privée connue uniquement de vous et du destinataire de PayNym.
  • Créer une transaction : Poursuivre la transaction comme d'habitude (créer, signer et diffuser).

Conclusion

En utilisant ces outils, vous pouvez améliorer considérablement la confidentialité de vos transactions avec Bitcoin. Lier et payer directement à un PayNym est particulièrement utile pour envoyer et recevoir des paiements de manière indépendante, sans avoir besoin d'un serveur pour fournir de nouvelles adresses. Il s'agit d'une fonctionnalité puissante qui peut vous aider à garder le contrôle de votre confidentialité financière. Pensez à utiliser ces techniques de protection de la vie privée pour chaque transaction que vous envoyez. Il n'est jamais trop tard pour commencer à donner la priorité à votre vie privée dans l'écosystème Bitcoin.