主页 > 华为安装imtoken > 区块链技术基础——通用共识算法

区块链技术基础——通用共识算法

华为安装imtoken 2023-03-29 07:05:50

拜占庭将军问题

说到共识算法,就不得不提到拜占庭将军问题。

拜占庭将军问题是莱斯利兰伯特在其同名论文拜占庭将军问题中提出的分布式点对点网络通信容错问题。

Leslie Lamport 在他的论文中描述了这个问题,如下所示:

一群拜占庭将军各自率领一支军队围攻一座城市。 为了简化问题,将各军的行动策略限定为进攻或撤退。 由于一些部队进攻和一些撤退可能是灾难性的,将军们必须投票决定所有部队一起进攻或所有部队一起撤退的战略。 由于将军们分布在城池的不同方向,他们之间只能通过信使来往。 在投票过程中,每个将领会通过Messenger将自己投票进攻还是撤退的信息通知给其他所有的将领,这样每个将领就可以根据自己的投票结果和其他所有将领发送的信息知道共同的投票结果决定行动策略。

该系统的问题在于,将军中可能存在叛徒,他们可能不仅会投票给较差的策略,还会选择性地发送投票信息。 假设有 9 位将军投票,其中 1 位是叛徒。 8名忠将,4票进攻,4票撤退。 这时,叛徒可能故意给投票进攻的4名将军写信表示投票进攻,给投票撤军的4名将军写信表示投票撤军。 这样,从投票进攻的4位将军来看,投票结果是5人投票进攻,从而发起进攻; 而从投退的4位将军来看,投退的是5人。 这样一来,破坏了各军的团结协作。

由于将军需要通过快递进行通信,流氓将军有可能伪造信件以其他将军的身份发送假选票。 而且即使保证了所有将领的忠诚度,也不排除信使被敌方拦截,甚至被敌方间谍所取代。 因此,很难通过保证人员可靠性和通信可靠性来解决问题。

如果那些忠心耿耿的将军还能以多数决定的方式来决定自己的策略,就可以说实现了拜占庭容错。

场景映射到电脑系统,将军就变成了电脑,使者就是通讯系统。

比特币的共识_比特币的共识算法是什么_比特币挖矿采用的算法

共识描述了分布式系统中多个节点之间就某一状态达成共识的过程。

为了保证分布式系统中各个节点的一致性比特币的共识算法是什么,核心流程往往需要一个共识算法来实现。

区块链系统的本质也是一种分布式系统。 每个区块链实现都需要一个共识机制来保证信息的一致性,决定如何产生区块以及相应的激励机制。

下面我们将介绍几种主流的共识机制:PoW工作量证明、PoS权益证明、DPoS委托权益证明。

POW(Proof of Work)工作量证明

在工作量证明算法中,网络中的计算机(矿工)通过解决难题来争取记账权。 所谓挖矿,就是矿工贡献自己的算力来解决一个有难度的数学函数。 这需要不断地试算才能找到答案。 以比特币为例,第一个算出答案的矿工拥有记账权,即将十分钟内产生的交易打包成一个区块,并从coinbase获得相应的奖励。 这也意味着拥有更高算力的矿工(矿池)获得记账权的几率更高,获得奖励的可能性也更大。

优势:

公平:多劳多得,多花算力,多奖励; 简单:算法简单,节点自由接入,去中心化程度高。

缺点:

比特币的共识_比特币的共识算法是什么_比特币挖矿采用的算法

能源浪费:矿工在不断尝试和暴力破解得到答案的过程中会消耗大量的能源; 处理效率低:为保证去中心化,很难缩短区块的确认时间,可扩展性弱,TPS低。 POS (Proof-of-Stake) 股权证明

POS在POW的基础上引入币龄概念,由Peercoin创始人Sunny King最先提出。 以Peercoin为例,币龄定义为币种数量与持币天数的乘积,这使得币龄能够反映用户在交易时所拥有的权益。

股权越大,越容易获得难题的答案,也就越有可能获得记账权。 这意味着您持有的货币越多,您获得奖励的可能性就越大。

权益越大->分配的问题越简单->越容易得到答案并获得记账权->获得奖励

优势:

节能:POS 的出现是为了解决 POW 消耗大量能源的问题。他把题目的难度和权益挂钩,关注的是权益而不是算力,所以挖矿不需要消耗大量的能源; 缩短达成共识的时间,提高效率

缺点:

屯币:持币时间越长,币龄越高,可能发生屯币虚化,减少货币流通量比特币的共识算法是什么,垄断; 硬分叉风险:挖矿成本低,硬分叉非常容易; 规则的实现比POW复杂。 DPOS(Delegated Proof-of-Stake)委托权益证明

POS的演进方案,在POS的基础上再增加一个限制——选举:网络中的每个节点都可以进行投票,会产生一定数量的委托节点,根据委托顺序轮流产生选区。既定的时间表。 区块、验证和监督。 而这些受托节点在出块后也可以获得奖励。 如果受托节点未能行使权力(如生成区块),网络可以选举新的超级节点来取代他们。

比特币的共识_比特币挖矿采用的算法_比特币的共识算法是什么

通过投票将去中心化简化为多中心化

优势:

节能:显着减少参与记账节点的数量

缺点:

过于集中; 不支持拜占庭容错。

总的来说,各种算法各有优缺点。 POW公平简单但浪费资源; POS减少了资源浪费,但容易造成代币囤积,富者愈富,穷者愈穷; DPOS 兼顾了公平和效率,同时也弱化了去中心化的特点。

目前,越来越多的区块链项目使用多种共识算法的混合来实现平衡。 下表为各种算法的代表项目

共识机制POWPOSPOW和POS混合DPOS

代表

比特币挖矿采用的算法_比特币的共识_比特币的共识算法是什么

比特币

比特现金

比原链等

比特币

黑色硬币

未来货币

瑞迪币

以太坊

比特股

比特币挖矿采用的算法_比特币的共识_比特币的共识算法是什么

EOS等

表现

低的

中间

中间

高的

比特币挖矿采用的算法_比特币的共识算法是什么_比特币的共识

共识算法.png

参考:

拜占庭将军问题 - 维基百科