HD 钱包的想法最早出现在比特币社区,而比特币社区里面提出新功能、流程、改进建议都有标准化的流程,发起者需要用文档的形式把内容书面化,提交给社区去讨论、论证,这种文档就叫做 BIP(Bitcoin Improvement Proposal),比特币社区甚至连 BIP 本身该如何工作也写成了 BIP,定义 BIP 格式、工作流的的元 BIP 见这里,而和 HD 钱包紧密关联的几个 BIP 如下:
BIP32: HD 钱包的核心提案,说明了自私钥生成方法以及树壮结构的构造方式;
BIP43: 为 HD 钱包子私钥派生路径增加有广泛共识的段;
BIP44: 确定支持多链 HD 钱包子私钥派生路径的标准格式;
BIP44 的内容相比 BIP32 就简单很多,里面规定了子节点派生路径的范式:
m / purpose' / coin_type' / account' / chain / address_index
示例如下:
m/44'/60'/0'/0/0
每个段的含义分别是:
CKD: m
: 使用 CKDpriv
, M
则表示使用 CKDPub
Purpose: 44'
, hardened
, 遵循哪个规范, 44 意味着 BIP44
Coin: 60'
, hardened
, 60 指代以太坊, 完整的链代码
Account: 0'
, hardened
, 账户编号
Chain: 0
, 对于非比特币路径都是 0
Index: 0
, 具体的账户节点