分层确定性钱包
分层确定性钱包1是指使用分层确定性地址机制的电子钱包。 分层确定性钱包通过椭圆曲线密码学机制,确保可以通过在没有私钥参与的情况下,由公钥直接分散成子公钥,并且分散的子公钥可以由分散的子私钥认证。
分层确定性地址机制
比特币协议建议每次交易都尽可能使用新的地址,因为同一个地址被使用的越多,账户的相关性就越容易暴露。分层确认性地址机制(Hierarchical Deterministic)类似于IC卡中得密钥分散机制。通过随机数机制确定一个主私钥,然后使用一个确定的、不可逆的算法,基于主私钥生成一定数量的子私钥。多数软件或者客户端都是采用直接生成系统随机数的方案来作为比特币私钥,但是对于这样的方案,每次新账户生成都需要备份。
分层确定性地址机制则无需频繁备份,通过椭圆曲线密码学机制,确保可以通过在没有私钥参与的情况下,由公钥直接分散成子公钥,并且分散的子公钥可以由分散的子私钥认证。
分层确定性多重签名方案
对于线下的一些机构而言,如果想推行具有中性化结构的比特币IC卡,那么可以基于HD分层确认性地址和多重签名技术实现比特币IC卡解决方案。分层确定性多重签名方案是结合了HD和Multisig技术的解决方案,这样就能比较好避免一些HD和多重签名技术中的潜在不足,并且能规避HD模型先天缺陷,让用户能在尽享HD模型的易用的同时,又能获得多重签名的安全及扩展功能。分层确定性多重签名模型采用2-of-3多重签名,与普通多重签名的区别就在于,构成多重签名的三把钥匙,都是用HD模型来生成的。在整个分层确定性多重签名解决方案中每个用户都有3个HD的种子(根私钥),可以生成3个系列的子私钥,然后使用对应的子私钥拼出多重签名的地址1。
HD种子规范
3个HD种子都需要遵循BIP32/BIP44规范,分别是1:
1、冷种子(Cold Seed);
2、热种子(Hot Seed);
3、服务器种子(Server Seed);
总结
用户只需使用热地址也就是比特币IC卡和服务器即可完成日常支付,大部分情况下并不需要使用冷私钥:用户可以选择使用BIP39的规范备份一个冷种子或者生成冷种子加密二维码,而且只需备份一次,无论未来会生成多少个新的多重签名地址1,都不需要重新进行备份;用户拥有着冷、热两把钥匙的管理权,服务器仅为用户提供一个服务器种子,满足匹配多重签名地址及签名交易的需求,子私钥等用户敏感信息,无论加密与否,均不会出现在服务器上。冷、热、服务器之间,不能传递任何的子私钥或者上一级账户公钥,因此,完全无任何泄漏风险。用户无法获得服务器的任何子私钥和上一级公钥,服务器也无法获得用户的,用户冷热钱包之间也无子私钥和上一级公钥信息,隔绝了各级之间的信息访问,也在一定程度上避免了HD模型的潜在风险。
本词条内容贡献者为:
王海侠 - 副教授 - 南京理工大学