BIP32 associe chaque clé à un chain code de 256 bits. HMAC-SHA512 et un chemin numéroté dérivent les enfants; un xpub produit les enfants publics normaux, tandis qu’une branche hardened exige le secret. Cette frontière sert la délégation et délimite les compromissions.
Pieter Wuille a rédigé BIP32, attribué le 11 février 2012. La hiérarchie délègue un compte ou une branche sans révéler le reste. Ce n’est pas du consensus et le standard ne définit ni mots, passphrase, script ni découverte; BIP39, chemins et descriptors sont séparés. [BIP 32 — Hierarchical deterministic wallets] [BIP 39 — Mnemonic code for deterministic keys] [Bitcoin Developer Guide — Wallets]
Une extended private key est le scalaire secp256k1 k avec un chain code c de 32 octets; la forme publique emploie K=point(k). HMAC-SHA512, clé ‘Bitcoin seed’, produit IL comme candidat maître et IR comme chain code. IL nul ou ≥n invalide le seed. [BIP 32 — Hierarchical deterministic wallets]
CKDpriv ajoute parse256(IL) au scalaire parent modulo n et IR devient le code enfant. Normal: serP(Kpar)||ser32(i); hardened: 0x00||ser256(kpar)||ser32(i), i≥2^31. CKDpub ne reproduit que les enfants publics normaux. [BIP 32 — Hierarchical deterministic wallets]
Un xpub génère tous les descendants publics normaux. Mais parent xpub + une private key enfant non hardened divulguée permet de retrouver la private key parente et les branches sœurs. Hardened bloque ce calcul précis, pas le vol du seed ni une signature approuvée à tort. [BIP 32 — Hierarchical deterministic wallets]
La sérialisation de 78 octets contient version, profondeur, fingerprint parent, numéro enfant, chain code et key data, puis Base58Check. xprv/xpub mainnet font généralement 111 caractères. Le fingerprint de 4 octets n’authentifie pas; ypub/zpub SLIP132 restent inégalement supportés. [BIP 32 — Hierarchical deterministic wallets] [SLIP 132 — Registered HD version bytes]
BIP43 réserve purpose'. BIP44 emploie m/44'/coin_type'/account'/change/index, branches 0/1 et gap limit 20; BIP48 vise multisig, BIP84 SegWit, BIP86 Taproot. Ce sont des conventions wallet, invisibles dans le seed et non imposées par les nœuds. [BIP 43 — Purpose field for deterministic wallets] [BIP 44 — Multi-account hierarchy] [BIP 48 — Multi-script hierarchy for multisig wallets] [BIP 84 — Native SegWit derivation] [BIP 86 — Single-key Taproot derivation]
Un xpub limité permet watch-only, adresses et comptabilité sans signer. Sa fuite relie adresses anciennes/futures, soldes et activité. Un host compromis peut substituer une adresse: vérifier les réceptions importantes sur l’écran du signer. [BIP 32 — Hierarchical deterministic wallets] [Bitcoin Developer Guide — Wallets] [Trezor Learn — Hierarchical deterministic wallets]
xpub n’exprime pas le script. Un descriptor ajoute origin [fingerprint/path], wrapper wpkh(), seuil/cosigners multisig, wildcards et checksum. Un seed multisig ne recrée pas les autres xpubs, leur ordre ni le seuil; sauvegarder un descriptor testé. [BIP 380 — Output script descriptors] [BIP 389 — Multipath descriptor key expressions] [Bitcoin Core — Output descriptors] [Bitcoin Optech — Output script descriptors]
Le root seed évite de sauvegarder chaque clé, mais recovery exige passphrase, format, réseau, purpose/script, coin type, comptes, receive/change, gap policy et descriptor multisig. Un solde nul signifie souvent mauvais arbre. Tester UTXO historiques et signature. [BIP 44 — Multi-account hierarchy] [BIP 380 — Output script descriptors] [Bitcoin Core — Output descriptors] [BIP 39 — Mnemonic code for deterministic keys]
Les cas rarissimes IL≥n, scalaire nul ou point à l’infini passent à l’index suivant. Plus souvent: origins perdus, discovery différente, ypub/zpub mal lu, change oublié, Taproot absent ou xpub à mauvaise profondeur. xprv dépense; xpub révèle; descriptor cartographie. [BIP 32 — Hierarchical deterministic wallets] [BIP 380 — Output script descriptors] [SLIP 132 — Registered HD version bytes] [Bitcoin Core — Output descriptors]
Pour une vision complète, lisez aussi Portefeuille, Seed Phrase, Extended Public Key (xpub), Derivation Path, Gap Limit, Bitcoin. Cette entrée est également citée par Adresse Bitcoin, BIP 39, Cold Storage, Watch-only Wallet.