Comprendre et maîtriser les principes de la protection de la vie privée dans l'utilisation de Bitcoin
1. Le matériel requis
- Raspberry Pi Zero
- La version 1.3 est recommandée, car elle ne dispose ni de Wi-Fi ni de Bluetooth, ce qui assure une isolation complète.
- Les versions W et v2 sont également compatibles, mais elles intègrent une puce Wi-Fi/Bluetooth. Il est alors conseillé de la désactiver physiquement en retirant le module radio de la carte. L’opération reste relativement simple, mais demande de la précision (une pince fine suffit pour le Zero W, tandis qu’un stylo chauffant est nécessaire pour la v2 afin de retirer la plaque de métal qui cache le module). Je ne détaillerai pas cette manipulation dans ce tutoriel, mais vous trouverez toutes les instructions dans ce document : Disabling WiFi/Bluetooth by hardware.
- Attention : certains modèles de Raspberry Pi Zero sont vendus sans broches GPIO présoudées. Vous pouvez soit acheter directement une version avec broches intégrées (solution la plus simple), soit acheter les broches séparément et les souder vous-même (solution plus complexe).
- Pensez également à prévoir une alimentation en micro-USB.
- Écran Waveshare 1.3" (240×240 px)
- Choisissez impérativement ce modèle précis : d’autres écrans similaires existent, mais avec une résolution différente. Sans la définition 240×240 px, l’affichage sera inutilisable.
- Cet écran intègre trois boutons ainsi qu’un mini-joystick servant d’interface utilisateur.
- Caméra compatible Raspberry Pi Zero
- Option 1 : la caméra standard avec une nappe dorée large (vérifiez bien la compatibilité avec votre boîtier).
- Option 2 : la caméra "Zero", plus compacte, conçue spécifiquement pour le Pi Zero.
-
Carte microSD
- Capacité recommandée : entre 4 et 32 Go.
-
Boîtier (optionnel mais recommandé)
- Protège le dispositif et facilite son utilisation.
- Le modèle le plus répandu est le "Orange Pill Case", dont les fichiers STL open-source sont disponibles pour impression 3D.
- Vous pouvez également vous procurer des boîtiers auprès de revendeurs indépendants liés au projet.
2. Préparation du logiciel
2.1. Téléchargement
- L’image en
.imgcorrespondant à votre modèle de Pi. - Le fichier
.sha256.txt. - Le fichier
.sha256.txt.sig.
2.2 Vérification sous Linux et macOS
gpg --fetch-keys https://keybase.io/seedsigner/pgp_keys.asc
0.8.6.) :gpg --verify seedsigner.0.8.6.sha256.txt.sig
Good signature. Cela signifie que le fichier .sha256.txt a été signé par la clé que vous venez d’importer et que la signature est valide. Ignorez le message d’avertissement du type WARNING: This key is not certified with a trusted signature : il est normal, puisqu’il vous appartient maintenant de vérifier que la clé utilisée appartient bien au projet SeedSigner.0.8.6.) :shasum -a 256 --ignore-missing --check seedsigner.0.8.6.sha256.txt
- Sous Linux, cette commande est intégrée.
- Sous macOS, attention : les versions antérieures à
Big Sur (11)ne reconnaissent pas l’option--ignore-missing. Dans ce cas, retirez-la et ignorez les avertissements concernant les fichiers manquants.
OK à côté du fichier .img. Cela confirme que l’image téléchargée est identique à celle publiée par le projet et n’a pas été modifiée.2.3 Vérification sous Windows
https://keybase.io/seedsigner/pgp_keys.asc
Shift + clic droit > Open PowerShell here). Lancez la commande suivante pour vérifier la signature du manifeste (pensez à modifier la commande en fonction de votre version, ici 0.8.6.) :gpg --verify seedsigner.0.8.6.sha256.txt.sig
Good signature. Cela signifie que le fichier .sha256.txt a été signé par la clé que vous venez d’importer et que la signature est valide. Ignorez le message d’avertissement du type WARNING: This key is not certified with a trusted signature : il est normal, puisqu’il vous appartient maintenant de vérifier que la clé utilisée appartient bien au projet SeedSigner.CertUtil -hashfile seedsigner_os.0.8.6.[your-Pi-model].img SHA256
0.8.6.) :CertUtil -hashfile seedsigner_os.0.8.6.pi02w.img SHA256
seedsigner.0.8.6.sha256.txt.- Si les deux valeurs sont strictement identiques, la vérification est réussie et vous pouvez continuer.
- Si elles diffèrent, cela signifie que le fichier est corrompu ou altéré. Ne l’utilisez pas et recommencez le téléchargement.
.img est à la fois authentique (signé par SeedSigner) et intègre (non modifié). Vous pouvez alors passer à l’étape suivante en toute sécurité.2.4. Flash l’image
- Insérez la carte microSD dans votre ordinateur.
- Lancez Etcher.
- Sélectionnez le fichier
.imgtéléchargé et vérifié. - Choisissez la carte microSD comme cible.
- Cliquez sur
Flash!.
3. Assemblage du SeedSigner
3.1 Préparation du boîtier
- L’emplacement de la caméra (petit orifice circulaire à l’avant).
- L’ouverture pour l’écran.
- Les découpes pour les ports micro-USB et le lecteur microSD du Raspberry Pi Zero.
3.2 Installation de la caméra
3.3 Installation du Raspberry Pi Zero
3.4 Premier démarrage
Settings > I/O test.KEY1 pour vérifier que la caméra fonctionne comme prévu. Cela va prendre une photo.3.5 Ajustement de la caméra
Settings > Advanced > Camera rotation et sélectionnez une rotation de 180° si nécessaire.Settings > Persistent settings, puis sélectionnez Enabled.4. Paramétrage du SeedSigner
4.1 Accès au menu des paramètres
Settings, puis validez en appuyant sur le bouton central. Vous entrez alors dans le menu principal des paramètres.4.2 Choisir le logiciel de gestion de portefeuille
Coordinator software.Coordinator désigne le logiciel de gestion de portefeuille avec lequel votre SeedSigner communiquera via des QR codes. Ce logiciel est installé soit sur votre ordinateur, soit sur votre smartphone. C’est lui qui vous permettra de gérer vos bitcoins, mais sans jamais avoir accès à vos clés privées. Le SeedSigner reste le seul appareil capable de signer vos transactions.4.3 Unités et affichage des montants
Denomination Display, vous pouvez choisir l’unité d’affichage des montants :BTCmBTC(milli-bitcoin, soit 0,001 BTC)sats(satoshis, soit 1/100 000 000 de BTC)
4.4 Réglages avancés
Advanced. Vous y trouverez plusieurs options utiles :Bitcoin network: à modifier uniquement si vous souhaitez utiliser le SeedSigner sur le Testnet.QR code density: ajuste la quantité d’informations contenue dans chaque QR code. Vous pouvez laisser la valeur par défaut, sauf si vous rencontrez des difficultés de lecture lors du scan.Xpub export: permet d’activer ou de désactiver l’exportation de votre clé publique étendue (xpub,ypub,zpub) vers un logiciel de gestion de portefeuille via QR code (fonction que nous utiliserons plus loin, donc laissez la activée pour le moment).Script types: définit les types de scripts autorisés pour verrouiller vos bitcoins. Vous n’avez pas besoin de modifier ce paramètre, car le type de script sera défini directement sur Sparrow. Ici, il s’agit uniquement des scripts que le SeedSigner est autorisé à manipuler.
4.5 Choix de la langue
Language, vous pouvez modifier la langue de l’interface selon votre préférence.5. Création et sauvegarde de la seed
- Cette phrase donne un accès complet et non restreint à tous vos bitcoins. Toute personne en possession de cette phrase peut subtiliser vos fonds, même sans accès physique à votre SeedSigner ;
- Habituellement, une phrase de 12 mots sert à restaurer un portefeuille en cas de perte ou de vol d’un hardware wallet. Mais le SeedSigner étant un appareil stateless, il n’enregistre jamais votre seed. Vos sauvegardes physiques ne sont donc pas de simples copies de secours, mais bien l’unique moyen d’utiliser votre portefeuille. Si vous perdez ces sauvegardes, vos bitcoins seront définitivement perdus. Sauvegardez-la donc avec soin, sur plusieurs supports et en lieux sûrs ;
- Si vous débutez, je vous conseille vivement de lire ce tutoriel pour comprendre en détail les risques liés à la gestion d’une phrase mnémonique :
5.1 Accéder à l’outil de création de seed
Tools.Camera: la seed est générée à partir du bruit visuel d’une photo. Vous prenez une image d’un environnement aléatoire (objet, paysage, visage, etc.) dont les variations de pixels serviront à produire l’entropie. C'est une méthode rapide, mais non reproductible.Dice Rolls: vous lancez des dés pour créer l’entropie nécessaire. C’est plus long, mais reproductible et donc vérifiable. Si vous optez pour cette méthode, suivez les conseils de ce tutoriel (inutile ici de calculer la checksum, le SeedSigner s’en charge) :
5.2 Création de la seed avec la photo
New seed (avec l'icône d’appareil photo), prenez une image et validez. Sélectionnez ensuite la longueur de votre phrase (12 ou 24 mots), qui s’affichera à l’écran pour la sauvegarder. Les étapes suivantes sont identiques à la partie 5.3.5.3 Création de la seed avec les dés
New seed (avec l'icône de dés).5.4 Affichage et sauvegarde de la seed
5.5 Vérification du backup
Verify.Backup Verified.5.6 Comprendre la notion de "stateless device"
Je vous conseille également de stocker votre QR code et votre phrase mnémonique dans deux endroits distincts, afin d’éviter de tout perdre en cas de sinistre.
5.7 Écrire l'empreinte de la clé maîtresse
5.8 Sauvegarde de la seed au format QR (SeedQR)
Backup Seed.Export as SeedQR.Begin pour démarrer la création du SeedQR. Le SeedSigner affichera alors une série de grilles (A1, A2, B1, etc.), correspondant chacune à une portion du code.- Commencez au crayon pour pouvoir corriger en cas d’erreur, puis repassez avec un stylo noir fin une fois terminé ;
- Un point bien centré au milieu du carré suffit, nul besoin de le remplir entièrement.
Confirm SeedQR, puis scannez votre QR code pour vérifier qu’il fonctionne correctement.Success s’affiche, votre SeedQR est valide : vous pouvez passer à l’étape suivante.6. Importer le wallet dans Sparrow
6.1 Préparation du SeedSigner
Scan, puis scannez votre SeedQR avec le SeedSigner.d4149b27. Si vous êtes revenu à l’écran d’accueil, sélectionnez Seeds, puis choisissez l’empreinte correspondant à votre portefeuille. Cliquez ensuite sur Export Xpub.Single Sig.Taproot. Je vous conseille donc de sélectionner ce standard.xpub) permet de visualiser toutes les adresses dérivées de votre seed (sur le premier compte). Elle ne permet pas de dépenser vos fonds, mais elle révèle la structure de votre portefeuille. Si jamais elle fuite, c'est un problème pour votre vie privée, mais pas pour la sécurité de vos bitcoins : elle permet de les voir, mais pas de les dépenser.I Understand, puis sur Export Xpub si les informations affichées vous conviennent.6.2 Importer un nouveau portefeuille dans Sparrow Wallet
File → Import Wallet.SeedSigner, puis sélectionnez Scan.... Votre webcam s’ouvrira : scannez alors le QR code dynamique affiché sur l’écran de votre SeedSigner.Create Wallet. Sparrow vous demandera ensuite de définir un mot de passe pour verrouiller l’accès local à ce portefeuille. Choisissez un mot de passe fort : il protège l’accès aux données de votre portefeuille dans Sparrow (clés publiques, adresses, labels et historique des transactions). Ce mot de passe n’est pas nécessaire pour restaurer le portefeuille ultérieurement : seule votre phrase mnémonique (et éventuellement votre passphrase) est requise à cet effet.Master fingerprint affichée dans Sparrow et celle notée précédemment depuis votre SeedSigner.7. Recevoir et envoyer des bitcoins
7.1 Recevoir des bitcoins
7.1.1 Génération d’une adresse de réception
Receive.- L’adresse textuelle (commençant par
bc1p…si vous utilisez P2TR comme moi), - Le QR code correspondant,
- Un champ
Labeldestiné à la traçabilité de vos transactions.
Label, puis validez.Label : Sale of the Raspberry Pi Zero
7.1.2 Vérification de l’adresse sur le SeedSigner
Scan. Scannez le QR code affiché sur l’écran de votre ordinateur, puis choisissez la seed correspondant à votre portefeuille (dans mon cas, l’empreinte d4149b27).Address Verified.7.1.3 Réception des fonds
Transactions de Sparrow Wallet.7.2 Envoyer des bitcoins
- Création de la transaction dans Sparrow ;
- Signature de la transaction sur le SeedSigner ;
- Diffusion finale de la transaction via Sparrow.
7.2.1 Créer la transaction dans Sparrow
Send dans la barre latérale gauche. Toutefois, je préfère passer par l’onglet UTXOs, qui permet de pratiquer le "Coin Control". Cette méthode vous offre un contrôle précis sur les UTXOs utilisés, afin de maîtriser les informations que vous révélez lors de la transaction.UTXOs, sélectionnez les pièces que vous souhaitez dépenser, puis cliquez sur Send Selected.- Dans
Pay to, collez l’adresse du destinataire ou cliquez sur l’icône d’appareil photo pour scanner son QR code ; - Dans
Label, ajoutez une étiquette pour suivre de cette dépense ; - Dans
Amount, indiquez le montant à envoyer ; - Sélectionnez enfin le taux de frais en fonction des conditions actuelles du marché (vous pouvez consulter les estimations sur mempool.space).
Create Transaction >>.Finalize Transaction for Signing.Show QR.7.2.2 Signer la transaction avec le SeedSigner
Scan, puis scannez le QR code affiché sur Sparrow.- Le montant envoyé,
- Les adresses de sortie,
- Les frais de transaction associés.
Review Details et vérifiez attentivement toutes les informations directement sur l’écran du SeedSigner. Les éléments les plus importants à contrôler sont le montant envoyé, l’adresse du destinataire et le montant des frais appliqués.Approve PSBT pour signer la transaction à l’aide de la ou des clés privées correspondantes.7.2.3 Diffuser la transaction depuis Sparrow
Scan QR.Broadcast Transaction pour la diffuser sur le réseau Bitcoin.Transactions de Sparrow Wallet.Auteur
Ce tutoriel a été écrit par Loïc Morel
Vous pouvez dire merci en donnant un pourboire au professeur.
J'écris des contenus pédagogiques sur Bitcoin.
Crédits
Ce tutoriel a été relu par LoicPandul & nrak10
Même si cette page est dans sa langue d'origine, une relecture humaine est toujours nécessaire pour garantir son exactitude.
LoicPandulnrak100 satsChaque élément de contenu sur la plateforme est le produit d'un effort collaboratif : chaque leçon, traduction et révision est rendue possible grâce au travail des contributeurs. C'est pour cette raison que nous sommes toujours à la recherche de correcteurs qui peuvent examiner notre contenu dans un grand nombre de langues. Si vous souhaitez participer au processus de relecture, veuillez nous rejoindre dans notre groupe Telegram et consulter notre tutoriel. Nous vous rappelons que ce contenu est open-source - sous licence CC BY-SA - et peut donc être partagé et utilisé librement, à condition que la source originale soit reconnue.








