区块链中常见的10种共识机制介绍

在蜂巢学院公开课第二课上,导师郝玉琨(万向区块链新链空间负责人)用通俗易懂的例子讲解了了解区块链必须要掌握的10个核心关键词,其中有一个是“共识”。在课上,导师解释了什么是共识,并提到pow、pos、dpos是目前公有链常见的共识算法。
在区块链共识机制这片江湖里,除了pow、pos、dpos“三秀”外,还有数个小弟隐于其中,他们虽然没有那么大的名声,但也有公链在用。这篇文章,将简单介绍10种共识机制,让大家更多地了解区块链的共识。
首先,我们再来复习下什么是共识。
什么是共识
举个例子,你约了一帮人玩游戏,玩游戏之前要定下游戏规则,规定好输赢的奖惩措施。游戏规则需要每个参与游戏的人同意并达成一致,这样才能保证整个游戏的公平性,让每个参与者都玩得开开心心。这个游戏规则就是一个“共识协议”。
在区块链中也一样,共识是一个决策过程,它的目标是确保所有参与者在添加新数据块后,能就其当前状态达成一致。换言之,共识协议确保了一条链的正确性,并为做出贡献的参与者提供了激励措施。共识协议对区块链来说是非常重要的,它可以防止一个人单独控制整个系统,并确保每个人都遵守网络规则。以比特币区块链为例,虽然中本聪创造了比特币区块链,但ta对这条链并没有所有权,比特币区块链完全是透明和开放的,网络中的每个节点都是平等的。
总结来说,一个协议就是一套规则,它有助于:
· 确保在线交易的可行性;
· 消除双重损毁的可能性;
· 确保参与者不作弊。
区块链协议还包含:
· 确定性的逻辑规则;
· 以加密技术和密码学作为安全基础;
· 使网络协议得以延续的激励措施。
目前行业里有多种区块链协议,其中pow(工作量证明)和pos(权益证明)是最早的协议,通常也是其它共识协议的原型。让我们来看看它们各自有什么优缺点。
proof-of-work(pow)
工作原理:很难找到解决方案,但很容易检测结果的正确性。
使用范围:公有链
使用案例:比特币、以太坊、莱特币。
要添加一个新块,参与者必须证明ta已经完成了多少量的工作。更准确地来说,要证明ta解决了一个非常困难的任务,即找到了符合特定规则的哈希值。第一个找到正确哈希值的人即可获得在链上添加新块的机会。
因此,参与pow意味需要大量的计算资源成本,如电费、cpu等。尽管点对点的可扩展性不错,但pow处理交易的效率很低。它的另一个问题是,参与者的动机通常是为了致富而不是为了维护“正义”。随着时间的推移,降低挖矿费用和佣金,会极大地影响网络安全。
pow的优势在于,能确保两个互不信任的参与者在一个网络中工作。任何人都可以加入网络,而不需要任何许。尽管点对点的可伸缩性很高,但是事务处理率仍然很低。
proof-of-stake (pos)
工作原理:网络信任验证者,验证者抵押自己的资源作为创建块的能力保障。抵押的资源越大,网络允许这个验证者创建块的概率就越高。
使用范围:公共/私有区块链。
使用案例:cosmos、tezos、ethereum也正准备从pow转向pos。
pos的技术特点是没有复杂和不必要的计算。网络参与者不与其他人竞争,而是抵押他们的资源,如在以太坊区块链中的抵押以太币,并等待他们被选中来创建一个新的块。
参与者对网络安全很看重,因为他们自己手里持有网络中的token。系统根据参与者所拥有的 “股权”来选择验证者,如参与者拥有5%的股份,那么将验证网络中5%的交易。pos的想法是验证者持有的“股份”比例越高,ta操纵验证程序的兴趣就越低。
与pow算法一样,pos中交易的完成是概率性的。尽管与pow相比,pos的交易速度相对较快,但它仍然需要token。有人指出,拥有大量股份的验证者将会有更大概率被选中,因此会导致“富者更富”。
delegated-proof-of-stake (dpos)
工作原理:参与者将新块的生产委托给一小群被选出来的、数量固定的验证者。竞争激烈,但回报丰厚。
使用范围:公共/私有区块链。
使用案例:eos、bitshares
dpos通过减少验证者的数量来提高交易速度以及创建块的速度。验证者是token持有者通过投票选出来的,新块由验证者而不是token持有者创建。每票的权重由投票人的资产总和决定。投票人可以在任何时候投票给验证者。这决定了网络的高度灵活性,如果大多数验证者失败或出现问题,那么社区将立即投票选出新的验证人来替代他们。
每个新块的产生需要1-2秒的时间。与pos相比,dpos更快更公平,因为被委托的验证人将会与为他们投票的人共享获得的奖励。
proof-of-activity (poa)
工作原理:pow和pos的混合。
使用范围:公共区块链。
使用案例:decred。
活动证明(poa)结合了pow和pos协议,这意味着参与者可以挖矿或抵押权益来验证区块。因此,poa协议在矿工和普通网络成员之间提供了平衡。
proof-of-location (pol)
工作原理:信标用于查看处于同步状态的节点,然后用临时标记来标记其存在。
使用范围:公共区块链。
使用案例:foam、platin。
位置证明(pol)允许用户保护特定的gps位置,从而在网络上进行身份验证。这个区块链协议依赖于bft信标,它在区块链中记录地理位置和时间标记,从而防止系统中断和欺诈。
proof-of-importance (poi)
工作原理:和pos类似,但是有影响排名的附加条件。
使用范围:公共区块链。
使用案例:nem。
算法和pos类似,但包含三个部分:账户内的token数量;账户活跃度;帐户持有人在网络上花费的时间。
第一个参数在验证交易的评级中起着至关重要的作用;第二个和第三个参数只是帮助建立账户的“价值”。token的数量越小,其他参数的影响越大。
因此,一个拥有数十万token的账户,由于其活跃性和上网时间,可以将重要性系数提高近3倍。反之,拥有数亿token的人,如果不够活跃以及上网时长不够,其重要性将降低。
proof-of-elapsed-time (poet)
工作原理:块是在相同的时间里以及受信任的环境中创建的。
使用范围:私有/联盟区块链。
使用案例:intel。
英特尔开发了自己的区块链协议,intelledger。
该系统类似于工作证明,但使用的电力较少。该算法不是参与者解决密码难题,而是在受信任的执行环境环境中工作,如intel software guard extensions(sgx)。poet协议保证这些块是随机生成的,不受其它因素干扰。
proof-of-authority (poa)
工作原理:用于银行和保险公司的半中心化区块链协议。
使用范围:联盟/私有区块链。
使用案例:kovan、rinkeby、giveth、tomochain、rublix、swarm city、colony、go-chain。
与pos和dpos类似,在poa中,验证人节点保护区块链并生成新的区块。区块链上的新块只有在验证器达到最大值时才会创建。区块链上的新块,只有当验证人节点达到最大值时才会被创建。
通过预先选定验证人,proof of authority并没有那么去中心化。因此,这种共识协议更适合私有或者联盟区块链,如银行和保险公司。所有验证人的身份都是公开的,可由任何第三方进行验证。因此,验证人的行为是为了使网络利益最大化。
proof of capacity (poc) or proof of space (pos)
工作原理:矿工可执行的工作量取决于其磁盘可用空间量。
使用范围:公共区块链。
使用案例:burstcoin、bitcoin ore。
poc类似pow,但两者有个显著区别,在poc中,不需要做大量的工作来验证每个区块,这些工作在”plotting”(绘图)的过程中提前完成了,此过程的结果用于后面验证每个块。plotting是生成称为“plotting file”的特殊文件的过程,该文件存储大量预先计算好的哈希值。最短的解决方案被授予挖掘下一个块的权限。poc具有高效、成本低和分布式的优点。
proof-of-concept (poc)
poc可用于任何领域,括投票追踪、记录存储、法律文件等。poc可以是没有任何支持代码的原型,也可以是具有基本功能集的最小可行产品(mvp)。poc是组织内部用来更好地理解特定项目的模型。
共识协议是区块链不可分割的一部分。它们有助于实现公正,也能避免当一个或部分参与者节点失败时,系统出现故障。其次,也有助于互不信任的参与者在去中心化的环境中达成“共识”。
上文只简单介绍了部分共识协议,还有很多协议未囊括其中,如practical byzantine fault tolerance(pbft)、proof-of-brain (pob)、proof-of-physical-address (popa)、proof-of-bank-account (poba)等。在蜂巢学院公开课第三课上,将详细介绍比特币的共识协议(pow)。导师吴为龙(趣派科技cto),是行业早期参与者和第一批区块链开发者,他将会结合自己多年的行业经验,为大家通俗易懂地讲授比特币的起源、发展、治理等各种知识,让大家离区块链更近一步。


如何选购蓝光芯片
手机行业正在酝酿着一场防水技术革新风暴
光子集成电路的发展方向解读
我们常用的电阻器和电容器的标称值有哪些
印度智能手机“M-6700”与安卓手机“Racer”的基板比较分析
区块链中常见的10种共识机制介绍
安规电容炸裂的原因有哪些
多功能电力仪表要走哪些路线才会比较好
IOT赋能气象墒情监测,推进农业生产降本增效
半导体科普:晶体管形成区域
单纵模激光器的结构组成_单纵模激光器的优点及应用方法
飞行汽车离我们还有多远?
Linux系统下init进程的前世今生
华为X-House项目斩获多项国际殊荣
一种快速编辑电子电路图形的方法
220kV线路保护配置原则?保护如何整定?
电容分正极和负极吗
Java遭遇滑铁卢!
IO耦合器如何通过CANopen总线进行通讯
扩频降低EMI的DC/DC稳压器电路设计