钱包私钥管理方法的变迁



  • 钱包需要较强的技术投入,由于未来的资产会越来越多,不仅仅有基于ERC-20的以太坊代币,还有NEO、QTUM、EOS、比特币,或者其它公链的代币,这些都是需要技术力量去研发的。对于有技术实力的团队来说,反而是好事。

    今天我们来看一下钱包私钥管理方法的变迁,目前主要有三种形式,他们的区别就是所包含的密钥之间是否有关联。

    第一种类型叫做非确定性钱包,它的每一个密钥都是通过一个随机数独立生成的。密钥之间相互没有关联。什么意思呢?就是你拥有多个钱包,其中一个被盗,但是其他的资产都是安全的,安全性比较高。唯一不足一点就是每个钱包都需要单独备份,过程会比较繁琐(最早的比特币钱包就是非确定性钱包)。

    分层确定钱包.jpg![alt text](ff77c62a-ef1f-4893-9768-d1ca62dc5ec9-image.png image url)

    第二种钱包叫做确定性钱包,它所有的密钥都来源于一个单独的叫做种子的主密钥。在这个钱包中所有的密钥都相互关联,并且任何拥有原始种子的人都可以将这些密钥再生成一遍。我们在创建钱包的时候往往会出现一大串中文或者英文的词汇,这就是助记词。也是种子便于记忆的形式。可以通过助记词生产种子,进而得到私钥。

    相比于非确定钱包,确定性钱包能够更轻松更方便的进行转账交易,它能够恢复所有已经产生的私钥,并且在创建钱包的时候简单的备份就OK了。种子还能够让钱包完成导入导出。

    这种确定性钱包会使用很多不同的密钥派生方法。而其中使用最普遍的则是一种类似树形结构的方法,这样的钱包被称为分层确定性或者 HD 钱包。

    分层确定性钱包是通过一个种子来初始化的。而为了便于使用,种子会被编码成英语单词(或者其他语言的单词),这些单词被称为助记词。它是确定性钱包的加强版本,它的层级结构是从主私钥生成的私钥本身可以成为一个主私钥,并生成一个确定性钱包,父密钥可以生成一系列子密钥,每个子密钥又可以生成一系列孙密钥,以此类推,无限衍生。

    我们可以把钱包地址想象成一个银行卡号,别人可以给你的钱包地址打钱。一般地址和私钥是成对出现的,他们的关系就像银行卡号和密码。地址就像银行卡号一样用来记录你在该钱包地址上存有多少币。我们可以简单的把钱包地址理解成为银行卡号,该钱包地址的私钥理解成为所对应银行卡号的密码。只有你在知道银行密码的情况下才能使用银行卡号上的钱。所以,在使用钱包时请保存好你的地址和私钥。

    [了解更多区块链交易软件资讯请关注公众号:区块链Sir]


Log in to reply
 

Suggested Topics