Le recours à un hardware wallet comme le BitBox02 repose sur un principe simple : ne faites pas confiance à votre smartphone ni à votre ordinateur. Comme ils exécutent de nombreuses applications tout en étant connectés à Internet, ils sont plus exposés aux malwares et aux attaques ciblées. C’est là qu’intervient le hardware wallet, un appareil de sécurité isolé et conçu pour cet usage précis. Chaque interaction critique avec votre wallet se fait directement sur le BitBox02, au lieu de dépendre de l’appareil hôte, qui pourrait être compromis.
Cependant, vérifier les adresses de réception et les détails des transactions sur l’écran sécurisé du hardware wallet ne supprime pas automatiquement toute confiance envers l’appareil hôte. Les transactions Bitcoin exigent non seulement une interaction avec votre wallet lui-même, mais aussi, de façon cruciale, avec d’autres entités dont vous recevez de l’argent ou auxquelles vous en envoyez. Échanger des adresses Bitcoin de manière sécurisée entre les parties d’une transaction peut être difficile, et cela dépasse généralement le périmètre du hardware wallet. Mais ce n’est pas une fatalité.

Retirer en toute sécurité
Créer et vérifier une nouvelle adresse de réception sur le BitBox02 permet de s’assurer qu’une adresse appartient bien à votre wallet. La difficulté consiste ensuite à communiquer cette adresse vérifiée à l’expéditeur qui va réellement l’utiliser. Par exemple, un appareil hôte compromis pourrait manipuler une plateforme d’échange afin qu’elle retire vos bitcoins vers l’adresse d’un attaquant en remplaçant la bonne adresse par une autre appartenant à quelqu’un d’autre. C’est pourquoi l’intégration d’achat avec Pocket Bitcoin dans la BitBoxApp invite l’utilisateur à vérifier son adresse de réception via un canal de communication indépendant, idéalement sur un troisième appareil. Cela réduit fortement le risque lié à cette méthode d’attaque assez sophistiquée. Nous avons déjà approfondi cet aspect dans un autre article de blog.

Vérification d’une adresse de retrait « hors bande » sur un troisième appareil.
Déposer en toute sécurité
Un problème similaire apparaît lorsqu’il s’agit d’envoyer des bitcoins à quelqu’un d’autre en toute sécurité. À strictement parler, c’est exactement la même situation que celle décrite plus haut, simplement vue sous un autre angle. Plaçons-nous maintenant du point de vue de l’expéditeur. Nous prendrons l’exemple de la vente de bitcoins sur une plateforme d’échange, car c’est le scénario le plus probable dans lequel un utilisateur enverra de gros montants de bitcoins depuis son wallet vers une autre entité.
Faire confiance, ou non
Pour envoyer des bitcoins à une plateforme d’échange, l’utilisateur a besoin d’une adresse de dépôt afin de créer la transaction. La plateforme d’échange sait qu’elle a envoyé la bonne adresse à l’utilisateur, mais comment celui-ci peut-il savoir qu’il a bien reçu cette même adresse ? Tout ce qu’il voit, c’est une adresse de dépôt dans son navigateur, sur son appareil hôte potentiellement compromis.

Cette adresse appartient-elle à la plateforme d’échange ou à un attaquant ?
En théorie, un attaquant qui contrôle l’appareil hôte peut montrer à l’utilisateur n’importe quelle information, y compris une adresse de dépôt falsifiée. Si l’utilisateur veut envoyer des bitcoins à cette adresse malveillante, le hardware wallet n’a aucun moyen d’en vérifier l’authenticité, puisqu’elle vient « du monde extérieur ». Cette attaque est aussi connue sous le nom de address spoofing.

La solution peu pratique
Nous avons déjà présenté une solution simple à ce problème au tout début : utiliser un second appareil. Si l’utilisateur se connecte à son compte sur la plateforme d’échange depuis un autre appareil, par exemple son smartphone, il peut refaire le même parcours de dépôt pour vérifier si les adresses correspondent.
Cette approche présente toutefois plusieurs défauts. D’abord, comme elle est un peu contraignante, les utilisateurs risquent de négliger cette étape de vérification, surtout parce qu’ils n’y sont pas activement incités comme dans le flux d’achat de la BitBoxApp. Ensuite, certaines plateformes d’échange fournissent automatiquement une adresse de dépôt différente à chaque nouvelle demande, ce qui rend le second appareil inutile dès le départ.
Bien sûr, cette solution reste aussi imparfaite du point de vue de la sécurité, puisque la possibilité théorique que les deux appareils soient compromis existe toujours, par exemple si la manipulation passe par un faux site web consulté depuis les deux appareils.
Demandes de paiement
De la même façon que Bitcoin utilise des clés publiques et privées pour garantir la propriété sécurisée des bitcoins, nous pouvons utiliser la cryptographie à clé publique pour garantir qu’une information provient bien directement d’une plateforme d’échange. Cela peut se faire avec les demandes de paiement, un standard initialement lancé par Trezor dans SLIP-24. L’idée consiste à enregistrer une clé publique du destinataire, ici la plateforme d’échange, directement dans le hardware wallet lui-même, hors de portée des attaquants potentiels. À l’aide de sa clé privée, la plateforme d’échange peut alors signer une adresse de dépôt, y compris un montant ou même un message, puis envoyer cette demande signée à l’utilisateur. Au moment de créer la transaction, le hardware wallet peut désormais vérifier que cette demande de paiement provient bien directement de la plateforme d’échange, car il peut faire confiance à la clé publique qu’il connaît déjà.

Si un attaquant tente de modifier une demande de paiement signée, la vérification sur le hardware wallet échouera tout simplement et tirera immédiatement la sonnette d’alarme, exactement comme une transaction Bitcoin ne peut pas être modifiée après avoir été signée et diffusée.

Depuis la mise à jour Ritom, la base technique nécessaire aux demandes de paiement est déjà implémentée dans le firmware du BitBox02. Comme l’enregistrement des clés publiques est essentiel pour la sécurité de cette fonctionnalité, il est effectué avec soin par nos développeurs en communication directe avec nos partenaires et ne sera pas accessible aux utilisateurs. Ainsi, les demandes de paiement sur le BitBox02 peuvent être vérifiées et confirmées par l’utilisateur en toute confiance.
Vendre avec Pocket Bitcoin
Avec notre partenaire Pocket Bitcoin, nous travaillons actuellement à l’intégration d’une option permettant de vendre des bitcoins directement depuis la BitBoxApp. Grâce aux demandes de paiement, l’utilisateur pourra confirmer sur l’appareil l’intention d’envoyer des bitcoins à Pocket, au lieu de vérifier manuellement une adresse de dépôt. Puisque le BitBox02 peut vérifier qu’une demande de paiement donnée a été signée par Pocket et n’a pas été modifiée depuis, l’utilisateur n’aura plus à craindre d’envoyer ses bitcoins à la mauvaise adresse.

Lorsqu’il vend des bitcoins avec Pocket, l’utilisateur fournit aussi ses coordonnées bancaires, c’est-à-dire un IBAN, sur lequel la contre-valeur sera directement versée en monnaie fiat. Pour s’assurer que Pocket a bien reçu les bonnes coordonnées bancaires de l’utilisateur, celles-ci sont également incluses dans la demande de paiement sous forme de message et affichées sur l’appareil pour confirmation. Cela signifie que toutes les informations pertinentes, notamment…
- le montant de bitcoins sur le point d’être vendu
- le destinataire vérifié de la transaction Bitcoin (par exemple Pocket)
- les coordonnées bancaires sur lesquelles l’argent issu de l’échange sera envoyé
… peuvent être vérifiées directement sur le BitBox02, sans avoir à faire confiance à l’appareil hôte.
Conclusion
La future intégration de la vente dans la BitBoxApp ne se contente pas de résoudre le problème d’address spoofing décrit plus haut : elle améliore aussi l’expérience utilisateur grâce à un flux de vente intuitif et à un processus de vérification clair, ce qui réduit fortement le risque de manipulation ou de malentendus.
Vendre ses bitcoins peut être intimidant lorsqu’il s’agit de déplacer des montants importants. C’est pourquoi nous prenons le temps supplémentaire nécessaire pour mettre en place une solution fidèle à nos principes fondamentaux : simplicité et sécurité.
Vous n’avez pas encore de BitBox ?
Assurer la sécurité de vos crypto-actifs n’a pas besoin d’être compliqué. Le hardware wallet BitBox02 stocke hors ligne les clés privées de vos cryptomonnaies. Vous pouvez ainsi gérer vos coins en toute sécurité.
Le BitBox02 existe aussi en version Bitcoin-only, avec un firmware radicalement focalisé : moins de code signifie moins de surface d’attaque, ce qui améliore encore votre sécurité si vous stockez uniquement du Bitcoin.
Achetez-en un 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 de progresser sereinement, du niveau débutant jusqu’à la maîtrise de la gestion des cryptomonnaies. Le BitBox02, notre hardware wallet de deuxième génération, permet aux utilisateurs de stocker, protéger et utiliser Bitcoin et d’autres cryptomonnaies en toute simplicité, avec son compagnon logiciel, la BitBoxApp.
This post was translated with the help of AI