📜  区块链中的共识算法

📅  最后修改于: 2021-10-19 08:36:19             🧑  作者: Mango

先决条件:区块链技术简介 |组 1、组 2

我们知道区块链是一个分布式的去中心化网络,它提供了不变性、隐私、安全性和透明度。没有中央机构来验证和验证交易,但区块链中的每笔交易都被认为是完全安全验证的。这是可能的,因为存在共识协议,这是任何区块链网络的核心部分。

共识算法是一个程序,通过该程序,区块链网络的所有对等方就分布式账本的当前状态达成共识。通过这种方式,共识算法在区块链网络中实现可靠性,并在分布式计算环境中建立未知对等点之间的信任。从本质上讲,共识协议确保添加到区块链的每个新区块都是区块链中所有节点都同意的唯一真实版本。

区块链共识协议包含一些特定的目标,例如达成协议、协作、合作、每个节点的平等权利以及每个节点强制参与共识过程。因此,共识算法旨在找到一个对整个网络有利的共同协议。

现在,我们将讨论各种共识算法及其工作原理。

  1. 工作量证明(PoW):
    该共识算法用于为下一个区块生成选择矿工。比特币使用这种 PoW 共识算法。该算法背后的中心思想是解决复杂的数学难题并轻松给出解决方案。这个数学难题需要大量的计算能力,因此,尽快解决难题的节点可以挖掘下一个区块。有关 PoW 的更多详细信息,请阅读工作量证明 (PoW) 共识
  2. 实用拜占庭容错(PBFT):
    请参阅有关实用拜占庭容错(pBFT)的现有文章。
  3. 股权证明(PoS):
    这是 PoW 最常见的替代方案。以太坊已经从 PoW 转变为 PoS 共识。在这种类型的共识算法中,验证者不是投资昂贵的硬件来解决复杂的难题,而是通过锁定他们的一些硬币作为股权来投资系统的硬币。之后,所有验证者将开始验证区块。如果验证者发现一个他们认为可以添加到链中的区块,他们将通过下注来验证区块。根据区块链中添加的实际区块,所有验证者都会获得与其赌注成比例的奖励,并且他们的赌注也会相应增加。

    最后,选择验证者根据他们在网络中的经济利益来生成新区块。因此,PoS 通过激励机制鼓励验证者达成协议。

  4. 燃烧证明(PoB):
    有了 PoB,验证者不再投资昂贵的硬件设备,而是通过将硬币发送到无法取回的地址来“燃烧”硬币。通过将硬币提交到无法访问的地址,验证者可以获得基于随机选择过程在系统上进行挖掘的特权。因此,在这里烧币意味着验证者有一个长期的承诺来换取他们的短期损失。

    根据 PoB 的实施方式,矿工可能会销毁区块链应用程序的本地货币或替代链的货币,例如比特币。他们燃烧的硬币越多,他们被选中开采下一个区块的机会就越大。

    虽然 PoB 是 PoW 的有趣替代方案,但该协议仍然不必要地浪费资源。而且也有人质疑,挖矿权只是流向那些愿意烧更多钱的人。

  5. 容量证明:
    在容量证明共识中,验证者应该投资他们的硬盘空间,而不是投资昂贵的硬件或燃烧硬币。验证者的硬盘空间越多,他们被选中挖掘下一个区块并获得区块奖励的机会就越大。
  6. 经过时间的证明:
    PoET 是最公平的共识算法之一,它仅使用公平手段选择下一个区块。它广泛用于许可的区块链网络。在这个算法中,网络上的每个验证者都有公平的机会创建自己的区块。所有节点都通过等待随机时间来这样做,在块中添加他们等待的证明。创建的块被广播到网络以供其他人考虑。获胜者是证明部分具有最小计时器值的验证者。来自获胜验证者节点的区块被附加到区块链中。 There are additional checks in the algorithm to stop nodes from always winning the election, stop nodes from generating a lowest timer value.

还存在其他共识算法,如活动证明、权重证明、重要性证明、租赁权益证明等。 因此,根据业务网络要求明智地选择一种很重要,因为没有共识算法,区块链网络无法函数运行验证正在提交的每个事务。