前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >HD钱包【区块链生存训练】

HD钱包【区块链生存训练】

作者头像
申龙斌
发布2018-03-06 11:14:00
1.6K0
发布2018-03-06 11:14:00
举报
文章被收录于专栏:申龙斌的程序人生

早期的Bitcoin Core钱包一次性生成100个私钥,如果交易比较频繁,私钥可能会用光,然后再产生一批私钥,所以需要定期备份wallet.dat文件,否则会损失部分比特币。

在BIP032规范(https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki)中引入了HD钱包的概念,不是HardDisk的缩写,而是指分层确定性(Hierarchical Deterministic)钱包。

所谓确定性,就是只需一个主私钥(根私钥),就可以生成所有其它私钥,这样备份起来更方便。当然如果这个主私钥泄漏,则所有子私钥也就泄漏了,所有的币也就都交给别人了。

所谓分层,就是一个大公司可以为每个子部门分别生成不同的私钥,子部门还可以再管理子子部门的私钥,每个部门可以看到所有子部门里的币,也可以花这里面的币。也可以只给会计人员某个层级的公钥,让他可以看见这个部门及子部门的收支记录,但不能花里面的钱,财务管理更方便了。

摘自《精通比特币》

Bitcoin Core里的HD钱包

新版本的Bitcoin Core钱包也支持HD钱包,如果右下角的HD图标没有打叉,则说明你正在使用HD钱包。

用《比特币的私钥》文章中介绍的办法导出私钥时,可以看到有一行标记着extended private masterkey,这就是主私钥。实际上扩展型主私钥还包含着链码(chain code),用于恢复所有子私钥,更多细节可以看参考文献。

其后的每个私钥的末尾有 hdkeypath=m/0'/0'/1' 这样的标记,这就是它的分层路径,表示m节点(主节点)下的0节点的0节点的1节点。

理论上说,这种HD钱包备份一次就可以了,以后总能恢复所有的私钥。但为了保险起见,养成定期备份的习惯总是好的,毕竟辛辛苦苦买的几个币别折腾没了。

Multibit HD

这是一款轻钱包,看名字就知道它也是一款HD钱包。它用12到16个单词来生成主私钥,然后再生成所有子私钥。

为了万无一失,建好钱包后,转入少量BTC,备份,再把软件卸载了重装,用密令恢复钱包,看看BTC是否还在,然后再转入更多的BTC,虽然麻烦一点,但绝对值得。最近群里的一位朋友,用12个单词的密令恢复钱包,钱包恢复了,可惜钱没了,正在寻求帮助呢。

小结:

  • HD钱包不是指硬钱包,而是分层确定性钱包
  • 只备份主私钥就可以生成所有的子私钥
  • 可以分层控制

参考资料:

  • http://www.8btc.com/hd-wallets
  • http://www.8btc.com/how-to-use-hd-wallets
  • https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki
  • https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-06-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 申龙斌的程序人生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
区块链
云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档