主页 > imtoken市场打不开 > 区块链共识算法你了解多少? (POW、POS、DPOS、PBFT区块链共识算法)

区块链共识算法你了解多少? (POW、POS、DPOS、PBFT区块链共识算法)

imtoken市场打不开 2023-07-04 05:19:43

区块链共识算法

POW、POS、DPOS、PBFT区块链共识算法

区块链

区块链是一种去中心化的分布式账本系统,可用于登记和发行数字资产、财产凭证、积分等,并以点对点的方式进行转账、支付和交易。 与传统的中心化账本系统相比,区块链系统具有完全公开、不可篡改、防止多次支付等优势,不依赖任何可信任的第三方。

由于对等网络中的网络延迟很高,每个节点观察到的交易顺序不可能完全一致。 因此,区块链系统需要设计一种机制,对相似时间段内发生的交易顺序达成共识。 这种在一个时间窗口内就交易顺序达成共识的算法称为“共识机制”。

在区块链这样的分布式数据库中,保证整个系统的安全性和适应性是非常重要的,这也是共识算法出现的根本原因,那么区块链中有多少种共识算法呢?

1个

POW:工作量证明,工作量证明

比特币在出块过程中使用的是POW工作量证明,可以说是最原始的区块链共识算法。 POW算法不难理解。 就是通过工作量来统计数据。 例如,如果一块矿石含有5%的铁,那么当你想要得到5个铁时,你需要100个这样的矿石。 你拥有的铁越多,你用来提炼它的铁矿石就越多。 你拥有的铁越多,这个证据就越可靠。

举个简单的例子,在选举投票中画“正面”人物的方法,“正面”人物越多,你在选民中的得票率就越高,你就越容易被选中或排名靠前。 比如三个“正”字以上的可以晋升,那么三个“正”字以上的都可以晋升。

再比如有一个中国人在美国呆了10年,回来后几乎不用考英语,因为他在美国呆了10年,我们相信他的英文绝对没问题。 也就是说,在美国的10年里,他的大部分交流都是用英语,他已经付出了足够的努力。 这个工作量与他的英语水平呈正相关。

英语六级为什么要考很多题的原理也是如此。 这是工作量的证明。 只有多做题,工作量才会增加,通过六级的概率才会更大。 过了8级,那么我们就认为他的英语有8级的实力了。

当然POW算法也适用于我们生活中的其他场合,比如格斗游戏、FPS游戏的K/D比、胜率等。 数字越高,你越强。

2个

POS:Proof of Stake,股权证明

PPC是由中本聪创建的一种衍生自BTC的P2P电子加密货币。 它使用权益证明(以下简称POS)代替工作量证明(以下简称POW)来维护网络安全。 POS其实可以替代POW的大部分功能。 这主要是因为和工作量证明 POW 一样比特币共识算法,POS 权益证明不能轻易伪造。 当然,这也是货币体系的一个关键特征——防止伪造。 从哲学的角度来看,货币过去一直是“工作量证明”,因此它本身可以取代工作量证明。

这里需要引入一个概念:货币时代。

至少早在 2010 年,中本聪就提出并在 BTC 的设计中使用了币龄的概念来对交易进行优先排序,但这一概念在其安全模型中并没有起到非常重要的作用。 币龄简单定义为币种的持有期。 举个简单的例子:如果A从B那里收到了10个币并持有了30天,那么A就收了300个币日。

如果A使用从B收到的10个币,我们认为A从这10个币中积累的币龄被消耗(销毁)。

为了简化币龄的计算,我们为每笔交易引入了时间戳的概念。 增强了与区块时间戳和交易时间戳相关的协议,以确定币龄的计算。

这有点像我们放银行法币的利息。 在交易中,区块持有者可以消耗自己的币龄获取利息,同时获得优先为网络出块并使用POS铸币的权利。

因此,POS 区块的产生是随机的,这个过程类似于 POW。 但是有一个重要的区别是(POS)随机散列是在有限的空间内完成的(具体来说,1个散列/输出未使用的钱包*秒),而不是像 POW Search 在小空间内无限,所以不需要一个大量的能源消耗。

3个

DPoS--Delegated Proof of Stake授权权益证明

又称受托人机制,其原理是让所有持有比特股的人进行投票,产生101个代表,我们可以理解为101个超级节点或矿池,这101个超级节点权利是完全平等的。

由于使用了去中心化的投票机制,DPoS 比其他系统更加民主化。 DPoS 并没有完全消除对信任的要求。 代表全网签署区块的可信主体在保护机制下确保行为正确无偏见。 此外,每个已签名的区块都有前一个区块由可信节点签名的证明。 DPoS 消除了交易等待一定数量的区块被不可信节点验证的需要。 通过减少对确认的要求,DPoS 算法大大提高了交易速度。 通过信任少数诚实节点,可以删除块签名过程中不必要的步骤。

DPOS 引人注目的安全性来自其用于选择区块生产者和验证节点质量的算法。 利用投票过程可以确保即使拥有 50% 的有效投票权,一个人也不能单枪匹马地选择一个生产者。 DPOS 旨在优化具有强大网络连接的诚实节点 100% 参与(共识过程)的名义条件。 这使 DPOS 能够在平均仅 1.5 秒的时间内以 99.9% 的确定性确认交易,同时以优雅且可检测的方式降级——从降级中恢复是微不足道的。

4个

PBFT–Practical Byzantine FaultTolerance 实用拜占庭容错

PBFT是Practical Byzantine Fault Tolerance的缩写,意为实用的拜占庭容错算法。 该算法由Miguel Castro(卡斯特罗)和Barbara Liskov(里斯科夫)于1999年提出,解决了原始拜占庭容错算法效率低下的问题,将算法的复杂度从指数级降低为多项式级。 ,使得拜占庭容错算法在实际系统应用中具有可行性。

PBFT在保证活跃性和安全性的前提下,提供了(n-1)/3的容错能力。 在分布式计算中,不同的计算机试图通过交换消息来达成共识。 拜占庭将军问题是根据错误计算机的数量,寻找可能的解决方案,不能找到绝对的答案,只能用来验证一种机制的有效性。

拜占庭问题的可能解决方案是:

在 N ≥ 3F + 1 的情况下,一致性是可以解决的。 其中,N为计算机总数,F为出现问题的计算机总数。 计算机之间交换信息后,每台计算机列出所有获得的信息比特币共识算法,并取大部分结果作为解决方案。

小易采用的 dBFT 机制是按权益选择记账人,然后记账人通过拜占庭容错算法达成共识。

该算法由YI原创,在PBFT的基础上做了如下改进:

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

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

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

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

以上是目前主要的区块链共识算法,当然还有其他的算法,比如PoET-Proof of Elapsed Time等。 这些算法大多是按照共识算法从诞生到流行的先后顺序来确定的。 无论是技术上还是商业上,每种算法在特定的时间段内都有自己的考量和意义。 当然有优点也有缺点。 共识算法的选择主要与应用场景高度相关。 网上也有很多这样的帖子,以后有时间再分享给大家。