现在区块链常用的共识机制有:POW(工作量证明)、POS(股权(权益)证明共识机制)、DPOS(受托人共识机制)及拜占庭机制(PBFT,实用拜占庭容错算法)。
POW, proof of work,工作量证明共识机制,也是比特币用的机制,要想得到区块,需要计算出合理的block hash,计算时间是由计算机的哈希运算速度决定。具体没个计算节点多久寻找合适的hash是一个概率值,每个节点拥有多少百分比的全网算力,就有多少百分比的概率找到block hash,其规则简单清晰明了。
POS,proof of stake,股权(权益)证明共识机制,这种共识会根据持有人持有币的数量和持有时间,派发利息,这里的时间也就是币龄,每持有一个币一天,就会产生一个币龄,持有币越多时间越久的人,所获取的权益越大。
PBFT是一种状态机副本复制算法,即服务作为状态机进行建模,状态机在分布式系统的不同节点进行副本复制。每个状态机的副本都保存了服务的状态,同时也实现了服务的操作。将所有的副本组成的集合使用大写字母R表示,使用0到|R|-1的整数表示每一个副本。为了描述方便,假设|R|=3f+1,这里f是有可能失效的副本的最大个数。尽管可以存在多于3f+1个副本,但是额外的副本除了降低性能之外不能提高可靠性
虽然这两种共识机制解决了工作量证明中的 “狂霸”地位,节省了大量的计算力,但很多人又会担忧 “贫富差距越来越大的问题”,又出现了dpos,delegated proof ofstake,受托人共识机制。
对于当下所有的共识协议,仍有主要问题亟需解决:
1. 由谁来生成应用于数据库的下一个新的区块?
2. 什么时间诞生下一个区块?
3. 新的区块应该包括哪些交易?
4. 协议如何更新升级?
5. 竞争的交易历史如何解决?
Dpos机制规定,由持币的利益相关方投票来选择代表,代表们再以民主投票的方式决定共识问题。包括但不限于:所有网络参数、费用估算、块间隔、交易规模等。
由于代表数量往往少量,决定的效率会大幅提高,理论上最高每秒可以出一个块。
Dpos如何应对上面的五个问题? 还要防止攻击者获得区块链网络的控制权。理论上只要控制了区块链协议,也就能审查所有交易。只有足够强大的共识协议,才能防止攻击者利用不同计算机的数据库状态中的临时不一致性来攻击整个网络。
Dpos如何应对上面的五个问题? 还要防止攻击者获得区块链网络的控制权。理论上只要控制了区块链协议,也就能审查所有交易。只有足够强大的共识协议,才能防止攻击者利用不同计算机的数据库状态中的临时不一致性来攻击整个网络。
Dpos中,利益相关方可以选择任意数量的见证人来生产区块,所有账户投票来批准,投票通过的金正人们每生产出一个区块时,都会收取相应的费用,费用多少又是由另一批代表们共同决定。无论什么原因,如果见证人没有生产出区块,就没有收入,而且很可能被投票而失去见证人的身份。
见证人名单每隔一段维护时间会被重新选择而更新,所有的选票会被记录。代表们的选择方式类似于选取证人,这是为了确保代表们没有直接权利干涉技术,并且网络参数的所有变更都需要利益相关方的批准,代表没有酬劳。
代表们的选择方式类似于选取证人,这是为了确保代表们没有直接权利干涉技术,并且网络参数的所有变更都需要利益相关方的批准,代表没有酬劳。
Dpos 如何应对双花?任何代币的设计都要防止双花,就是一笔代币被当作多笔消费的问题出现。Dpos机制通过自身系统重组来排除此类问题。当互联网基础设施中断导致通信故障时,如果产生双花攻击,系统能够自动检测自身健康状况,并且可以立即检测通信中的损失,发现产生损失后,需要一半以上的证人确认交易后才能继续进行交易,整个过程需要一到两分钟。
Dpos如何应对可能的分叉?最终的硬分叉取决于网络上的每个用户是否愿意升级它们的系统。并没有一个能够强制硬分叉的协议,这意味着如果大部分用户愿意进行系统升级,就可以在没有利益相关方投票的情况下推出硬分叉。现实中,很少直接通过大部分用户升级软件的方式硬分叉。所有的系统改变都是开发者和证人遵循流程,等待利益相关者批准之后再进行分叉操作。
见证人都是选举产生的,理论上都是负责任的,并且限制必须在专用时间段来生产区块,因此很少有可能存在两条竞争链的状况。如果因为网络延迟导致见证人未能及时收到前一个区块,下一个见证人将通过构建在他们先收到的任何一个区块上解决问题,最后由整个区块链上的99%表决,确认一个99%机会被验证的交易。
Dpos 共识机制做的是最大限度的去中心化。每个利益相关方的影响力与其利益成正比。通过利益相关方确保区块平均分配给整个系统的大多数人,每个人都有自己的方式来发挥影响。
每一种共识都体现着设计者的世界观、思想,如何最大化的将共识在现实世界中落地、应用起来,造福更多的人群,将牵扯着大家的具体利益。
所以,判断的落脚点最终还是能有多少能改变社会,pow机制让比特币运行这么多年,比特币获得社会这么多的广泛认可,跟pow机制的清晰明了等特性离不开。
Pow别人诟病产生 “狂霸”,有51%算力攻击可能性,但实际上比特币保持这么多年的良好运行就已经获得了世界无数认可,已经是一个典范。pos 却也会产生 “富霸”可能性,导致小散户的权利被严重无视。
Dpos由于比特股的获得很多人看好,未来超级币既要获得比特币的稳健特性外,还要跟复杂的商业逻辑能够契合,才能获得很大的发展空间
未来超级币是什么?
未来超级币,指的是未来的能够大规模落地的币,现在还没有发现哪个,现已公开细则的链都满足不了。
这里就要隆重宣传下还没有撩开面纱Nervos,至少公开的几个聚焦点,符合核心要求。
首先一:对共识进行深度升级
算法共识是网络节点进行算法规则的产物;决策共识是由人,包括网络节点的拥有者或控制者,来制定或修改算法规则;市场共识则是在算法共识和决策共识的基础上由市场机制产生。
二、密码学,安全与风险
密码学有隐私、信任、安全的三个终极目标。对于区块链系统,密码学贡献了系统的安全性、防止伪造、防止双花和匿名性。 但是除了密码学之外, 区块链的算法、协议、实现、使用、隐私与监管也是可能造成风险的因素,每个都要仔细面对。
三、用博弈论升级系统设计
比特币从没有任何价值支撑的情况下,凭空产生,但其设计思想就是一种艺术。在设计考虑区块链系统中,既要考虑初期的用途和功能,同时也要考虑其可进化的层面。工程与研究的结合要做到与时俱进。
四、精准权衡把握系统设计整体的平衡点
设计设计中,必须要对安全、性能、去中心化等,仔细权衡把握找到平衡点。
五、落地
由于区块链本身就有很强的金融属性,因此安全性高于任何软件系统。
Nervos 自行设计一些形式化证明的工具,应用在区块链系统的验证中,可以避免未来很多安全的隐患,并且通过开发更为易用、安全的特定领域语言,帮助应用能够更快速的实现与落地。区块链技术的高效模型,为社会发展提供的可能性不仅在金融、经济领域,而且能扩展到目前所有应用范围。
因为区块链在社会管理方面还有一个最重要的功能:它能够使人情社会的复杂关系被压缩到最小的程度,从而使人们可以无地域限制的、去信任的方式来进行大规模的写作,真正建立起基于共识的全新社会。
Nervos ckb的设计基于对区块链技术在广泛分布应用层面关乎使用、分布、安全、机制与平衡的重新审视与思考,希望为全球76亿人构建出共同的知识库!作为Nervos社区死忠粉,结尾植入,Nervos,打造共识自动机,因为Nervos,区块链底层公有链的发展有了新的实现方向!
网友评论