div#pop_ad { opacity: 0; }
AD
首页 > 数字货币 > 正文

「科普」几种区块链共识机制简单易懂的介绍

[2021-01-29 08:40:37] 来源: 编辑:wangjia 点击量:
评论 点击收藏
导读: 共识机制:整个区块链系统的运行,核心就是要做到信息的"去中心化",也就是常说的信息"点对点"运输。而实现点对点通信,最首要解决的也是最基本的困难,就是"拜占庭将军问题(Byzantine failu

「科普」几种区块链共识机制简单易懂的介绍
共识机制:

整个区块链系统的运行,核心就是要做到信息的"去中心化",也就是常说的信息"点对点"运输。而实现点对点通信,最首要解决的也是最基本的困难,就是"拜占庭将军问题(Byzantine failures)"。

「科普」几种区块链共识机制简单易懂的介绍


拜占庭将军问题:拜占庭帝国军队的将军们必须全体一致的决定是否攻击某一支敌军。问题是这些将军在地理上是分隔开来的,并且将军中存在叛徒。叛徒可以任意行动以达到以下目标:欺骗某些将军采取进攻行动;促成一个不是所有将军都同意的决定,如当将军们不希望进攻时促成进攻行动;或者迷惑某些将军,使他们无法做出决定。如果叛徒达到了这些目的之一,则任何攻击行动的结果都是注定要失败的,只有完全达成一致的努力才能获得胜利。

从中可以看出几个问题:

如何保证所有将军都收到了消息?

若将军中有叛徒,传递了假消息,其他将军怎么知道谁说的是真?

将军们不在同一个地方,如何保证在极短的时间内消息传达到所有将军手中?

想要解决上述问题,做到信息的点对点成功传输,在差不多的时间内需要所有的节点(即"将军")达成一致共识,这就是区块链中的"共识机制"。

「科普」几种区块链共识机制简单易懂的介绍


共识机制的种类:

POW

( Proof of Work)工作量证明

此一概念最早由Cynthia Dwork和Moni Naor于1993年的学术论文提出,而工作量证明一词则是在1999年由Markus Jakobsson与Ari Juels.所发表。

POW是目前区块链中最简单、应用最广泛的共识算法,也就是常说的"挖矿"。矿工们为了获取记账权从而获得奖励,要不断的进行哈希计算。在这个过程中,矿工的计算量和获得记账权的概率成正比,矿工的算力越高,进行哈希计算的时间越长,工作量越大,获得记账权的可能性就越高。目前主流的虚拟货币,含比特币、莱特币在内的大部分币种都采用的这种模式。

优点:

1.简单。

2.安全。(攻破成本巨大,需投入超过总体运算量的50%以上才能破坏共识,也就是说,整个系统节点越多,运算量越高,越不易被攻破)

3.公平。(矿工付出的越多,拿到奖励的可能性越大)

缺点:

1.耗费资源。(全网算力投入参与挖矿,极耗费能源)

2.耗时。(需要等待多个节点确认)

3.容易产生分叉。

4.新币种容易产生算力攻击。(比特币吸引了大部分算力,新币种容易遭到比特币的算力攻击)

POS

(Proof of Stake)权益证明

2012年8月,一个化名Sunny King的极客推出了Peercoin(PPC),前期采用工作量证明(PoW)机制发行新币,后期采用权益证明(PoS)维护网络安全。

POS是POW的升级。矿工们持有代币的的数量越多、持有时间越长,越容易获得记账权。POS引入了一个"币龄"的概念,节点持有的代币越多、时间越长,币龄越大,获得记账权的概率也就越大。一旦一个节点获得了一个区块的记账权,币龄就会被清空归零,必须等待一顿时间后才能签署另一个区块。另外,被清空的币龄越多,所获利息就越高,可以联想成持有股票,获得分红。应用了这种算法的币种有:点点币PPCoin、新星币NVC、雅币YaCoin、宇宙币CosmosCoin。

优点:

1.节约能源。(相比于POW,POS不需要比拼算力)

2.安全。(破坏共识需要投入50%以上的币)

3.省时间。(相比于POW而言,达成共识时间缩短)

缺点:

1.易产生分叉。

2.获得记账权的节点或许并不想记账。

3.对矿工激励有限。

DPOS

(Delegate Proof of Stake) 股份授权证明机制

BitShares社区首先提出了DPoS机制。DPOS是POS的升级版,与POS运作原理基本相同。所有持币者投票选出若干个代理节点,由这若干个代理节点轮流进行验证记账。

优点:

1.耗时短。

2.不会分叉。

缺点:

1.做不到完全的"去中心化"。(选出若干个代理节点是另一种意义上的"中心化")

2.依赖代币。

PBFT

(Practical Byzantine Fault Tolerance)实用拜占庭容错

PBFT是BFT(Byzantine Fault Tolerance,拜占庭容错算法)中最典型的一种算法,BFT从上世纪80年代开始被研究,目前已经是一个被研究得比较透彻的理论,PBFT是由Miguel Castro和Barbara Liskov于1999年提出。

PBFT的核心是:N =3f+1。其中,N是系统中的总节点数,f是系统中可以出现故障的节点数。也就是如果整个系统中有f个节点出现故障,那么系统中至少要有N个节点,才能保证系统无误的正确运行。

PBFT至少需要4个参与者(f=1)。举例来解释PBFT:如果系统中有abcd四个节点,a发出一条消息,b节点出现故障而无法正确确认信息,但cd两个节点确认正确,那么系统就会忽略b这个故障节点记录的信息,从而实现整个系统的正确记录。(2个节点正确确认 1个节点错误确认)

优点:

1.不依赖代币。

2.耗时短。

3.效率高。

缺点:

1.不安全。(需要保证2/3的节点正常无误的记账,即故障节点不能超过1/3,相比POW和POS的50%容错性低很多)

2.可能会出现分叉。

dBFT

delegated BFT(授权拜占庭容错机制)

小蚁区块链采用的共识算法,是NEO在PBFT上进行改进后的产物。dBFT由权益来选出记账人,然后记账人之间通过拜占庭容错算法(BFT)来达成共识。

优点:

1.防止分叉。(批准区块链新版本需通过2/3节点的审批)

2. 算法可靠。(有严格的数学证明)

3.能够认证记账节点的真实身份。(引入了数字证书)

缺点:

1.不安全。(同PBFT)

除上述典型的共识算法外,还有Paxos(一致性算法)、Raft算法、RDPOS、Pool(联营)验证池、Ripple共识、投注共识,活动证明(Proof of activity,PoA),燃烧证明(proof of burn,PoB),能力证明(proof of capacity, PoC),消逝时间证明(Proof of elapsed time)等算法。随着区块链不断发展,未来将会衍生出更多种类的共识算法。


添加新手交流群:币种分析、每日早晚盘分析

添加助理微信,一对一亲自指导:YoYo8abc

查看更多:

为您推荐