Depuis le 30 décembre 2024, le « règlement sur les transferts de fonds » (ToFR), aussi connu sous le nom de « Travel Rule », est entré en vigueur dans tous les États membres de l’Union européenne, avec pour objectif de lutter contre le blanchiment d’argent et d’autres activités criminelles impliquant des cryptomonnaies. Pour se conformer à cette nouvelle réglementation, de nombreux courtiers et plateformes d’échange commencent à mettre en place des étapes de vérification lors des retraits et des dépôts de bitcoin et d’autres cryptomonnaies depuis et vers votre compte d’échange.

Même si ces réglementations ne vous concernent pas directement en tant que client BitBox, puisque la BitBox02 est un portefeuille indépendant et en auto-garde, les procédures de vérification mentionnées peuvent tout de même être agaçantes et entraîner des problèmes auxquels beaucoup de prestataires n’ont peut-être pas pensé. Voyons ce que sont réellement les « tests Satoshi », ce à quoi il faut faire attention lors de la création d’une transaction de test et, surtout, comment ce processus de vérification pourrait être grandement amélioré grâce au protocole de preuve de propriété d’adresse (AOPP).

Tests Satoshi

Lorsque vous envoyez ou retirez des cryptomonnaies depuis votre compte d’échange, la plateforme peut avoir besoin de vérifier que vous contrôlez bien le portefeuille d’envoi ou de réception avant de poursuivre l’opération. Par exemple, pour respecter le ToFR ou d’autres restrictions locales. D’un point de vue technique, il existe plusieurs façons d’y parvenir, même si aucune ne remplit réellement son objectif, comme nous le verrons plus loin.

Les « tests Satoshi » sont sans doute la manière la plus primitive d’effectuer ce type de vérification. L’utilisateur qui veut prouver qu’il contrôle une adresse Bitcoin crée une transaction de test d’un petit montant vers la plateforme d’échange. Dès réception de cette transaction de test, la plateforme sait que son client contrôle l’adresse de retrait et peut procéder au retrait demandé.

Au-delà d’une expérience utilisateur dégradée, cela crée aussi de mauvaises incitations pour la vie privée de l’utilisateur. Comme les transactions de test sont coûteuses et prennent du temps, les utilisateurs sont activement encouragés à réutiliser plusieurs fois leurs adresses de retrait, ce qui constitue un compromis en matière de vie privée.

Le cauchemar UX

Bien qu’ils soient simples à mettre en œuvre pour une plateforme d’échange, les tests Satoshi peuvent créer une expérience horrible pour les utilisateurs finaux de portefeuilles matériels comme la BitBox02. Cela s’explique non pas par une, mais par plusieurs raisons qu’il est important de comprendre si vous vous retrouvez vous-même dans l’obligation d’effectuer un test Satoshi.

Le problème de l’œuf et de la poule

Pour pouvoir créer une transaction de test, vous avez d’abord besoin de bitcoin. Cela crée une difficulté pour celles et ceux qui n’en ont jamais acheté auparavant : pour retirer du bitcoin, ils doivent d’abord vérifier l’adresse de leur portefeuille, ce qu’ils ne peuvent pas faire puisqu’ils n’ont pas encore de coins.

Si la plateforme d’échange ne fournit pas à l’utilisateur quelques satoshis pour le test, cette logique circulaire force les utilisateurs à soit recourir à un autre service avec une autre méthode de vérification pour acheter une petite quantité de bitcoin, soit demander à un ami de leur en prêter un peu. Si vous avez besoin de bitcoin pour une transaction de test, n’hésitez pas à essayer l’intégration de Pocket Bitcoin dans la BitBoxApp ! Dans tous les cas, c’est agaçant du point de vue de l’utilisateur et cela crée une barrière d’entrée inutile à l’auto-garde.

Adresses de change

Les choses deviennent encore plus agaçantes quand on regarde de plus près le fonctionnement des portefeuilles Bitcoin : quand quelqu’un « possède » du bitcoin, il contrôle une sortie de transaction qui n’a pas encore été dépensée, une sortie de transaction non dépensée (UTXO). Comme de vrais billets dans votre portefeuille physique, ces UTXO ne peuvent être dépensés qu’en totalité, ce qui introduit le concept de change. Lorsque les entrées d’une transaction sont trop élevées pour le paiement que vous voulez effectuer, les portefeuilles Bitcoin modernes créent automatiquement une nouvelle sortie de change vers votre portefeuille.

Ainsi, lorsque vous créez une transaction de test pour vérifier l’adresse de votre portefeuille, votre portefeuille décide automatiquement quel UTXO dépenser pour cette transaction. Ce choix n’est généralement pas aléatoire, mais basé sur des facteurs comme l’optimisation des frais ou de la vie privée. Cela signifie toutefois que l’UTXO que vous dépensez pour le test Satoshi pourrait, par hasard, provenir d’une adresse de change.

Les adresses de change sont des adresses Bitcoin ordinaires, mais les logiciels de portefeuille comme la BitBoxApp et beaucoup d’autres les traitent différemment dans l’interface utilisateur. Pour éviter la confusion et l’encombrement, les paiements vers des adresses de change n’apparaissent pas dans votre historique des transactions ; ils sont seulement ajoutés au solde total. Cela signifie que de futurs retraits depuis la plateforme d’échange vers cette adresse de change ne seraient pas affichés dans l’historique des transactions.

Pour éviter cela, les utilisateurs de la BitBoxApp doivent utiliser Coin Control pour sélectionner manuellement un UTXO adapté à la transaction de test. Comme l’application étiquette les UTXO situés sur des adresses de change avec la mention « Change », vous pouvez simplement éviter d’utiliser ces UTXO pour les transactions de test. Choisissez plutôt n’importe quel autre UTXO pour vérifier votre adresse de retrait.

Dépôts en double

Les choses peuvent devenir encore plus compliquées lorsque les plateformes d’échange imposent aussi des tests Satoshi pour les dépôts. D’abord, les transactions de test pour les dépôts sont sans doute redondantes, puisque le dépôt lui-même prouve déjà le contrôle du portefeuille. Pourtant, certains services peuvent quand même l’exiger.

Imaginons un utilisateur de portefeuille avec un seul UTXO de 1 BTC, qu’il souhaite déposer sur son compte d’échange. La plateforme demande une transaction de test depuis l’adresse qu’il utilisera pour le dépôt, ce qu’il fait. Rappelez-vous comment fonctionne le change dans Bitcoin : l’utilisateur crée alors un petit paiement vers la plateforme, par exemple 0,00001 BTC, et son portefeuille créera automatiquement un change d’environ 0,99999 BTC vers une nouvelle adresse de change, parce que c’est ainsi que fonctionnent les portefeuilles Bitcoin.

L’adresse de dépôt nouvellement vérifiée est maintenant vide à cause de cela, et l’utilisateur devrait renvoyer le solde restant vers l’adresse vérifiée dans une transaction supplémentaire, pour un total de trois transactions pour un seul dépôt. Au-delà de la surcharge en transactions et des frais plus élevés qui en découlent, cela provoque surtout une confusion inutile chez les utilisateurs qui ne comprennent pas le fonctionnement interne complexe des transactions Bitcoin.

Signer des messages

À proprement parler, une transaction Bitcoin n’est qu’un message signé numériquement : le message étant la transaction elle-même. Mais dans le contexte d’un test Satoshi, signer la transaction sert simplement à dire « Oui, je contrôle ce portefeuille ». Alors pourquoi ne pas signer directement ce message avec la clé privée de l’adresse Bitcoin, au lieu de créer une véritable transaction Bitcoin ?

C’est exactement ce que font certains services, en demandant aux utilisateurs de signer manuellement un message pour confirmer le contrôle de l’adresse Bitcoin qu’ils veulent utiliser. Même si la signature de messages n’a pas les inconvénients mentionnés plus haut et n’entraîne pas de frais de transaction, elle demande tout de même un certain bagage technique à des utilisateurs qui doivent suivre tout le processus manuellement et peuvent même devoir installer un logiciel supplémentaire. Là encore, cela crée une barrière d’entrée évitable pour les utilisateurs qui veulent prendre le contrôle de leurs propres coins. Vous pouvez découvrir comment signer des messages avec Sparrow Wallet et votre BitBox02 ici.

Protocole AOP

Le protocole de preuve de propriété d’adresse (Address Ownership Proof Protocol, AOPP) a été conçu pour automatiser le processus de signature de messages et offrir une expérience fluide à l’utilisateur final. La BitBoxApp prend en charge ce protocole depuis 2021, mais son adoption parmi les plateformes d’échange, les courtiers et les autres portefeuilles a été plutôt lente car, jusqu’à présent, la plupart des services n’exigeaient aucune vérification d’adresse. Nous pensons qu’AOPP pourrait grandement améliorer la situation des utilisateurs confrontés à des tests Satoshi compliqués ou à la signature manuelle de messages.

Du point de vue de l’utilisateur, vérifier une adresse via AOPP dans la BitBoxApp est très simple :

  • Cliquez sur « vérifier l’adresse » sur le site web de votre plateforme d’échange
  • La BitBoxApp s’ouvre et vous demande si vous voulez continuer
  • La BitBox02 vous demande de confirmer avant de signer le message
  • Une fois confirmé, l’adresse et le message signé sont automatiquement envoyés à la plateforme d’échange
  • Terminé !

Vous avez peut-être déjà utilisé AOPP si vous avez déjà configuré un ordre sur Pocket Bitcoin ou Bittr avec votre BitBox02.

Cliquez, maintenez pour confirmer, terminé !

En bref, c’est très similaire à la signature d’une transaction Bitcoin, avec encore moins d’étapes dont l’utilisateur doit se préoccuper. Contrairement à certaines idées reçues, AOPP ne dégrade pas la vie privée de l’utilisateur. Il n’échange que des données que l’utilisateur devrait de toute façon partager avec sa plateforme d’échange : une seule adresse Bitcoin et une signature numérique. C’est simplement un outil pour faciliter l’auto-garde. Comme la vérification d’une adresse via AOPP prend seulement quelques secondes, elle enlève la charge de devoir vérifier manuellement de nouvelles adresses régulièrement, ce qui peut au final améliorer la vie privée de l’utilisateur.

Nous pensons que l’auto-garde est l’aspect le plus important de Bitcoin. C’est ce qui distingue Bitcoin du système financier traditionnel, et en période de réglementation stricte sur la vérification des adresses, AOPP peut contribuer à rendre l’auto-garde plus accessible à tous.

Une vérification inutile

D’un point de vue technique, vous auriez raison de dire que cela ne sert absolument à rien. Par conception, il est impossible de vérifier réellement qui contrôle un portefeuille Bitcoin. Les clés privées ne sont que de grands nombres qui ne contiennent aucune information sur leur créateur ni sur les personnes avec qui elles ont été partagées. Et même si c’était le cas, il serait impossible de vérifier de telles affirmations, puisqu’il n’existe aucune autorité centrale dans le réseau Bitcoin qui « enregistre » les utilisateurs.

Même si une transaction de test ou un message signé confirme bien que quelqu’un connaît le processus de vérification d’adresse, ils ne révèlent pas qui est cette personne, ce qui signifie qu’ils n’apportent aucune nouvelle information. L’utilisateur de la plateforme d’échange pourrait simplement transférer un défi de vérification, c’est-à-dire l’adresse de la transaction de test ou même une requête AOPP, à quelqu’un d’autre, qui effectuerait alors les étapes nécessaires. Ce n’est pas du tout tiré par les cheveux, puisque les deux devraient de toute façon communiquer entre eux pour échanger une adresse Bitcoin.

Les blanchisseurs d’argent, les terroristes et les criminels en général, qui sont visés par ces réglementations, peuvent facilement contourner n’importe laquelle de ces étapes de vérification techniques s’ils le souhaitent vraiment, ce qui les rend sans doute inutiles dès le départ. Ce n’est ni un soutien à une activité criminelle, ni un argument contre l’objectif légitime de la combattre, mais simplement une réalité technique du fonctionnement du réseau Bitcoin.

Conclusion

Nous espérons que cet article vous a aidé à dissiper certaines confusions que vous pouviez avoir au sujet des tests Satoshi et de ce à quoi il faut faire attention lorsque vous devrez en effectuer un vous-même à l’avenir. Se conformer à des réglementations comme le ToFR peut être agaçant, tant pour les utilisateurs individuels que pour les prestataires de services, mais des améliorations techniques comme le protocole AOP existent déjà et sont prêtes à améliorer l’expérience utilisateur et, au final, à rendre l’auto-garde accessible à tous.

Votre plateforme d’échange préférée ne prend pas en charge AOPP ? Contactez-la directement et faites-lui part de votre avis ! Vous pouvez l’orienter vers le dépôt open source AOPP qui contient la spécification.

Questions fréquentes

AOPP révèle-t-il des informations sur mon portefeuille ?

Non, signer des messages avec AOPP ne révèle pas d’informations privées sur votre portefeuille. Cela ne partage qu’une adresse Bitcoin accompagnée d’une signature numérique avec le prestataire de service, ce que vous devriez de toute façon partager avec la plateforme d’échange si vous voulez utiliser son service.

AOPP appartient-il à BitBox ?

Non, le protocole AOP est un standard open source que BitBox a contribué à définir avec 21 Analytics, mais il est indépendant de BitBox. Même s’il est déjà pris en charge par la BitBoxApp, nous aimerions aussi voir d’autres portefeuilles et services intégrer AOPP.

Pourquoi ma plateforme d’échange ne prend-elle pas en charge AOPP ?

Si vous souhaitez que votre plateforme d’échange préférée prenne en charge AOPP au lieu de recourir à des tests Satoshi fastidieux ou à la signature manuelle de messages, contactez-la directement et faites-lui part de votre avis. Ensemble, les utilisateurs des plateformes d’échange peuvent avoir plus de poids sur des demandes de fonctionnalités comme celle-ci.

Vous n’avez pas encore de BitBox ?

Garder vos cryptos en sécurité n’a pas besoin d’être compliqué. Le portefeuille matériel BitBox02 stocke hors ligne les clés privées de vos cryptomonnaies. Vous pouvez ainsi gérer vos coins en toute sécurité.

La BitBox02 existe aussi dans une version Bitcoin-only, avec un firmware résolument focalisé : moins de code signifie moins de surface d’attaque, ce qui améliore encore votre sécurité si vous stockez uniquement du Bitcoin.

Commandez-en une dans notre boutique !

Shift Crypto est une entreprise privée basée à Zurich, en Suisse. Notre équipe de contributeurs Bitcoin, d’experts crypto et d’ingénieurs en sécurité conçoit des produits qui permettent à nos clients d’évoluer sereinement, du niveau débutant jusqu’à la maîtrise de la gestion des cryptomonnaies. La BitBox02, notre portefeuille matériel de deuxième génération, permet aux utilisateurs de stocker, protéger et transférer facilement du Bitcoin et d’autres cryptomonnaies, avec l’aide de son logiciel compagnon, la BitBoxApp.

This post was translated with the help of AI