当前位置:首页 > 物联网 > 区块链
[导读] 数字货币钱包和硬分叉都是区块链行业的热门问题,也是大家密切关注的话题。 数字货币钱包按秘钥由来可以分为两类。第一类是非确定钱包,以比特币钱包为例,每个秘钥都是根据不同的随机数独立生成的,

数字货币钱包和硬分叉都是区块链行业的热门问题,也是大家密切关注的话题。

数字货币钱包按秘钥由来可以分为两类。第一类是非确定钱包,以比特币钱包为例,每个秘钥都是根据不同的随机数独立生成的,秘钥彼此之间没有任何关系。

我们知道,钱包是私钥的容器,有了私钥,我们就可以使用椭圆曲线乘法生成公钥,进而通过公钥,使用一个单向加密哈希函数生成比特币地址。需要注意的是,这个过程是不可逆的。其关系如图所示。

在比特币网络中,公钥用于接收比特币,而私钥用于支付时的交易签名。只要掌握了私钥,就可以控制账户内的数字货币,对其进行交易或转账。

但是这种方式有两个问题,一个是用户备份比较困难,另一个是不能既安全又方便的生成大量的地址。而另一类钱包,称之为确定性钱包,其所有秘钥都通过一个主秘钥生成,所有秘钥之间都是相互关联的,通过主秘钥可以生成全部其他秘钥,其推导方法是树状结构,这种方法则有利于解决上述问题。

主讲人刘斌是区块链领域的资深开发,他对确定性钱包创建的总体流程做出了简要梳理,其步骤大致分为:

1 生成助记词

2 从助记词生成种子

3 从种子生成 HD 钱包 主扩展私钥

4 按树状结构推导出所需的子私钥和地址

北京大学的沈晴霓教授对此这类钱包的具体实现方法很感兴趣,向刘斌仔细询问了功能实现的具体技术和代码情况,刘斌对此一一做出了回答。

在介绍完钱包功能后,北京大学的博士生辛武对区块链分叉的重点进行了分析。区块链分叉指的是区块链发生了意见分歧,从而导致终端版本不一致。

我们知道,在中心化机构中,服务器可以由有相关权限的后台一键升级,实现比较简单。而去中心化系统中,如果社区无法达成一致,由于终端版本不一致,就会造成形成分叉。

分歧的种类很多,包括共识算法(NBFT/CFT:Paxos、Raft;BFT:PBFT、 POW、POX),区块大小(1MB、2MB、8MB、32MB、64MB),账户模型,货币总量等,都可能导致分叉。

辛武对知名度最高的比特币分叉和以太坊“the DAO”时间进行了具体的分析,并将分叉细分为四种情况,分别是区块链内部机制,终端版本升级(软分叉),终端版本升级(硬分叉),社区、链、币的分裂,并指出,永久分叉,并非技术问题,而是一个涉及人性和利益的问题。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭