Graines faibles : explications simples
Comment des graines faibles menacent la sécurité de Bitcoin
La cryptographie de Bitcoin peut rester intacte même si le logiciel du portefeuille génère une graine prévisible. Le risque existe avant toute transaction : si quelqu’un peut reproduire la graine ou une clé privée, il peut dépenser les fonds depuis un autre appareil, même si le portefeuille matériel d’origine reste hors ligne.
Réponse rapide
Pourquoi une graine valide peut-elle être risquée ?
Douze ou 24 mots valides prouvent seulement que la phrase de récupération a le bon format. Cela ne garantit pas que le portefeuille l’a choisie dans un ensemble vraiment imprévisible. Un générateur défaillant peut produire une graine normale à partir d’une liste bien plus restreinte, que des attaquants peuvent reconstituer.
Dans ces incidents, la blockchain Bitcoin et les règles de signature fonctionnent comme prévu. L’échec survient lors de la génération des clés par le portefeuille, avant même qu’une transaction n’atteigne la blockchain.
Table des matières
Blockchain ou portefeuille
La blockchain vérifie les signatures ; le portefeuille crée le secret
Ce sont deux rôles distincts : la blockchain vérifie les transactions, le portefeuille crée et protège les clés qui les autorisent. Une graine faible peut compromettre le portefeuille même si la blockchain reste sûre.
La blockchain
Stocke l’historique des transactions et valide une dépense si la signature requise est correcte.
Le portefeuille
Crée la graine, dérive les clés privées, affiche les adresses et signe les transactions.
L’attaquant
Peut régénérer les mêmes clés ailleurs si la graine a été copiée ou était prévisible.
Il n’est pas nécessaire de voler l’appareil. Un attaquant peut importer une graine copiée ou prévisible dans un logiciel compatible et signer une transaction sur son propre ordinateur.
Deux idées reçues fréquentes
Les portefeuilles matériels et le stockage à froid réduisent le risque, mais ne sécurisent pas une clé déjà exposée
Les deux approches sont utiles, mais leur efficacité dépend d’une condition : le secret doit avoir été généré de façon sûre et rester confidentiel.
Personne ne peut dépenser sans mon appareil
Un portefeuille matériel protège les clés de votre ordinateur habituel. Mais si la graine est copiée ou prévisible, ces mêmes clés peuvent être recréées ailleurs.
L’appareil protège uniquement tant que la graine et les clés privées restent secrètes.Un portefeuille hors ligne rend les bitcoins inaccessibles
Garder un portefeuille hors ligne empêche l’accès à distance à cet appareil. Mais cela n’empêche pas une personne disposant déjà de la graine ou de la clé privée d’utiliser un autre appareil.
Le stockage hors ligne protège la copie originale, mais ne peut pas empêcher l’utilisation d’une copie secondaire.Où commence la faille
L’erreur peut survenir avant même l’affichage des mots de la graine
Un portefeuille collecte d’abord des données impossibles à deviner, puis utilise un générateur aléatoire sécurisé pour créer la graine. Si la donnée de départ est faible, la phrase finale peut sembler correcte alors que le choix reste prévisible.
Entropie
Terme technique pour désigner l’imprévisibilité. Plus il y a d’entropie, plus le portefeuille dispose de valeurs réellement différentes à choisir.
Générateur aléatoire sécurisé
Logiciel ou matériel transformant des données imprévisibles en valeurs adaptées à la création de clés sensibles.
Phrase de récupération
Une sauvegarde lisible permettant à un portefeuille de régénérer de nombreuses clés privées. Toute personne possédant la graine complète peut souvent restaurer le portefeuille.
Clé privée
Une valeur secrète permettant d’autoriser des dépenses depuis une adresse donnée. Une graine peut générer de nombreuses clés privées.
Un format correct ne garantit pas une création sûre
Pourquoi 12 mots corrects ne prouvent rien
Imaginez une loterie qui imprime de longs numéros de tickets mais n’utilise secrètement que 1 000 combinaisons possibles. Chaque ticket paraît crédible, mais un attaquant n’a qu’à tester ces 1 000 possibilités. Un générateur de portefeuille défaillant crée le même raccourci.
Une graine sécurisée de 12 mots doit être choisie parmi un nombre immense de possibilités. Un portefeuille faible peut se limiter à une liste cachée bien plus restreinte. Impossible de faire la différence en lisant simplement les mots ou en vérifiant la validité de la phrase.
Ce que voit le propriétaire
Douze mots valides, une somme de contrôle correcte et un portefeuille qui s’ouvre normalement.
Ce qui reste invisible
Le générateur partait d’une donnée trop peu imprévisible et ne pouvait produire qu’un ensemble limité de graines.
Ce que l’attaquant obtient
Une liste bien plus courte à tester au lieu de toutes les graines possibles.
L’exemple des 1 000 tickets est une analogie, pas une estimation pour un portefeuille précis. Le chiffre réel dépend du générateur défaillant.
Des échecs réels, des causes variées
Des faiblesses d’aléa ont déjà compromis des portefeuilles
Ces incidents concernent des produits et erreurs variés. Mais la leçon est la même : une interface convaincante et un secret long ne prouvent pas que le secret était imprévisible.
Milk Sad / Libbitcoin Explorer
La commande bx seed utilisait le générateur Mersenne Twister avec seulement 32 bits d’horodatage système. Le résultat ressemblait à de l’entropie de portefeuille, mais les chercheurs ont pu reconstituer l’ensemble réduit de possibilités et relier la faille à de vrais vols sur plusieurs blockchains.
Un résultat long ne compense pas une valeur de départ prévisible.RANDSTORM / BitcoinJS
D’anciens portefeuilles sur navigateur pouvaient hériter d’une faible entropie à cause de JavaScript et de l’environnement du navigateur. Des années plus tard, des chercheurs ont averti que certains portefeuilles créés à cette époque restaient vulnérables.
Une ancienne clé reste ancienne, même si l’interface du portefeuille a été mise à jour.Android SecureRandom
Une faille dans la génération de nombres aléatoires sécurisés d’Android a mis en danger certains portefeuilles Bitcoin. Les développeurs ont corrigé le problème, mais les utilisateurs devaient aussi générer de nouvelles adresses et renouveler leurs clés, car une simple mise à jour ne pouvait pas sécuriser les anciennes clés faibles.
Corriger le générateur protège les nouvelles clés, pas celles déjà créées.COLDCARD RNG
Certains firmwares COLDCARD ont généré des graines bien moins imprévisibles que prévu. Cet incident montre que même du matériel dédié peut échouer si la chaîne de génération ne s’appuie pas correctement sur ses sources sécurisées.
Le matériel ne remplace pas la vérification de toute la chaîne de génération des clés.Lire le guide complet sur l’incident COLDCARDVérification pratique du risque
Quand considérer un ancien portefeuille comme risqué ?
On ne peut généralement pas juger une graine à ses mots. Les questions clés sont : où, quand et avec quel logiciel ou firmware a-t-elle été créée ?
L’origine de la graine est incertaine
Vous ne savez pas quelle application, site, appareil, firmware ou procédure a généré la phrase de récupération.
Le portefeuille figure dans une alerte de sécurité
La graine a été créée par une version citée dans une alerte fournisseur, un CVE, une divulgation de recherche ou une note de migration.
Une ancienne graine a été importée dans un portefeuille plus récent
Déplacer la même phrase de récupération dans un portefeuille matériel récent ne change que le contenant, pas le secret lui-même.
La graine ou la clé privée a pu être exposée
Elle a été saisie sur un site web, photographiée, stockée dans le cloud, partagée avec le support ou vue par une autre personne.
Adaptez la réponse au niveau de risque
Que faire d’une graine ancienne ou douteuse ?
Ne paniquez pas si votre portefeuille est ancien. Vérifiez d’abord comment la graine a été créée et si le produit ou la version figure dans une alerte de sécurité fiable. Agissez ensuite selon les faits.
Source connue et aucune trace d’exposition
Gardez votre portefeuille et son firmware à jour, protégez la sauvegarde et surveillez les alertes de sécurité fiables. Un portefeuille ancien n’est pas forcément risqué.
L’origine de la graine est inconnue ou citée dans un avis
Créez une nouvelle graine avec un logiciel ou matériel à jour et non concerné. Vérifiez la sauvegarde, faites un test avec un petit montant, puis transférez le reste des fonds.
Quelqu’un connaît peut-être la graine ou la clé privée
Considérez les fonds comme à risque. Transférez-les vers des adresses issues d’une nouvelle graine. Changer le code PIN, le mot de passe ou l’appareil ne modifie pas les clés exposées.
Ce qui ne corrige pas une graine faible ou exposée
- Importer la même graine dans un nouveau portefeuille matériel
- Changer uniquement le code PIN ou le mot de passe
- Installer une mise à jour sans créer de nouvelle graine
- Mettre l’appareil hors ligne après l’exposition du secret
Pour les concepteurs de portefeuilles
Testez toute la chaîne de création de la clé
Un algorithme sécurisé sur le papier ne suffit pas. Les vérifications doivent suivre tout le parcours de production, depuis la source d’entropie jusqu’à la graine finale, en passant par le générateur aléatoire, le firmware, le navigateur, le système d’exploitation, la compilation et les comportements de secours.
- Utilisez des sources logicielles ou matérielles prévues pour l’aléa cryptographique.
- En cas d’indisponibilité de la source sécurisée, échouez de façon explicite ; ne basculez jamais discrètement vers une fonction aléatoire classique.
- Testez le produit final et le chemin d’appel réel, pas seulement des fichiers sources isolés.
- Documentez la création des graines et la procédure de migration après un incident.
Avis principaux et recommandations de sécurité
Consultez les incidents et les recommandations cryptographiques
Explications et exemples vérifiés selon les recommandations NIST, la divulgation Milk Sad, l’alerte RANDSTORM d’Unciphered, l’avertissement Android de Bitcoin.org, Bitcoin Optech et les conseils actuels sur la sécurité des portefeuilles.
Questions fréquentes
Quelqu’un peut-il dépenser mes bitcoins s’il connaît ma phrase de récupération ?
En général, oui. Une phrase de récupération complète permet de régénérer les clés privées du portefeuille. Un attaquant peut l’importer dans un logiciel compatible ou un autre appareil et signer des transactions sans avoir votre portefeuille matériel ou son code PIN.
Les bitcoins sont-ils stockés dans un portefeuille matériel ?
Non. La blockchain enregistre les bitcoins. Un portefeuille matériel protège et utilise les clés qui autorisent les dépenses. Si quelqu’un obtient une copie équivalente de ces clés, l’appareil physique n’est plus le seul moyen de valider une transaction.
Le stockage à froid protège-t-il une clé privée déjà connue ?
Non. Le stockage à froid protège une clé inconnue des systèmes connectés. Mais si quelqu’un connaît déjà la clé privée ou la graine, il peut utiliser son propre système pour créer et diffuser une transaction valide.
Une mise à jour du firmware peut-elle corriger une ancienne graine faible ?
Non. Une mise à jour peut corriger la génération des futures graines, mais ne rendra pas une graine existante plus imprévisible. Il est recommandé de créer une nouvelle graine et de transférer les fonds vers de nouvelles adresses.
Peut-on savoir si une graine est faible rien qu’en lisant ses mots ?
En général, non. Une graine faible peut comporter le bon nombre de mots et une somme de contrôle valide. Le risque dépend de la façon et du lieu de génération : vérifiez l’application, l’appareil, le firmware, la date et les éventuelles alertes de sécurité.
Un mot de passe fort rend-il une graine faible sûre ?
Non. Un code PIN ou mot de passe protège l’accès local, mais ne modifie pas les clés privées générées par la graine. Une phrase secrète supplémentaire peut ajouter une couche de sécurité dans certains portefeuilles, mais elle ne doit pas être considérée comme une solution à une graine faible.
Une clé privée divulguée expose-t-elle tout le portefeuille ?
Pas toujours. Une clé privée donne accès aux fonds liés à cette clé ou adresse. Une graine divulguée est plus grave, car elle permet de régénérer de nombreuses clés privées. L’étendue du risque dépend du portefeuille et du secret exposé.
Une graine de 24 mots peut-elle aussi être faible ?
Oui. Plus de mots permettent plus de combinaisons, mais seulement si la valeur de départ a été choisie de façon sûre. Un générateur défaillant peut produire une phrase de 24 mots valide à partir d’un ensemble bien plus restreint et prévisible.
Poursuivre avec un cas concret