医疗反腐,风向带偏了

回顾柴静的经历,跟丁仲礼的对话,以及她最新的纪录片和各界反响!

“史上最严反腐”背后, 中国医界究竟病在何处?|文化纵横

丑闻接二连三,湘雅医院到底隐藏了多少黑幕?

7月经济数据全面恶化,发出了新一轮经济下跌的危险信号

生成图片,分享到微信朋友圈

自由微信安卓APP发布,立即下载! | 提交文章网址
查看原文

科普|用一组助记词,管理多个钱包地址

字节君 字节元 CKB 2023-04-14


大家好,我是字节君!


相信很多人都习惯了一个钱包地址对应一串助记词、一组私钥的模式,但随着 DeFi 项目越来越多,各项目的质量又参差不齐,很多人开始担心自己参与的新项目有漏洞,万一被黑客攻击,不仅有可能损失在项目上投入的钱,还可能会因为授权问题,导致钱包里的其他加密资产也被盗。


于是,很多资深的 DeFi 玩家开始采用「每一个项目都分配一个新地址」的策略,甚至还配备上了硬件钱包,进一步增强安全性。


如果给每一个 DeFi 项目都分配一个新地址,而每个地址都需要单独保存私钥和助记词,那未免太麻烦了。不过好在很多钱包软件已经支持 HD 钱包技术了,可以用一组助记词管理多个私钥、多个钱包地址。


这是怎么做到的呢?今天,字节君就给大家简单科普下 HD 钱包相关的事情。


HD 钱包的全称是 Hierarchical Deterministic Wallet,一般被译为「分层确定性钱包」。下面这张图,可以很好地帮助我们理解 HD 钱包的原理:



简单来说,HD 钱包就是由种子(seed)生成主密钥对(Master Key),主密钥对可以衍生出许多子密钥对,子密钥对还可以继续无限往下衍生。其中,父密钥对子密钥中的资产拥有绝对的掌控权,子密钥可以控制当前密钥对应的加密资产,但不会对同级或者父级密钥中的加密资产产生任何影响。


因此,HD 钱包不仅可以方便用户管理大量的密钥对,还可以让管理者下放权力,增强组织管理能力。举个例子,绝大部分中心化的交易所,都采用了 HD 钱包技术,这样可以通过主密钥对派生出无数个子密钥对,每个子密钥对通过运算可以得到对应的地址。这样一来,交易所就可以给每个用户分配一个独一无二的充值地址,以方便管理。


HD 钱包的种子(seed),按照 BIP32 协议中的规定,是 128 位字符,这对于普通人而言,实在太难记了。所以,在后来的 BIP39 协议中,开发者提出了助记词这一解决方案:

定义一个包含 2048 个单词的单词表,生成一串随机序列后,对这串随机序列做一定的算法演变,得到一个新的序列,将序列分割成好几个部分后,将每个部分与单词表上的一个单词做对应,就得到了助记词。而助记词再通过密钥生成函数 PBKDF2 就能生成种子。

因此,整个 HD 钱包创建的过程变成了:助记词——种子——主密钥——子密钥——地址


当然,开发者对 HD 钱包技术的优化并没有止步于此。在之后的 BIP44 协议中,每一层都可以支持多公链币种。也就是说,HD 钱包的用户通过一组助记词,可以生成多种公链地址,管理多个链上的加密资产。


现在,已经有很多钱包支持 HD 钱包技术了,比如大家最常用的 MetaMask 小狐狸钱包,你可以直接点击「创建账户」来创建一个子钱包。


回到 Nervos 上,其实 CKB 的桌面端钱包 Neuron 就是一款 HD 钱包。在钱包创建的时候,Neuron 会在地址管理页面默认为用户生成 20 个收款地址和 10 个找零地址,当用户用完这些地址后,还可以继续生成额外的地址。


另外,Neuron 也是一款内置了 CKB 全节点的钱包,所以下载并安装后,你需要进行区块数据同步。整个数据同步的过程可能会花上好几个小时。同步完成后,你就可以使用 Neuron 的全部功能了,包括转账、Nervos DAO 的存款与取款,等等。


最后,字节君给大家分享一个好消息:国外某开发团队正在开发一款 CKB 轻钱包,这款钱包也支持 HD 钱包技术。我们一起期待它早日上线吧!


   



END



Nervos 网址:https://www.nervos.org/ 

中文电报群:https://t.me/NervosNetworkcn

中文推特:https://twitter.com/CKBMeta 

中文Discord:https://discord.gg/f2qa52tJnz 

《Nervos 入门手册》:ckborg.bit.host

文章有问题?点此查看未经处理的缓存