主页 > 下载安卓版imtoken > 什么是“共识算法”——春节一起读的EOS白皮书之一

什么是“共识算法”——春节一起读的EOS白皮书之一

下载安卓版imtoken 2023-09-25 05:12:55

区块链给世界带来的最大革命是通过去中心化,在代码即法律的社区共识下,利用技术手段大大降低了人们的沟通和信任成本。

比特币使用的共识算法是_比特币是什么算法_比特币高频交易算法

EOS.IO软件采用委托权益证明(DPOS),这是唯一能够满足区块链之上应用程序性能要求的去中心化共识算法。

——EOS白皮书

这句话听起来很别扭,读起来也很难。 让我尝试用人性化的语言向您解释一下:

委托权益证明(DPOS)是区块链技术中唯一能够满足Eos.io软件性能要求的去中心化共识算法。

嗯,对于小白来说,还是不太好理解,我再尝试拆解一下。

共识算法

什么是共识算法?

所谓“共识”,字面意思就是共识。

所谓“共识算法”就是对一个提案(Proposal)达成共识的过程。

提案的含义在分布式系统中非常广泛,比如多个事件发生的顺序,某个key对应的值,谁是leader等等,可以认为任何需要约定的信息是一个提案。

在日常生活中,我们解决所有遇到的事情,这是一个达成共识的过程。

在区块链中,共识算法主要用于解决多点统一意见的问题。 比特币或其他区块链代币遇到的核心问题是如何在去中心化环境中达成最大共识。

为保证系统满足不同程度的一致性,往往需要通过共识算法来实现。

区块链系统中的所有节点都是平等的,每个节点都有记账权,所以最终整个网络上会有很多不同的账本。 但实际上,我们只需要一个账本(或许多相同的账本)。 那么如何通过技术手段保证一段时间内只有一个节点产生最终合格的账本就是共识过程。

在比特币系统中,一个账本就是一个区块,节点通过 Pow 生成唯一确定的区块的过程就是共识过程。

要了解什么是 Pow(工作证明),我们需要了解哪些其他算法具有共识。 下面介绍几种常见的共识算法。

1个

工作量证明 (PoW)

工作量证明是大多数人熟悉的一种,因为它是比特币区块链生态系统中比特币证明的核心。

用人的话来说,就是一种可以证明你完成了指定工作量的机制。

举个栗子。 我有一堆砖需要从 1 楼搬到 5 楼。 我雇了一个工人来完成这个过程。 我不需要看着工人完成搬砖的全过程。 我只需要在早上提出这个要求。 晚上去验收的时候,发现所有的砖都搬到了5楼,才知道这个工人确实做了这么多工作。 至于用来完成这些任务的方法,我不关心。

在比特币区块中,矿工需要完成将区块添加到链中的工作才能获得比特币作为奖励。 矿工们面临着一个数学问题的挑战,这个问题需要消耗大量资源,包括时间、计算能力和电力来解决。 一旦哪个矿工解决了这个难题,他就可以将下一个区块添加到链中,他就会得到奖励,这是一种消耗资源换取比特币的激励。

工作量证明是一种保护比特币(目前是以太坊)和许多其他区块链的机制。

2个

股权证明(PoS)

由于需要大量的算力,从早期的电脑CPU挖矿,发展到用显卡挖矿,再到专门为挖矿设计的定制芯片。 Pow挖矿的成本越来越高,能源消耗也越来越大。 POW 算法因在挖矿过程中破坏环境和浪费电力而受到批评。 聪明的程序员设计了一种替代的股权证明 (PoS) 方法,试图通过用不同的机制取代挖矿的概念来解决这些问题。

在 PoS 中,参与者的股份决定了他们的可能性。 也就是说,每个网络节点都链接到一个地址,被寻址的硬币越多,它们就越有可能在下一个区块中被开采(或“抵押”)。

POS机制可以说是一种虚拟挖矿。 在 POW 中,用户可以用 1000 美元购买一台计算机,加入网络来挖掘新的区块,并获得奖励。 在 POS 中,用户可以用 1000 美元购买等值的代币,并将这些代币作为保证金放入 POS 机制中,这样用户就有机会产生新的区块并获得奖励。 在POW中,如果用户花费2000美元购买硬件设备,他当然会得到两倍的算力来挖矿,从而获得两倍的奖励。 同样,如果你在 POS 机制中投入两倍于保证金的代币,你将有两倍的机会获得新区块的生成权。

PoS的新机制是“利息”,即持有一定时间的PoS币,会获得一定数量的固定“利息”。 这部分“利息”就是新加入的 PoS 币种。 只要持有 PoS 币并开启,就可以获得一定比例的“利息”。

其实我们只需要知道:

用代币代替矿工是Pos和Pow最明显的区别。

比特币是什么算法_比特币高频交易算法_比特币使用的共识算法是

3个

委托权益证明(DPoS)

PoS衍生出的更专业的解决方案,类似于董事会的投票机制,选出n个记账节点,节点中提议者提交的提案由这些记账节点投票决定谁是正确的。

DPOS 算法在任何可以想象的自然网络中都是安全的,即使面对足够多的少数人的共谋。 与一些类似的算法不同,即使大多数生产者失败,DPOS 也可以继续工作。 在这种情况下,社区可以投票更换失败的生产者,直到恢复 100% 的参与度。 据我所知,没有其他共识算法能够足够稳健地应对这种高故障率或不稳定的网络条件。

最终,DPOS 从区块生产者算法的选择上获得了显着的安全性,同时验证了高质量和唯一的节点(这就是共识的目的)。 使用批准投票程序可以确保即使有人拥有 50% 的投票权,也无法单枪匹马地选择一个生产者。 DPOS 旨在优化网络连接非常良好和诚实节点 100% 参与的条件下的交易性能。 这将使 DPOS 在 1.5 秒内产生区块并保证网络能够达到 99.9% 的确定性,同时以优雅的方式从降级的服务中恢复。

其他共识算法旨在支持不良网络并面对不诚实的节点。 这将导致网络性能变慢、延迟变高、通信开销变大,并且会在 33% 的节点出现故障时导致整个网络挂掉。

有关Dpos的更多详细信息,请参阅此链接“”

4个

实用拜占庭容错共识(PBFT)

PBFT是Practical Byzantine Fault Tolerance的缩写,意为实用的拜占庭容错算法。

PBFT是一种基于严格数学证明的算法,需要经过信息交互和局部共识三个阶段才能达到最终的一致输出。 可以证明,只要系统中有超过三分之二的正常节点,就可以保证最终输出一致的共识结果,虽然达成共识的时间不确定。

实用的拜占庭容错协议的缺点是不适合大规模节点共识,因为随​​着节点规模的增加,达成共识所需的时间大大增加比特币使用的共识算法是,不符合效率要求。 许多相关研究人员正在讨论改进拜占庭协议以解决不同应用场景下的效率问题。

更多关于PBFT的内容,请参考“ ”。

从概率的角度来看,PBFT系列算法一旦达成共识就具有确定性和不可逆性; 而PoW系列算法是不确定的,随着时间的推移被推翻的概率越来越小。

5个

补充说明

除了以上四种共识算法外,LPoS、DPoS、PoI等都为人们所熟悉和接受。 每种不同的算法在不同的时期都承担了自己的使命。

用人的话说:

在所有情况下,共识方法的目的都是为了确保网络不受攻击。

最有效的方式是通过经济手段让大家形成共识:

攻击网络是非常昂贵的,与其破坏它,不如一起使用。

比特币使用的共识算法是_比特币是什么算法_比特币高频交易算法

所有区块链实际上都是建立在交易之上的确定性状态机。

共识是在确定交易顺序和过滤无效交易方面达成共识的过程。 目前有很多不同的共识算法可以打包交易,但DPOS共识算法多年来得到了广泛验证比特币使用的共识算法是,其可靠的可操作性证明它确实比其他算法更安全、更高效。

至于Dpos在最终的实际应用中是否真的能够满足Eos的要求,还需要等待Eos主网上线后才能进行评估。

比特币使用的共识算法是_比特币是什么算法_比特币高频交易算法

本文为石头币发起的“春节读Eos白皮书”活动的第一篇。

具体活动请参考