由于
区块链中并没有中心节点,因此如何实现各个节点之间数据一致性,成为了
区块链技术体系需要解决的重要问题。现阶段,主要的
区块链项目中采用的分布式共识机制主要包括:工作量证明机制,权益证明机制、授权股权证明机制、实用拜占庭容错算法。POW机制最初被用于解决垃圾邮件问题,2008年,中本聪将其引入到
比特币中,用于解决分布式系统的共识问题。在POW共识机制中,每个节点基于自身算力竞争记账权,最先求解得到复杂但易于验证的SHA256计算难题的节点便获得记账权,并获取相应的经济奖励,因此计算SHA256的解,也被称为“挖矿”。
POW机制将共识机制和经济激励相结合,激励更多节点参与挖矿,有助于增强系统的安全性,但同时,也牺牲了系统的整体性能,因此目前基于POW共识机制的区块链项目的性能都比较低,如比特币的吐出量只有7TPS,而
以太坊在前期采用POW机制时只用20-30TPS。POW机制以求解毫无意义的随机数为作为标准,导致了大量的计算资源和电力资源的浪费。在POW机制下,掌握算力多的节点,在“挖矿”时具有优势,因此也易造成区块链去中心化之后的“再中心化”。
DPOS是POS机制的变种共识机制,在该机制中,每一个股东可以将其投票权授予一名代表,获得票数最多的前100名代表按既定的时间表轮流产生区块。区块链中的PBFT算法可容忍1/3的恶意节点,当正常节点超过2/3时,就可以确保区块链节点的数据一致性和安全性。其基本的流程如下:首先,全网选举一个节点作为主节点,主节点负责建立区块;其次,主节点收集全网中交易信息,并进行排序,并将生成的排序列表广播到全网;再次,每个节点收到主节点的排序列表之后对交易结果进行模拟执行交易,所有交易执行完成后,基于交易结果计算新的区块哈希值,并将交易结果向全网广播;第四,如果节点收到全网2/3节点的信息与自己执行结果,则向全网广播一条确认信息,第五,主节点收集全网的确认信息,待收到的确认信息超过全网2/3之后则开始构建区块,并向全网广播区块链的最新动态。由于PBFT需要较高的可信执行环境,因此PBFT共识算法一般应用于
联盟链中。
版权申明:本内容来自于互联网,属第三方汇集推荐平台。本文的版权归原作者所有,文章言论不代表链门户的观点,链门户不承担任何法律责任。如有侵权请联系QQ:3341927519进行反馈。