百科|共识机制知全揭秘

数字资产先生
数字资产先生

May 15, 2018 2000个小时币市投资经验,币圈老韭菜

该文章已上链

摘要: 共识机制是区块链项目的核心。

即使有斯皮尔伯格这样的大导演通过电影《头号玩家》告诫世人要分清线上世界和线下世界,呼吁回归现实生活,但我们只要转头看看地铁里、咖啡馆里、会场中、餐馆里和课堂上的人,就知道在未来世界,人们待在线上世界里的时间只会多而不会少。

不同的国家,有不同的政体;同一个国家,在不同历史阶段会有不一样的体制。在这里,政体和体制决定着线下世界的生产关系。互联网诞生已有几十年,移动互联网的出现更是加重了线上世界对线下世界的渗透,然而无需多言,线上世界依旧还在初创阶段。

因为,之前我们并没有到考虑线上世界生产关系的地步,大多是约定俗成的中心制或平台制,即数据归平台所有。然而随着facebook数据泄露、滴滴打车用户被打标签、携程杀熟等事件的发生和积累,线上世界和个人数据的隐私性、所有权等议题将会愈发重要,而由比特币挑旗帜的区块链技术也恰在此时应运而生了。

现在的区块链项目很多,有多少种数字资产就有多少个区块链项目,更不用说还有很多没发币的项目。而区块链项目的分类,除了赛道和领域,最核心的地方乃是共识机制。共识机制于区块链项目就像宪法于国家,是根本大法,也是项目能否持续运行、社区活力是否有保证的根本因素。

比特币和区块链出现的目标和属性都是去中心化,而去中心化的核心是共识机制的建立。其中需要解决的主要问题是类似于拜占庭将军问题一样的问题,而共识机制就是为了解决类似的问题而出现。

随着区块链项目的井喷,共识机制的创新也进入眼花缭乱的阶段。搞得李笑来都在朋友圈里感慨,英文的26个字母都快不够用了吧。今天,Mr Token就用稍微通俗易懂的语言,来跟大家分享一下Mr Token所知道的那些共识机制。

共识机制No.1:POW

全名:Proof of Work(工作量证明机制)

案例:BTC(比特币)、LTC(莱特币)、BTM(比原链)

POW机制由于比特币的缘故,因此是区块链行业出现最早的共识机制。POW,一言以蔽之,有点像“多劳者多得,少劳者少得”。你矿机先进、你算力多,你越先通过哈希运算的概率就越高,你的账本也最长,你也就越容易掌握记账权,从而获得BTC、LTC和BTM这类数字资产的记账奖励。

刚开始的时候,用电脑的CPU就可以进行POW挖矿,后来慢慢演进到GPU、ASIC专业矿机挖矿。有点像现实世界由小农经济发展到机械化大生产经济阶段。

POW机制的优点是安全,缺点是建立共识的速度慢(即TPS低)和浪费能源。

共识机制No.2:POS

全名:Proof of Stake(权益证明机制)

案例:PPC(点点币)、NXT(未来币)

如果说POW机制拼的是算力的话,那么POS机制拼的是谁的币多以及谁持币的时间久(币龄)。你手里的币越多,持有的时间越久,你通过哈希计算的概率也越高,从而也越容易获得POS机制的数字资产。有点像我们现实世界的银行存款机制,你存的钱越多,存的时间越长,那么你的收益也越大。

POS机制仍然需要挖矿,只不过让网络中拥有越多权益的节点有机会做更多的决定,它的假设前提是利益更相关的人更倾向于维护网络利益且担心作恶后遭受惩罚,因此POS不需要像POW那样消耗大量资源,并在一定程度上缩短了账本确认时间。

共识机制No.3:DPOS

全名:Delegated Proof of Stake(股份授权证明机制)

案例:BTS、STEEM、EOS、TRX(波场)、WICC(维基链)

DPOS机制有点像西方国家的立宪制,EOS的超级节点有点像西方国家国会里的议员。哪个节点越能通过打口才、技术、情怀、资历等牌让代币持有人把票投给自己,就越容易成为数量有限的超级节点(也就是DPOS类区块链项目的议员)。

由于DPOS机制减少了需要同步的节点数量,因此大大提升了区块产生速度,但也因此被POW类项目批评为不够去中心化。

共识机制No.4:PBFT

全名:Practical Byzantine Fault Tolerance(实用拜占庭容错机制)

案例:ZIL

前面3个共识机制比较简单和易懂,这个PBFT机制稍微有点学术和难懂。谈到PBFT共识机制,就不能不谈论拜占庭将军问题。

拜占庭将军问题的详细定义,大家可以稍后自己去网上搜索。如果让Mr Token简单解释什么是拜占庭将军问题,那就是在从N个不同方位攻打同一座城池时(且必须超过一定量的方位同时攻打才能攻下来),如何解决信号传输一致性和正确性的问题。

最终,PBFT共识机制采用的解决方案是“许可投票、少数服从多数”来选举领导者并进行记账。该共识机制允许拜占庭容错,允许强监督节点参与,具备权限分级能力,性能更高,耗能更低,而且每轮记账都会由全网节点共同选举领导者,允许33%的节点作恶,容错率为33%。

由于PBFT共识机制特别适合联盟链的应用场景,因此,PBFT共识机制及其改进算法为目前使用最多的联盟链共识算法。

上面四种是比较常见的共识机制

下面介绍一些不常见的

共识机制No.5:POA

全名:Proof of Authority(权威证明机制)

案例:VEN(唯链)、POA(POA Network)

虽然POA机制跟DPOS机制一样也有超级节点,比如最近唯链就在搞101 个雷霆之源超级(权益)节点的申请与筛选,但与DPOS是通过投票选举不同,POA采用的是授权制或委任制。就比如你可以说美国的制度是DPOS机制,而回归前的香港则是POA机制,即港督是英国委任和指派的,也像我们国内目前的人大代表制度。

另一个POA

全名:Proof of Activity(活跃证明机制)

案例:QUN(qunqun)

QUNQUN是一个区块链社区项目,它的共识机制也符合它的社区和社交属性,根据活跃度来。

共识机制No.6:POB

全名:Proof of Believability(可信度证明机制)

案例:目前仅见于IOST

之前在币世界的直播采访时,IOST的CTO Terrence曾这样向大家介绍了IOST

的PoB共识机制:

打个比方来说,POS像是自然形成的社会,DPOS像是有了选举制度的社会,这两种社会在我们现实世界都曾经存在过,显然它们都有着自己的问题。

“我们的POB,简而言之就是,为了在IOST里取得一定的地位,你不光得有钱,还得要一定的reputation(声誉)。而你只有不断地为整个社区做好事,才能获得reputation。”Terry说:“而每次系统为你发放完代币奖励之后,你的reputation就会清零,这样你就会持续不断地为整个社区作出贡献,保证社区的正面发展。”

这令人想起了古代中国:为了当官,你不仅要有能力,还要有着良好的品行。所谓的选贤任能。这倒与IOST创始团队的中国背景不谋而合。

但是,如何界定什么行为才值得获得好名声呢?Terry说,这个就说PoB还在发展中的内容。“比如你经常在社区里给别人答疑解惑,经常给社区上传各种有价值的内容,我们就会认为这是能够给你带来reputation的行为。”

或许,我们可以简单的把POB理解为口碑制吧。

共识机制No.7:POCS

全名:Proof of Credit Share(信用贡献证明机制)

案例:GXS(公信宝)

公信宝的白皮书里,是这样说明POCS共识机制的:

我们将每⼀项数字资产以及字段进⾏标准定价(后续资产价格的涨跌由理事会投票和市场表现综合决定),每⼀条数据被查询并交易易成功,则计算一次贡献(Share,类似挖矿的算⼒力力贡献),数据量越大的联盟成员被交易的可能性越高,也将产⽣更多的贡献,贡献越多将得到的公信币奖励,也就意味着贡献越多可以换回更更多的数据,而数据量小的联盟成员相对可能产生较小的贡献,如果希望换回⾮非常多的数据,那需要购买足够的公信币才能达到这个需求,所以在这样⼀种按照贡献值来计算的共识机制下,联盟成员就可以

在一个公正公平的共享信用交换市场中愉快的做自己想做的事情。

这倒也符合公信宝这个个人数据交易平台的特性,你贡献的信用数据越多,你的对应算力也越大。

共识机制No.8:POD

全名:Proof of Devotion(贡献证明机制)

案例:NAS(星云链)

星云链的目标是做成区块链界的搜索引擎,因此,还设计了一套可以量化评估每个节点重要程度的星云指数(NR)。

在选择贡献度较⾼的账户时,我们使⽤了星云链原⽣的NR 普适价值尺度评估。在NR 的算法设计中,着重考虑了账户的流动性和传播性,我们认为满⾜这些性质的账户对⽣态建设贡献度较⾼。所以在POD中,将选取NR排名Top N 的账户,这些账户⾃愿缴纳⼀定数量的Nas 作为押⾦后则有资格成为新区块的验证者(validator),参与记账。

在给定验证者集合(validators set) 之后,PoD 算法通过伪随机数来决定验证者集合中谁是新的区块的提议者,提议者产⽣新区块。验证者集合不是固定不变的,有资格的账户可以选择加⼊或者退出验证者集合,⽽随着周期性NR 的变化,有资格的账户也会不⼀样。所以我们在PoD 设计了验证者集合动态变化机制,来实现验证者集合的更迭。

嗯,看上去,POD有点像区块链版的google page rank。

共识机制No.9:POE

全名:Proof of Existence(存在证明机制)

案例:POE(Po.et)

Po.et跟POA Network一样,都是将共识机制作为自己Token的代号。作为一个内容类的区块链项目,Po.et的共识机制POE也很符合内容类、版权类领域的特性,谁先上链谁在时间上领先谁就符合共识。

共识机制No.10:POI

全名:Proof of Importance(重要证明机制)

案例:XEM(新经币)

看了下新经币的白皮书,Mr Token不多解释,三个字:积分制。

共识机制No.11:POT

全名:Proof of Taste(品味证明机制)

案例:YOYOW(You Own Your Own Words)

YOYOW在系统维护上面采用的是DPOS机制,在内容评价这块采用的是POT机制,其基本原则是根据内容获得的净正面评价权重来分配收益。赞为证明评价,踩为负面评价,通过一定公式或加权然后算出内容的净正面权重。

共识机制No.12:RDPOS

全名:RDPOS(没查到R指代什么)

案例:目前仅见于ACT

RDPOS是DPOS机制的变种,是A Chain在DPOS机制上改进得到。A Chain白皮书里的说辞是“RDPoS 不仅继承了DPoS 的优点——不需要消耗额外算力即可实现产块后的权益分配,它还能会根据网络的交易状态动态决定由代理或全体节点验证智能合约的执行结果。”

共识机制No.13:SPOR

全名:Sentinel Proof of Retrievability(可恢复监督证明机制?)

案例:目前仅见于GNX(Genaro Network)

Genaro Network的公链采用的是POS共识机制,而在存储部分的共识是SPOR机制。Mr Token怕翻译不到位,还是直接把GNX白皮书里跟SPOR相关的文字摘录一下吧:

The Genaro Public Chain uses PoS (Proof of Stake) as consensus, and creatively uses the SPoR(Sentinel Proof of Retrievability) algorithm as its storage consensus, which could increase both public chain scalability and file transferring speed. Moreover, Genaro applies game theory to a sharing economy business model, thereby establishing a fairer rewards system for nodes and provides end users with a private, efficient, economic, secure and permanent storage space and sharing community.

共识机制No.14:VBFT

全名:Verifiable Byzantine Fault Tolerance(可验证拜占庭容错证明机制)

案例:目前仅见于ONT(本体)

4月20日,本体网络是这样在公号里对自家共识机制VBFT下定义的:

VBFT是一个结合PoS、VRF(Verifiable Random Function)和BFT的全新共识算法,是OCE (Ontology Consensus Engine)的核心共识算法。VBFT可以支持共识群体的规模性扩展,通过VRF保障了共识群体生成的随机性和公平性,同时保证快速地达到状态终局性。

VBFT算法可以认为是传统BFT算法在可验证随机方向的一个改进。在VBFT算法中,首先基于VRF在共识网络中依次选择出一轮共识的备选区块提案节点集,区块验证节点集和区块确认节点集,然后由选出的节点集完成共识。

由于VRF引入的随机性,每轮区块的备选提案节点/验证节点/确认节点都不相同,而且难以预测,从而极大提高共识算法的抗攻击性。

总之,就跟PBFT一样,大家理解成是BFT共识机制的改进版就成了。

共识机制No.15:Ripple Consensus

全名:Ripple Consensus

案例:目前仅见于XRP(瑞波)

瑞波共识算法使一组节点能够基于特殊节点列表形成共识。初始特殊节点列表就像一个俱乐部,要接纳一个新成员,必须由该俱乐部51%的会员投票通过。共识遵循这些核心成员的“51%权利”,外部人员则没有影响力。由于该俱乐部由中心化开始,它将一直是中心化的,而如果它开始腐化,股东们什么也做不了。与比特币及Peercoin一样,瑞波系统将股东们与其投票权隔开,因此,它比其他系统更中心化。

一句话,跟丐帮一样的长老制。

如果说上面的共识机制还算是区块链共识机制的话

那么下面的这种共识机制还算不算区块链共识机制则是有争议的

共识机制No.16:DAG

全名:Directed Acycli Graph(有向无环图)

案例:GBYTE、NANO和物联网区块链项目如IOTA、ITC

这里,引用下Eric Sun对DAG的简介:

有向无环图,DAG共识算法的诞生是为了解决区块链的效率问题,通过DAG拓扑结构存储交易区块,支持网络中并行打包出块,提高交易容纳量。之后DAG不断演化逐渐形成了 blockless 的发展方向。

从数据结构来看,DAG模式是一种典型的Gossip算法,即本质上为异步通讯,带来的最大的问题是一致性不可控,并且网络传输数据量会随着节点的增加而大幅增加。DAG算法支持交易快速确认,低廉交易手续费,同时也剔除了矿工角色。但是目前来看安全性低于POW等机制,容易形成中心化,例如IOTA依赖validator,字节雪球则需要见证人节点。

一句话,DAG很快,但就是有点异类

本文系作者 数字资产先生 授权链得得发表,并经链得得编辑,转载请注明出处、作者和本文链接

更多精彩内容,关注链得得微信号(ID:ChainDD),或者下载链得得App

分享到:

相关推荐

    评论(0

    Oh! no

    您是否确认要删除该条评论吗?

    分享到微信