资讯专栏INFORMATION COLUMN

区块链主流共识算法

awokezhou / 2034人阅读

摘要:比特币是第一个区块链应用,同时也是最著名的应用之一,它所使用的共识机制就是。区块链系统的参与者锁定他们在该区块链上持有的虚拟资产或,他们会签署消息以达成一致意见。

一.POW(Proof Of Work)

Proof Of Work,也就是工作量证明。工作量证明系统(或者说协议、函数),是一种应对拒绝服务攻击和其他服务滥用的经济对策。它要求发起者进行一定量的运算,也就意味着需要消耗计算机一定的时间。这种系统要求得到证明的过程是低效且漫长的,可是校验则是高效且迅速,概括起来就是求解难,验证容易。

比特币是第一个区块链应用,同时也是最著名的应用之一,它所使用的共识机制就是POW。那么具体是怎么实现的呢?

在比特币中,使用了SHA256这种哈希函数作为求解手段。SHA256有以下特征:

是一种散列函数,即相邻的x1和x2,求得的f(x1)和f(x2)差别极大。

不可逆推,给定了f(x)的值,推断不出输入值。

不存在比穷举更好的方法,可以使f(x)落在特定的范围。

实际使用过程中,每个节点需要打包的交易数据相同,再从尾部加一个随机数(节点自己选)作为整体输入来求输出值,把结果和当前的挖矿难度对比(要求输出值前x位为0),满足条件则向附近节点广播;不满足则更换随机数继续求解。最快求得解的节点,则可以视为挖矿胜出,取得其他节点的共识。

目前比特币已经吸引了全球大部分的运算能力,其他再使用PoW共识机制的区块链应用很难获得相同的计算能力来保障自身的安全,从而无法复制比特币的辉煌;同时由于挖矿造成大量的资源被浪费,共识达成的周期很长,导致了比特币的TPS(transaction per second,每秒执行事务数量)极低,只有个位数。

二.POS(Proof of Stake)

POS通过区块链系统内部的虚拟资产来管理安全性,根据节点持有的通证数量或者时长来决定节点享有的权利大小。区块链系统的参与者锁定他们在该区块链上持有的虚拟资产(Coin或Token),他们会签署消息以达成一致意见。只有那些已经成为系统一部分的参与者才能够决定下一个区块的内容。

PoW共识算法从经济角度,可以自然做到防止区块链分叉(区块链分叉的本质就是网络各节点对区块链的生成产生分歧,无法达成共识)。但是PoS则需要精心设计好相应的规则来防止分叉,例如PoS可以设定惩罚机制,参与挖矿的矿工被要求锁定一定数量的虚拟资产。如果他们被侦测到了存在不当的行为,则系统会没收全部或部分被锁定的虚拟资产。

三.DPOS(Delegated Proof of Stake)

DPoS机制,中文名叫做股份授权证明机制(又称受托人机制),它的原理是让每一个通证的节点进行投票,选出集中多数票的节点,例如100个,然后这些节点会行使类似POS的权力。
DPOS利用利益相关方批准投票的权力以公平和民主的方式解决共识问题,所有网络参数,从费用估算到块间隔和交易规模,都可以通过选定的代表进行调整。从某种角度来看,DPOS有点像是议会制度或人民代表大会制度。如果代表不能履行他们的职责(当轮到他们时,没能生成区块),他们会被除名,网络会选出新的超级节点来取代他们。

四.PBFT(Practical Byzantine Fault Tolerance)

Practical Byzantine Fault Tolerance,实用拜占庭容错算法。

拜占庭假设是对现实世界的模型化,由于硬件错误、网络拥塞或断开以及遭到恶意攻击,计算机和网络可能出现不可预料的行为。拜占庭容错协议必须处理这些失效,并且这些协议还要满足所要解决的问题要求的规范。这些算法通常以其弹性t作为特征,t表示算法可以应付的错误进程数。很多经典算法问题只有在t小于n/3时才有解,如拜占庭将军问题,其中n是系统中进程的总数。

五.BFT-DPoS

BFT-DPoS,Byzantine Fault Tolerance - Deligated Proof of Stake,带有拜占庭容错的委托股权证明。
EOS的白皮书中,每个见证人出块时全网广播,其他见证人收到新区块后,立即对此区块进行验证,并将验证签名完成的区块立即返回出块见证人,不需等待其他见证人自己出块时再确认。从当前的出块见证人看来,他生产了一个区块,并全网广播,然后陆续收到了其他见证人对此区块的确认,在收到 2/3 见证人确认的瞬间,区块(包括其中的交易)就不可逆了。交易确认时间大大缩短,从 45 秒缩短至 3 秒左右(主要为等待生产区块的时间)。

EOS原来是采用DPoS,为了效率采用PBFT 和 DPOS结合的BFT-DPoS,理论确认速度大大提升。因为EOS在设计之初就提出了选出21个超级节点作为见证人,并负责全网的出块,所以被人诟病缺失了区块链的去中心化精神。实际上,比特币、以太坊这些前辈,经过了前期的发展后,大部分算力已经集中在各大矿池和机构手上了,所以EOS只是提前把这个生态确定下来,并写在台面上,才会有这样的非议。

EOS的这种妥协,其实是兼顾了中心化和效率,是区块链上一个有益的尝试。


相关文章和视频推荐

【许晓笛】详解 EOS 的新共识机制 BFT-DPoS

圆方圆学院汇集大批区块链名师,打造精品的区块链技术课程。 在各大平台都长期有优质免费公开课,欢迎报名收看。
公开课地址:https://ke.qq.com/course/345101         

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/24480.html

相关文章

  • 技术的分析和思考

    摘要:主流跨链机制概述截至目前,主流的区块链跨链技术方案按照其具体的实现方式主要分为三大类,分别是公证人机制侧链中继和哈希锁定公证人机制公证人也称见证人机制,公证人机制本质上是一种中介的方式。 本文首发于[深入浅出区块链社区(https://learnblockchain.cn/)原文链接:跨链技术的分析和思考原文已更新,请读者前往原文阅读 当前的区块链底层技术平台百花齐放,不同的业务、不同...

    Freeman 评论0 收藏0
  • 区块共识分析的简单框架

    摘要:一般来说,吞吐量和延迟也难以两全,这是因为共识的消息复杂度有一个下限对于每一轮共识,参与共识的节点至少要收到一次消息否则连要共识的东西是什么都不知道。如何处理共识参与者的动态变化,是区块链共识的一个核心问题。 区块链共识对比 区块链 进入方式* 出块选择* 共识方式* 退出方式* 安全偏好 延迟[1] 带宽效率 节点数量[2] Algorand 持有代币 Random/VRF...

    huhud 评论0 收藏0
  • 区块共识分析的简单框架

    摘要:秘猿科技区块链小课堂第期延迟为交易发出到被共识确认所需要的时间。一般来说,吞吐量和延迟也难以两全,这是因为共识的消息复杂度有一个下限对于每一轮共识,参与共识的节点至少要收到一次消息否则连要共识的东西是什么都不知道。 在之前的几期秘猿科技小课堂中,我们对比分析了 PoW 和 PoS 的优劣,以及我们 CKB 是如何改进比特币的 PoW 协议的。这一期是共识部分的最后一期,我们带大家综合了...

    haoguo 评论0 收藏0
  • 理想终将照进现实,算法也终将回归本来之美

    摘要:江湖传闻年,也就是比特币创立初期,向中本聪发难,认为必须改变比特币的共识机制并提出改进方案。至此,单纯的机制已无完备性可言,也背离了中本聪的设计初衷。理想终将照进现实,算法也终将回归本来之美。 江湖传闻:2010年,也就是比特币创立初期,BM向中本聪发难,认为必须改变比特币的共识机制并提出改进方案。不过,傲娇的中本聪本尊并没有采纳,他在强调了比特币去中心化的重要性和必要性之后,霸气回应...

    calx 评论0 收藏0
  • QuarkChain主网Singularity上线倒计时启动:引爆下一代区块的奇点 全新区块宇宙

    摘要:主网上线时将有条分片,每年计划可动态添加一条分片。守护者计划只针对根链,各个分片挖矿难度完全由哈希算力决定。奇点上线,将成为开启未来如群星般浩渺的区块链宇宙的全新起点。 QuarkChain成立一年多以来,经过不断的的设计、开发与测试,今天,QuarkChain团队正式向社区公告:QuarkChain主网 v1.0 版 Singularity(奇点)将于北京时间2019年4月30日正式...

    firim 评论0 收藏0

发表评论

0条评论

awokezhou

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<