BIP85はBIP 32の秘密ルートからエントロピーを決定論的に導出するアプリケーション仕様です。移行先ウォレットにマスタールートを渡さず子を再現できます。バックアップを複数の持分に分割する方式ではありません。
入力はBIP 32の拡張秘密ルートであり、任意の文字列ではありません。BIP 39はまずエントロピーをフレーズに符号化し、そのフレーズとpassphraseからルート用のシードを作ります。BIP85はこの処理を逆転しません。ルートから元のフレーズを復元せず、アプリケーションごとに分離した新しいエントロピーを作ります。 [BIP 85 — Deterministic Entropy From BIP32 Keychains] [BIP 32 — Hierarchical Deterministic Wallets] [BIP 39 — Mnemonic code for generating deterministic keys]
導出の各段階はhardenedです。得られた32バイトの秘密鍵kをメッセージ、bip-entropy-from-kを鍵としてHMAC-SHA512を実行し、64バイトを得ます。公開xpubだけでは足りません。この変換は結果のエントロピーを鍵から分離するもので、同じ鍵を署名にも使うよう求めるものではありません。 [BIP 85 — Deterministic Entropy From BIP32 Keychains] [BIP 32 — Hierarchical Deterministic Wallets]
パスm/83696968'/39'/0'/12'/0'はBIP85、BIP 39アプリケーション、英語単語リスト、12単語、インデックス0を選びます。インデックス1は別の子を生成します。チェコ語リストのコードはページの言語に関係なく8'です。言語や単語数を変えるとパスが変わり、同じフレーズの表示だけが変わるわけではありません。 [BIP 85 — Deterministic Entropy From BIP32 Keychains]
12単語には出力の先頭128ビット、24単語には先頭256ビットを使い、BIP 39がチェックサムと単語を加えます。その後のシード生成は別の段階です。BIP85自体はスクリプト、アドレスパス、ウォレット履歴を定めません。出力を長くしても、弱い元の秘密の不確実性は増えません。 [BIP 85 — Deterministic Entropy From BIP32 Keychains] [BIP 39 — Mnemonic code for generating deterministic keys]
XPRVアプリケーションはm/83696968'/32'/0'を使います。最初の32バイトがchain code、次の32バイトが秘密鍵で、BIP 32のルート生成と逆順です。結果のスカラーが無効ならエラーにし、ユーザーが次のインデックスを選びます。HEXやパスワードには別のアプリケーションと形式規則があります。 [BIP 85 — Deterministic Entropy From BIP32 Keychains] [BIP 32 — Hierarchical Deterministic Wallets]
正しい実装では子から親や兄弟を計算で導くことは現実的に不可能です。一方、マスタールートと導出条件を得た人は子を再現でき、ルートを失うと個別バックアップのない子が危険になります。子を接続されたウォレットへ書き出すと漏えいの範囲を限定できますが、侵害されたマスタールートを修復することはできません。 [BIP 85 — Deterministic Entropy From BIP32 Keychains] [COLDCARD — Export Deterministic Entropy (BIP-85)]
親のBIP 39フレーズのpassphraseは入力ルートとすべての子を変えます。導出したフレーズに移行先ウォレットで追加するpassphraseは、そのウォレットのシードを変えます。BIP85はこのpassphraseをバックアップしません。復元には正確な親の条件、アプリケーション、形式、単語リスト、長さ、インデックスと、該当する移行先passphraseが必要です。 [BIP 39 — Mnemonic code for generating deterministic keys] [COLDCARD — Export Deterministic Entropy (BIP-85)]
COLDCARDの文書は同じ親、形式、インデックスでの再現と、BIP 39、WIF、XPRV、HEXの書き出しを説明しています。BIP85対応は全アプリケーションへの対応を意味しません。バックアップを頼りにする前に子と移行先アドレスの再現を確認し、必要な条件を記録して、公開テストベクトルで具体的な実装を検証してください。 [COLDCARD — Export Deterministic Entropy (BIP-85)] [BIP 85 — Deterministic Entropy From BIP32 Keychains]
理解を深めるには、この項目とあわせて次もお読みください HD Wallet, BIP 39, BIP39 passphrase, Derivation Path, Hardware Wallet. 次の項目からも参照されています Duress Wallet.