当前位置: 首页 > 科技观察

区块链共识机制详解

时间:2023-03-19 23:22:57 科技观察

共识机制是一个热门话题,涉及环境、可扩展性和安全性。但它们是什么?什么是共识机制?在加密货币世界中,共识机制是使计算机网络能够协同工作以确保网络安全的协议和算法。网络中51%的节点必须就网络的全局状态达成一致才能达成共识。在某种程度上,这只是一种口语化的说法,“这是我们要做的,以确保我们都同意彼此的看法。”我们就什么达成了一致?区块链技术由经过验证然后添加到链中的块组成(因此称为区块链)。每个区块都包含特定时间段内经过验证的交易列表。这对每个人都是可见的;也就是说,你可以回去查看区块链上的每一笔交易。共识机制用于验证添加到区块链的交易。一些更高级的区块链项目也使用共识机制来验证存储数据、智能合约等。但在基础层面上,共识机制用于验证交易。共识机制如何运作?好吧,这取决于区块链决定使用的模型。共识机制主要有两种类型:工作量证明(PoW)和权益证明(PoS)。什么是工作量证明工作量证明是比特币使用的共识机制。其他使用它的加密货币项目是以太坊1.0、狗狗币和莱特币。它最初由CynthiaDwork和MonyNaur于1992年开发,作为一种防止垃圾邮件的方法。虽然这个模型是最先提出来的,但他们当时并没有称之为工作量证明。相反,它被称为“定价功能”。直到2009年,中本聪创造了比特币,它使用工作量证明作为共识机制。它用于验证交易,并在区块链上创建新区块。从那时起,它已经成长为加密货币项目中??广泛使用的共识机制。工作证明如何运作?网络上的节点将尝试回答困难但易于验证的密码难题——试图解决难题的节点称为矿工。矿工完成一个谜题后,他们会将谜题广播到区块链,以便其他矿工可以验证解决方案。密码谜题的答案是一个称为“NONCE”的随机数,它代表只使用一次的数字。这个数字无法预测,只能猜测。这意味着你必须投入大量时间来寻找NONCE。NONCE一旦与区块中的数据结合,通过哈希函数,就会产生一个符合一系列条件的结果。这是矿工将要验证解决方案是否正确的过程。当一个有效的NONCE与一个区块结合时,它会创建一个区块哈希。然后将其存储在经过验证的区块中,作为矿工工作的证明。然后,块将被创建并添加到区块链中。现在你有证据证明你付出了努力来解决这个难题。因此,您将获得一种称为矿工奖励的加密货币形式的奖励。该奖励只给予最先找到NONCE的人,而不管其他人为解决难题付出了多少努力。工作量证明的能源问题比特币挖矿是一种通过矿工奖励为自己创造被动收入的方式,这就是个人和大公司投资成为矿工的原因。您拥有的计算能力越强,解决密码难题的设备越好,您获得金钱奖励的可能性就越大。换句话说,超级计算机比2008年的戴尔计算机更有可能找到NONCE。这导致比特币网络上使用了大量的能源。它导致环保主义者反对工作量证明共识机制。比特币网络占全球电力消耗的0.66%,占全球能源消耗的0.23%。比特币消耗的电力足够剑桥大学使用1,081年,或者英国所有茶壶使用33年。然而,并非一切都是坏的。比特币网络消耗的海量算力实际上意味着网络更加安全。这是因为,为了攻击区块链,您需要控制网络上51%的计算能力(称为51%攻击)。拥有那么大的计算能力可能要花费数十亿美元,这在经济上是不可行的。什么是“ProofofStake”ProofofStake是Solana、Cardano、Tezos使用的共识机制。它于2011年首次在比特币论坛上创建,作为工作量证明的替代方案,以改善旧共识机制的缺点。2012年,我们看到了第一个采用权益证明的加密货币项目——Peercoin。以太坊2.0将看到区块链从工作量证明转向权益证明。努力做到“更具可扩展性、更安全、更可持续”。与工作量证明方法相比,此方法使用的计算能力要少得多。而且,正因为如此,使用它的项目被视为更环保。权益证明如何运作?Proof-of-Stake的共识机制是锻造区块,而不是像Proof-of-Work方法那样挖矿。在工作量证明项目中,代币被创建作为对矿工的奖励,但在权益证明项目中,交易费用被用作奖励。因此,权益证明项目从出售预挖代币开始,或者最初以工作量证明开始,然后过渡到权益证明。如果你想参与伪造的区块,你必须抵押你的代币。质押过程要求您将代币锁定在网络中,这意味着您不能在此期间使用它们。这是因为如果你是一个坏人,你将受到惩罚,因为你的质押代币被拿走了——使这种行为在经济上可行。质押者,也称为验证者,在工作量证明中扮演着与矿工类似的角色。接下来,使用伪随机选择方法选择验证器。最流行的三种方法是节点财富、币龄选择和随机区块选择。让我们仔细看看每种方法。节点财富简单来说就是,你抵押的代币越多,你被选中验证下一个区块的机会就越大。如果这是选择验证者的唯一变量,那么只有最富有的代币贡献者才能保护网络;使项目不那么分散,更容易受到坏人的攻击。币龄选择将使用此公式根据代币的质押时间选择节点。币龄=抵押天数x抵押币数节点一旦完成出块,其币龄将归零。因此,他们必须等待一段时间才能锻造另一个区块。这可以防止富有的钉子户主宰锻造过程。反过来,使区块链更加去中心化。随机块选择将通过找到具有最低哈希率和最高权益的节点来选择下一个伪造者。值得注意的是,每个使用权益证明共识机制的加密货币项目在选择伪造者时都使用自己的一套规则和方法。回到验证一个区块……当一个节点最终被选出时,它将验证该区块上的交易。每笔交易都使用发送方的私钥进行签名。验证者将使用此密钥找到发送方的公钥和地址。使用此信息,他们将验证发件人是否确实拥有他们想要花费的钱,并且他们不止一次花费了代币(称为双重支出问题)。接下来,哈希函数将经过验证的哈希交易分组到Merkle树中。然后,伪造者使用其私钥对区块进行签名,并将其广播到区块链,供其他验证者(现在称为证明者)证明该区块是有效的。slots和epochs是用来划分时间的。时隙是为创建块设置的时间(在以太坊2.0中为12秒)。纪元是一个更大的定义时间段,通常预示着何时将选举出一组新的验证者(以太坊2.0有32个时隙,大约6分24秒)。通常,每个插槽都会在区块链上生成一个块。但是,如果伪造者未能及时生成块,则这可能是空的。一旦区块被验证并添加到区块链中,伪造节点将获得加密货币奖励。如前所述,这通常来自交易费用。如果证明者证明正确,他也会得到奖励。并非所有的股权证明项目都会遵循这种精确的方法,并对系统进行轻微的调整。委托权益证明一些权益证明项目允许您将您的代币委托给其他验证者,而不是自己设置节点。这降低了获得质押奖励的门槛。个人根据往绩记录和声誉选择将代币委托给哪些验证者。其他因素也可以决定某人委托代币的位置,例如他们是否使用环保能源,是否将一定比例捐赠给慈善机构。工作量证明和权益证明之间的区别好吧,这是一个重要信息。让我们快速总结一下共识机制的差异。工作证明比特币使用它区块被开采矿工解决密码难题需要大量的计算能力来挖掘只有解决难题的人才能获得奖励对环境非常不利权益证明Cardano使用它区块是伪造的密钥签名用于validatetransactionsValidatorsmuststaketheirtokentobeselectedtoforgeblocksvalidatorsandproversarerewarded更环保其他共识机制虽然这是两种最流行的共识机制,但它们并不是唯一的。事实上,就在我们说话的时候,更多的共识机制正在建立中。以下是替代共识机制的一些示例。空间和时间证明这种共识机制允许项目存储数据,而不仅仅是验证交易。本质上,该模型设置了一种将信息放在硬盘上的方法,然后进行随机检查以查看信息是否仍然存在。人们为要存储的信息付费,然后存储数据的人为存储付费。权威证明这是股权证明的更集中的版本。权威证明项目不允许任何人成为验证者,而是选择他们信任的几个节点。这样做是为了更快地处理交易,并进一步减少对环境的影响。唯一节点列表这是Ripple(XRP)使用的共识机制。与权威证明类似,您选择几个您信任的节点。这一次,节点不需要抵押任何东西,他们只需要验证交易。交易被发送到大量节点,这些节点需要签署有效交易。如果一个交易没有得到很多签名,它就被认为是无效的,所以它被丢弃了。共识机制对于保护区块链并使其成为今天的样子至关重要。我们从工作量证明开始,目前正在演变成权益证明,以此作为减少我们对地球危害的一种方式。但这会是其余时间的共识机制吗?或者我们很快会看到另一种进化?