145 / 691BIP85

BIP85

从主根派生确定性熵

BIP85从同一根生成独立的助记词和其他秘密;恢复需要相同的根、应用和索引。

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作为HMAC-SHA512的消息,密钥为bip-entropy-from-k;输出为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附加密码, Derivation Path, Hardware Wallet. 反向关联还来自: Duress Wallet.

DOC · 001BIP 85 — Deterministic Entropy From BIP32 Keychains规范DOC · 002BIP 32 — Hierarchical Deterministic Wallets规范DOC · 003BIP 39 — Mnemonic code for generating deterministic keys规范DOC · 004COLDCARD — Export Deterministic Entropy (BIP-85)文档
来源优先 · 非投资建议