首页 > 区块链博客 > 【区块链小白笔记】共识机制

【区块链小白笔记】共识机制

2018-04-18 16:52:00 阅读量:

全文摘要:

目前主要几类共识算法如下:PoW、PoS、DPos、Ripple Consensus、PBFT、dBFT、POOL验证池 1.PoW(工作量证明)

区块链的基础是P2P分布式网络、加密算法和共识机制。

在这些基础技术中,共识机制是至关重要的。可以说共识机制是区块链技术的核心,共识机制对于一个区块链系统来说就是它的灵魂。

共识机制很大程度上决定了整个区块链系统节点间的相互信任程度,也决定了其他使用者对于区块链上数据的信任程度。

区块链与普通分布式系统,尤其是分布式数据库最大的区别就是“去中心化”,而正是共识机制决定了一个区块链系统“去中心化”的程度。

通常,我们把区块链分为两大类:一种是公有链,一种是非公有链。

这两种区块链的核心区别在于:参与共识的节点是否是受控的。


对于公有链来说,互联网上的任何计算机都可以通过运行相应的区块链程序,参与整个区块链的共识;

而对于非公有链来说,通常需要获得之前区块链节点中大部分节点的同意,或者通过其他某种机制,获得参与共识的权力。


目前主要几类共识算法如下:PoW、PoS、DPos、Ripple Consensus、PBFT、dBFT、POOL验证池


1.PoW(工作量证明)


通过与或运算,计算出一个满足规则的随机数,即获得本次记账权,发出本轮需要记录的数据,全网其它节点验证后一起存储;


优点:易实现,节点间无需交换额外的信息即可达成共识,破坏系统需要投入极大的成本。

缺点:浪费能源,区块的确认时间难以缩短;共识达成的周期较长,不适合商业应用


2.PoS(权益证明)


PoW的一种升级共识机制,本质上是采用权益证明来代替PoW的算力证明,记账权由最高权益的节点获得,而不是最高算力的节点。根据每个节点所占代币的比例和时间;等比例的降低挖矿难度,从而加快找随机数的速度。


优点:解决了PoW 消耗算力的问题,在一定程度上缩短了共识达成的时间

缺点:拥有权益 的参与者未必希望参与记账,还是需要挖矿。


3.DPos(股份授权证明机制)


类似于董事会投票,持币者投出一定数量的节点,代理他们进行验证和记账。


优点:大幅缩小参与验证和记账节点的数量,可以达到秒级的共识验证。

缺点:整个共识机制还是依赖于代币,很多商业应用是不需要代币存在的。


4.Ripple Consensus(瑞波共识算法)


使一组节点能够基于特殊节点列表达成共识。初始特殊节点列表就像一个俱乐部,要接纳一个新成员,必须由51%的该俱乐部会员投票通过。共识遵循这核心成员的51%权力,外部人员则没有影响力。由于该俱乐部由“中心化”开始,它将一直是“中心化的”,而如果它开始腐化,股东们什么也做不了。


5.PBFT:Practical Byzantine Fault Tolerance(实用拜占庭容错算法)

在保证活性和安全性(liveness & safety)的前提下提供了(n-1)/3的容错性。

在分布式计算上,不同的计算机透过讯息交换,尝试达成共识;但有时候,系统上协调计算机(Coordinator / Commander)或成员计算机 (Member /Lieutanent)可能因系统错误并交换错的讯息,导致影响最终的系统一致性。


拜占庭将军问题就根据错误计算机的数量,寻找可能的解决办法,这无法找到一个绝对的答案,但只可以用来验证一个机制的有效程度。

而拜占庭问题的可能解决方法为:


在 N ≥ 3F + 1 的情况下一致性是可能解决。其中,N为计算机总数,F为有问题计算机总数。信息在计算机间互相交换后,各计算机列出所有得到的信息,以大多数的结果作为解决办法。


优点

1)系统运转可以脱离币的存在,pbft算法共识各节点由业务的参与方或者监管方组成,安全性与稳定性由业务相关方保证。

2)共识的时延大约在2~5秒钟,基本达到商用实时处理的要求。

3)共识效率高,可满足高频交易量的需求。

缺点

1)当有1/3或以上记账人停止工作后,系统将无法提供服务;

2)当有1/3或以上记账人联合作恶,且其它所有的记账人被恰好分割为两个网络孤岛时,恶意记账人可以使系统出现分叉,但是会留下密码学证据;


6.dBFT: delegated BFT 授权拜占庭容错算法

小蚁(NEO)采用的dBFT机制,是由权益来选出记账人,然后记账人之间通过拜占庭容错算法来达成共识。

此算法在PBFT基础上进行了以下改进:


将C/S架构的请求响应模式,改进为适合P2P网络的对等节点模式;

将静态的共识参与节点改进为可动态进入、退出的动态共识参与节点;

为共识参与节点的产生设计了一套基于持有权益比例的投票机制,通过投票决定共识参与节点(记账节点);

在区块链中引入数字证书,解决了投票中对记账节点真实身份的认证问题。


优点

1)专业化的记账人;

2)可以容忍任何类型的错误;

3)记账由多人协同完成,每一个区块都有最终性,不会分叉;

4)算法的可靠性有严格的数学证明;

缺点

1)当有1/3或以上记账人停止工作后,系统将无法提供服务;

2)当有1/3或以上记账人联合作恶,且其它所有的记账人被恰好分割为两个网络孤岛时,恶意记账人可以使系统出现分叉,但是会留下密码学证据;

以上总结来说,dBFT机制最核心的一点,就是最大限度地确保系统的最终性,使区块链能够适用于真正的金融应用场景。


7.POOL验证池


基于传统的分布式一致性技术,加上数据验证机制。


优点:不需要代币也可以工作,在成熟的分布式一致性算法(Pasox、Raft)基础上,实现秒级共识验证。

缺点:去中心化程度不如bictoin;更适合多方参与的多中心商业模式。

来源:币乎

以上就是《【区块链小白笔记】共识机制》全部内容,全文涉及到:共识算法、达成共识、共识达成、记账节点、参与共识、区块链系统、共识参与节点、共识验证、共识机制、权益证明、等方面的内容,您也可以通过阅读全文摘要来快速获取有价值数字货币和区块链的信息。



上一篇:射手座炒币日记4.18--唯有静下心来才能看的更清楚
下一篇:和色情网站合作而团队仍存在疑点的verge(XVG)到底是天使还是魔鬼

微信

微信

微信

微信