searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

分层确定性钱包的工作原理

2024-05-29 01:51:48
16
0

一、什么是分层确定性钱包(Hierarchical Deterministic Wallets)

        分层确定性钱包是一种管理加密货币公私钥的方法,其所有密钥都是从一个种子按照一定的层次结构(树状结构)计算派生出来的,密钥之间存在一定的血缘关系。用户只需记住简单的助记词,就可以生成和恢复整个密钥树的密钥对,实现极简的密钥备份和恢复。

 

二、分层确定性钱包的工作原理

        在比特币改进提议BIP32中定义了分层确定性钱包的工作过程,其整体结构如图所示。

图一、分层确定性钱包工作原理总览 

 

        1、主密钥对的生成

                根种子通过HMAC-SHA512算法计算得到一个主私钥(master private key) 和 一个主链编码(master chain code)。

图二、主密钥对的生成过程 

 

        2、子密钥派生(Child key derivation,CKD)

                1)常规派生,父公钥参与派生计算,包括父公钥->子公钥和父私钥->子私钥。其中父公钥、链码、索引号经HMAC-SHA512计算产生512位的哈希值,右256位作为子链链码,左256位附加到父私钥衍生计算出子私钥,或附加到父公钥计算出子公钥。

图三、常规派生1:父公钥 -> 子公钥

 

图四、常规派生2:父私钥 -> 子私钥 

              2)强化派生,父公钥不参与派生计算,父私钥->子公钥,是为解决常规派生中泄露链码时将导致所有子公钥泄露,且当子私钥也泄露时出现父私钥和其它子私钥被推导出来的问题{父私钥= (子私钥-左256位) % n},父私钥、链码、索引号经HMAC-SHA512计算产生512位的哈希值,右256位作为子链链码,左256位附加到父私钥衍生计算出子私钥。

图五、强化派生:父私钥 -> 子私钥  

 

三、分层确定性钱包的主要优点

        安全性:分层次保管不同级别的私钥,可减少不必要的私钥泄露。

        隐私性允许用户生成多个地址,这有助于提高用户的隐私性。

        便利性允许用户轻松地生成和管理大量的地址。

        可扩展性用户可以根据需要生成大量的地址,而不会对钱包的性能产生影响。

        可恢复性:只需恢复主种子就可以重新生成所有的密钥对。

 

四、对分层确定性钱包思考

        分层确定性钱包的实现原理上,充分体现了密钥间层次化的血缘和权限关系,其结构同企业的组织架构具有高度的相似性。因此,后续将对分层确定性钱包在企业的权限管控上的开展应用研究。

 

0条评论
0 / 1000
w****n
14文章数
1粉丝数
w****n
14 文章 | 1 粉丝
w****n
14文章数
1粉丝数
w****n
14 文章 | 1 粉丝
原创

分层确定性钱包的工作原理

2024-05-29 01:51:48
16
0

一、什么是分层确定性钱包(Hierarchical Deterministic Wallets)

        分层确定性钱包是一种管理加密货币公私钥的方法,其所有密钥都是从一个种子按照一定的层次结构(树状结构)计算派生出来的,密钥之间存在一定的血缘关系。用户只需记住简单的助记词,就可以生成和恢复整个密钥树的密钥对,实现极简的密钥备份和恢复。

 

二、分层确定性钱包的工作原理

        在比特币改进提议BIP32中定义了分层确定性钱包的工作过程,其整体结构如图所示。

图一、分层确定性钱包工作原理总览 

 

        1、主密钥对的生成

                根种子通过HMAC-SHA512算法计算得到一个主私钥(master private key) 和 一个主链编码(master chain code)。

图二、主密钥对的生成过程 

 

        2、子密钥派生(Child key derivation,CKD)

                1)常规派生,父公钥参与派生计算,包括父公钥->子公钥和父私钥->子私钥。其中父公钥、链码、索引号经HMAC-SHA512计算产生512位的哈希值,右256位作为子链链码,左256位附加到父私钥衍生计算出子私钥,或附加到父公钥计算出子公钥。

图三、常规派生1:父公钥 -> 子公钥

 

图四、常规派生2:父私钥 -> 子私钥 

              2)强化派生,父公钥不参与派生计算,父私钥->子公钥,是为解决常规派生中泄露链码时将导致所有子公钥泄露,且当子私钥也泄露时出现父私钥和其它子私钥被推导出来的问题{父私钥= (子私钥-左256位) % n},父私钥、链码、索引号经HMAC-SHA512计算产生512位的哈希值,右256位作为子链链码,左256位附加到父私钥衍生计算出子私钥。

图五、强化派生:父私钥 -> 子私钥  

 

三、分层确定性钱包的主要优点

        安全性:分层次保管不同级别的私钥,可减少不必要的私钥泄露。

        隐私性允许用户生成多个地址,这有助于提高用户的隐私性。

        便利性允许用户轻松地生成和管理大量的地址。

        可扩展性用户可以根据需要生成大量的地址,而不会对钱包的性能产生影响。

        可恢复性:只需恢复主种子就可以重新生成所有的密钥对。

 

四、对分层确定性钱包思考

        分层确定性钱包的实现原理上,充分体现了密钥间层次化的血缘和权限关系,其结构同企业的组织架构具有高度的相似性。因此,后续将对分层确定性钱包在企业的权限管控上的开展应用研究。

 

文章来自个人专栏
区块链
5 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0