BIP39 ajoute ENT/32 bits de checksum SHA-256, découpe en indices de 11 bits d'une liste de 2 048 mots, puis exécute PBKDF2-HMAC-SHA512, 2 048 itérations, sur phrase et passphrase NFKD. Les 64 octets alimentent BIP32; chemins, comptes et scripts restent externes.
Palatinus, Rusnak, Voisine et Bowe ont signé BIP39, assigné le 10 septembre 2013, désormais Deployed. Il transporte du hasard informatique; une phrase inventée reste un brainwallet. Aucun nœud ne le valide et aucune transaction ne contient les mots. [BIP 39 — Mnemonic code for generating deterministic keys]
ENT vaut 128/160/192/224/256; CS=ENT/32 bits de SHA256 et MS=(ENT+CS)/11 donne 12/15/18/21/24 mots. Douze mots portent 128 bits aléatoires+4 de contrôle, 24 portent 256+8. Le RNG fait la sécurité, pas le vocabulaire. [BIP 39 — Mnemonic code for generating deterministic keys]
Chaque bloc de 11 bits choisit l'un des 2 048 mots ordonnés. Les mots codent un flux, pas des clés séparées; un synonyme change les bits. Quatre premières lettres sont uniques. Trier, traduire ou deviner change les données et peut produire une autre phrase valide. [BIP 39 — Mnemonic code for generating deterministic keys] [BIP 39 official wordlists]
Mnemonic et passphrase sont en UTF-8 normalisé NFKD. Accents et caractères compatibles se décomposent; espaces, ordre, casse et chaque symbole comptent. Les vecteurs japonais testent ce point. Une normalisation différente crée un autre wallet valide. [BIP 39 — Mnemonic code for generating deterministic keys] [Trezor python-mnemonic reference implementation] [BIP 39 official test vectors]
PBKDF2 prend la phrase comme password et ‘mnemonic’+passphrase comme salt, HMAC-SHA512, 2 048 tours, sortie 64 octets. Sans passphrase, suffixe vide. La fonction n'est pas réversible. Ce coût modeste ne sauve pas une passphrase faible après fuite des mots. [BIP 39 — Mnemonic code for generating deterministic keys] [RFC 8018 — PBKDF2]
BIP39 s'arrête au seed. BIP32 produit master key et chain code avec ‘Bitcoin seed’; BIP44/49/84/86 choisissent chemins/scripts. Mauvais compte, change, gap ou type affiche zéro. Descriptor et métadonnées complètent ce que BIP39 n'encode pas. [BIP 32 — Hierarchical deterministic wallets] [BIP 44 — Multi-account hierarchy] [BIP 84 — Native SegWit derivation] [BIP 86 — Single-key Taproot derivation] [BIP 380 — Output script descriptors] [Bitcoin Core — Output descriptors]
Toute passphrase produit un seed valide: aucune erreur ‘mauvais mot de passe’. Une faute ouvre un wallet vide. Avec les mots, l'attaquant teste hors ligne face à la blockchain. Il faut entropie, saisie fiable et sauvegarde séparée mais récupérable. [BIP 39 — Mnemonic code for generating deterministic keys] [Trezor — passphrases and hidden wallets]
Checksum de 4 bits à 12 mots, 8 à 24: hasard valide 1/16 ou 1/256. Il détecte certains accidents, ne corrige ni authentifie; l'attaquant le calcule. Ne jamais saisir les mots sur un site de vérification. [BIP 39 — Mnemonic code for generating deterministic keys]
Tester la restauration hors ligne avant tout dépôt. Conserver ordre, passphrase exacte, wallet d'origine, dérivation/script et multisig/descriptor. Photos, cloud, imprimante et presse-papiers divulguent le pouvoir de dépenser. Papier craint feu/eau; métal n'empêche pas le vol. [BIP 380 — Output script descriptors] [Trezor — passphrases and hidden wallets] [Bitcoin Core — Output descriptors]
Les listes non anglaises sont déconseillées; traduire change le seed. Les seeds natifs Electrum ne sont pas BIP39. BIP39 n'a ni version ni format d'adresse. SLIP39 est un seuil incompatible à 1 024 mots; partager des mots BIP39 n'est pas Shamir. [BIP 39 — Mnemonic code for generating deterministic keys] [Electrum documentation — seed version system] [SLIP 39 — Shamir's Secret-Sharing for Mnemonic Codes]
Mots, somme de contrôle et seed
BIP 39 combine 128 bits d’entropie et 4 bits de contrôle : les 132 bits forment 12 groupes de 11 bits qui sélectionnent les mots. PBKDF2-HMAC-SHA512 dérive un seed de 512 bits à partir de la phrase normalisée et de la passphrase facultative avec 2 048 itérations. La somme de contrôle n’ajoute aucun aléa.
Pour une vision complète, lisez aussi Seed Phrase, HD Wallet, BIP39 passphrase, Trezor, Bitcoin, BIP39 checksum. Cette entrée est également citée par Seed Phrase, HD Wallet, Cold Storage, Trezor.
01BIP 39 fait-il partie du consensus Bitcoin ?+
Non. C’est une convention de portefeuilles pour représenter l’aléa et dériver un seed. Les nœuds Bitcoin valident transactions et blocs sans savoir si les clés ont été créées avec BIP 39.
02Toute phrase de 12 ou 24 mots est-elle compatible avec BIP 39 ?+
Non. Le nombre de mots ne suffit pas : liste et ordre, somme de contrôle, normalisation NFKD et dérivation du seed doivent correspondre. Récupérer le portefeuille original exige aussi la bonne passphrase, si utilisée, ainsi que les chemins de dérivation et types de scripts correspondants.