HD是一种采用了分层确定性算法的数字钱包,它主要是通过根扩展私钥的计算来实现所有层级的所有子扩展私钥的。所有的HD钱包都能够通过普通的衍生和硬化衍生这两种方式来计算扩展子私钥,不过相较而言,后者是更加安全的。我们知道通过扩展公钥,我们即使是在在没有扩展私钥的前提下,也能够计算所有普通子扩展公钥。这也是HD钱包与普通钱包最大的不同,很多投资者还想要深入了解hd钱包和普通钱包的区别,下面就让币圈子小编带大家一文了解hd钱包和普通钱包的区别。
一文了解hd钱包和普通钱包的区别
不知你是否遇到这样的困境:因为交易需要和个人隐私问题,手握多条公链钱包的多个不同的私钥,备份却成了个大问题。
每条公链上的每个私钥都要单独备份保存,着实麻烦!那是否有一种钱包可以极大地简化多链多密钥的备份过程呢?是否有一种方式可以只记录一组助记词就可以管理所有钱包呢?
当然有!HD钱包可以满足你的需求。HD钱包,即Hierarchical Deterministic Wallet,中文称为分层确定性钱包。它是目前来说最好用的、最方便的确定性钱包。
由于私钥不同的生成方法对应着不同的钱包结构,根据此区别,我们把钱包分为非确定性钱包和确定性钱包。非确定性钱包,又称为随机钱包,特点是私钥之间互相没有任何联系,最早的比特币钱包就是这种类型。
在当时,要想备份钱包中的所有地址,必须对每个密钥对中的私钥进行单独备份,这样一来,备份管理就成了一件极其麻烦的事情。所以作为解决方案的确定性钱包应运而生。
确定性钱包的好处是:一个种子就能恢复所有的私钥,在备份和恢复起来都非常方便。值得注意的是,确定性钱包随机产出的种子是通过一系列确定、不可逆的运算来派生出一系列的密钥对。为什么要强调确定和不可逆?因为确定可以保证从一个种子中可以生成出全部的子密钥对,而“不可逆”则是为了确保不能通过子密钥对反推出种子。
HD钱包的优点
HD钱包全称为是分层确定性(Hierarchical Deterministic)钱包的缩写HD Wallets。
我们知道数字钱包是用来保存我们的密钥和地址的,而数字货币是被记录在区块链网络中的每个区块上的。因此,如何安全方便的生成、保存和备份恢复密钥才是钱包的关键。为此,钱包已经进化了三次,从最初的非确定(随机)钱包到第二代的确定性(种子)钱包,直到现在的分层确定性钱包,钱包的更新迭代经过了三个阶段。
实际上想要理解分层确定性钱包的概念也并没有我们想象的那么困难。它的原理用两句话就可以表达清楚:
首先,要用一个随机数来生成主私钥,这跟其他类型的钱包生成私钥过程没有任何区别。
然后,再用一个确定性的、不可逆的算法,基于主私钥生成任意数量的子私钥。
那为什么要用“确定、不可逆”的算法呢?因为“确定”才能保证从一个主私钥可以生成出全部的子私钥,而“不可逆”则是为了确保不能通过子私钥反推出主私钥。
之所以叫分层确定性钱包是因为私钥的衍生结构是树状结构,父密钥可以衍生一系列子密钥,每个子密钥又可以衍生出一系列孙密钥,以此类推,无限衍生。
我们在首次创建HD钱包或者备份钱包时,会产生一个助记词,助记词是一连串的英⽂单词,这一串单词序列就可以创建种子,种子又可以创建所有的私钥。单词顺序也是钱包的备份,可以恢复钱包。而种⼦对应的就是所确定性钱包的随机数。
HD钱包的优点在于只需要主公钥,就可以生成出任意数量的子公钥。也就是说,无需私钥介入(主私钥和子私钥),就能基于主公钥生成新(公钥)地址,而这些地址其实都能被主私钥所控制。
希望投资者们都能够上文来一文了解hd钱包和普通钱包的区别。我们知道,任何事情都是有它的双面性的,HD钱包也是如此,有利必有弊,在我们暴露了自己的助记词时,其实就相当于将自己的私钥拱手让人了,那么这个情况下,我们所拥有的数字资产的安全性也大大的降低了。我们在使用数字钱包的过程中,一定要通过安全可靠的方式来及时备份自己的助记词,也要记得及时将自己的钱包的助记词及时抄写到安全的地方,毕竟助记词是一种未加密的私钥,它的安全性还是比较低的。