Address
304 North Cardinal St.
Dorchester Center, MA 02124

Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM

质押和安全:以太坊打造更强大区块链的方式

首页 » Blog » 质押和安全:以太坊打造更强大区块链的方式

以太坊是市值第二大的加密货币,它采用独特的双重共识机制,结合了两大主要共识方法家族的优势:最长链模型和 BFT(拜占庭容错)模型。在这篇博客中,我们将深入研究以太坊权益证明共识的细节,探讨其组成部分、质押、削减的作用以及两种共识方法:GHOSTCasper

拜占庭容错是一项巧妙的功能,即使在某些参与者行为不当或不诚实的情况下,也可以帮助分布式系统(例如区块链网络)顺利工作。它确保即使存在故障或不良行为者,系统仍然可以达成协议并保持安全。这使得网络可靠并能够应对挑战,同时保持参与者之间的信任。

为了实现拜占庭容错,使用了实用拜占庭容错(PBFT)和 Tendermint 等共识算法。这些算法需要一定比例的诚实参与者(通常称为“拜占庭容错阈值”)就交易的有效性以及交易添加到区块链的顺序达成一致。

质押是指在网络中拥有一定数量的代币,这些代币是有价值的且不易复制,类似于创建工作量证明哈希的难度。为了证明您在以太坊中的权益,您需要将 32ETH 以及您的公共地址和提款地址发送到一个智能合约,该合约可跟踪所有权益验证者。当您使用验证者的私钥签署某些内容时,其他人可以检查智能合约并验证您是否使用 32ETH 进行质押。该签名成为您的权益证明

在以太坊中,与其他一些权益证明协议不同,质押需要锁定您的代币,以确保验证者致力于网络的安全。削减就像是对以太坊中行为不端或试图欺骗系统的验证者的惩罚。验证者是帮助保持网络安全并就新交易达成一致的人。

如果验证者做了一些不诚实的事情,例如签署冲突的交易或在应该工作时离线,他们可能会损失一些钱(代币)。这种损失称为削减。削减是必不可少的,因为它鼓励验证者诚实并遵守规则。如果没有惩罚,一些验证者可能会试图作弊或违背网络的最佳利益,这可能会给使用以太坊的每个人带来问题。

通过实施削减,以太坊确保验证者有充分的理由成为优秀的参与者,并为所有用户保证网络的安全和可靠。它有助于维持对以太坊区块链的信任和信心。每个验证者必须抵押32ETH 的原因是为了让每个签名具有同等的价值。在去中心化共识方法中,所有签名都需要平等对待,以便于计票。

以太坊使用两种主要的共识方法:GHOST 和 pBFT。对于名为 GHOST 的默认共识方法,它使用最长链模型的变体。区块链中每个添加的区块就像是对您想要赢得的分叉分支的投票。然而,传统的最长链模型有时会导致验证者的投票计数不正确的情况。

质押和安全:以太坊打造更强大区块链的方式

使用传统的最长链模型

在这个例子中,我们可以看到一个分叉,分叉的一侧有 2 个块长,另一侧添加了 3 个块,但它们都引用同一个块,因此如果我们使用正常的最长链规则,则只有 1 个块长,那么顶部的分支将成为赢家,因为它是最大的链,但是,这真的是我们想要的吗?顶部分支只有 2 个验证者投票,而 3 个验证者投票给底部分支,所以底部分支不应该获胜吗?由于 3 个验证者都引用同一个区块,因此使用传统的最长链规则,他们的 3 票仅算作 1 票。

质押和安全:以太坊打造更强大区块链的方式

区块验证的证明

GHOST稍微改变了模型,以便将分叉中的每个块都算作投票,即使它们是冲突块并且不是最长链的一部分。这意味着在 GHOST 下,底部分支将获胜,因为与顶部分支相比,有更多验证者投票支持它。新块将添加到三个底部块之一而不是顶部叉子。

在以太坊中,大约每 12 秒就会向区块链添加一个新区块。验证器节点有很多,大约 40 万个,但它们并不需要对每个区块进行投票才能确保安全。等待所有人对每个区块进行投票将需要很长时间。

相反,以太坊有一种聪明的做事方式。如果大量验证者(例如 10%)对某个区块进行投票,则该区块被认为是安全的且不太可能被逆转。这种实用的方法可确保网络高效、安全地运行,而无需等待所有验证者对每个区块进行投票,这会太慢。

因此,尽管有很多验证者,以太坊只需要其中的一小部分对一个区块进行投票,以确保事情的安全性。这样,区块链就可以为所有用户快速、安全地向前发展。

引入了一种称为“证明”的新方法来改进共识过程并使其更加高效。验证者现在可以通过提供证明来支持现有块,而不是总是创建新块。

以太坊中的“证明”意味着验证者表明他们对区块链上特定区块的支持。验证者不是创建新区块,而是通过数字签名提供批准来投票支持现有区块。这些投票称为证明,有助于验证者之间达成一致并维护网络的安全。证明允许验证者有效地参与共识过程,而无需自己创建新块。

质押和安全:以太坊打造更强大区块链的方式

遵循最长的链条!幽灵共识

当区块链有多个分支(或分叉)时,获胜分支是根据通过证明投票的验证者数量来确定的,而不仅仅是链的长度。拥有最多证明的分支成为获胜链,并向其中添加新块。

“纪元”是一个固定的时间段,大约 6 分 24 秒,在此期间发生特定的操作和事件。它用于组织共识过程并有效管理验证者的参与。在每个纪元中,验证者被分成委员会,轮流对区块进行提案和投票,以确保区块链网络的顺利运行。

为了管理大量验证者(大约 400,000 个),以太坊将时间划分为“纪元”,每个纪元持续约 6 分 24 秒。在每个 epoch 内,所有验证者被随机分组​​为委员会,每个委员会负责一个时段。

在一个时期内,每个委员会的第一位成员被指定为区块提议者,负责建议一个新区块。委员会中的其他验证者通过为提议的区块提供证明来发挥自己的作用,表明他们同意该区块。

需要注意的是,验证者每个 epoch 只能提供一个证明;尝试提供多个将导致惩罚(削减),因为它可能会破坏共识过程。如果指定的区块提议者未能在指定的时间段提议区块,委员会中的其他验证者将投票支持前一个区块,以确保链顺利进行。

这种创新方法简化了以太坊的共识流程,使其更快、更有组织。验证者在每个时期有效参与,为网络的安全性和整体稳定性做出贡献。

区块提议者提议的区块是否可以以 0 个证明添加到区块链中?

是的,可以添加,但是具有更多证明的区块被认为更可靠,并且可能成为最终链的一部分。

每个区块上附加大约 12,000 个签名以确保其安全性也会占用大量空间。然而,实际签名数量根据网络中活跃验证者的数量而变化。

为了提高签名存储效率,以太坊使用BLS (Boneh-Lynn-Shacham)签名。BLS 签名允许将数百个签名组合成一个紧凑的签名,从而节省区块链上的空间。

为了管理大量的验证者,以太坊将它们分为更小的组,称为委员会。每个委员会又分为 64 个子网,每个子网中有大约 100 个验证人。在每个子网中,随机选择 16 个验证者来为他们提议的区块创建 BLS 签名。

区块提议者从每个子网收集最佳签名,并将它们组合成一个最终的 BLS 签名。这个单一签名代表参与该区块的所有验证者。

保持委员会选择的随机性对于防止攻击和确保公平的区块创建至关重要。它有助于确保没有任何一方可以控制区块提案过程,从而增强网络的去中心化。

每个区块的签名数量众多,是以太坊将质押最低要求设置为 32ETH 的原因之一。降低质押要求将进一步增加签名数量,需要更高的节点规格或改进的聚合技术。

此外,BLS 签名在向协议引入随机性方面发挥着至关重要的作用。确保委员会的不可预测性和随机性对于防止攻击者试图操纵随机性并成为唯一的区块提议者(可能会审查交易)至关重要。

通过使用 BLS 签名并将验证者组织到委员会和子网中,以太坊可以有效地处理具有数千名参与者的区块,同时确保安全性并防止中心化。这种方法使以太坊网络更加健壮并且能够抵抗恶意攻击。

验证者使用一种名为 randao 的方法分配给委员会,参与者协作创建不可预测的随机数。每个验证者私下选择一个随机数,对其进行承诺,然后公开它。这些随机数混合在一起产生最终的随机数,该随机数决定下一个时期验证者委员会的分配。

为了确保不可预测性,验证者使用他们的私钥(而不共享它们)来签署区块,产生唯一的数字签名。这些签名使用BLS 签名进行混合,以创建用于委员会分配的最终随机数

验证者有动力参与并质押他们的 ETH,因为他们可以获得奖励。提出区块会带来较大的奖励,而进行证明则会带来较小的奖励。验证者的奖励取决于其及时性以及与其他验证者投票的共识。

当以太坊完全过渡到权益证明时,发行率和奖励就会变得可变,并取决于抵押的 ETH 数量。每年的奖励可能在 0.54% 到 0.94% 之间,大多数验证者预计每年的收入约为 5%。这种激励系统确保验证者积极参与网络,保护区块链并维持其可靠性。


正如我一开始提到的,以太坊有两种共识方法。GHOST 是安全的,那么为什么还需要第二个呢?虽然 GHOST 遵循最长链获胜模型,但友好的最终确定性小工具 Casper 使用不同的方法,称为BFT(拜占庭容错)。这两种方法都有其优点,以太坊可以在没有 Casper 的情况下运行,但具有最终性是一个有价值的补充。简单来说,以太坊使用两种方式就区块达成一致,而 Casper 确保区块何时成为官方链的一部分的确定性。

在以太坊中,Casper共识机制提供“拜占庭容错”(BFT),以确保网络的安全性和验证者之间的一致性,即使存在恶意或故障节点。BFT 模型通常需要验证者进行两轮投票才能做出最终决定。

在第一轮中,验证者承诺投票,表明他们对特定区块或分叉的选择。在第二轮中,他们实际提交投票,并根据多数决定来确定共识。

进行两轮至关重要,因为只需一轮,攻击者就可以通过向不同方告知不同的内容来操纵网络,从而导致共识分裂。因此,第二轮可确保验证者履行其承诺的投票并防止此类操纵。

在以太坊中,一个纪元可以被视为一轮 BFT 投票,因为所有验证者都会在一个纪元内进行投票。然而,单个纪元可能不足以实现最终结果,因为分叉可能双方都有相同的投票,攻击者对双方进行双重投票。这种情况可能会导致两个分叉都拥有超过 67% 的选票,从而无法确定哪个分叉是有效的。

为了解决这些问题,以太坊通过削减来惩罚不诚实的验证者。如果攻击者在一个 epoch 内进行双重投票,他们将受到严厉惩罚(削减),如果他们的权益低于某个阈值(16ETH),甚至可能被从权益合约中踢出。此外,如果验证者的投票不足以达成所需的 67% 协议,他们也将因不活跃而受到惩罚,直到再次达到阈值。

Casper 不一定需要达到以太坊的最终功能才能运行。网络可以使用 GHOST 协议继续运行,该协议提供了概率终结性。这意味着即使三分之一的验证器离线,以太坊也不会崩溃或冻结,这与某些仅依赖于基于 BFT 的共识模型的协议不同。然而,在使用权益证明时,存在一种称为“远程攻击”的已知攻击。

在“远程攻击”中,攻击者在一段时间内质押大量 ETH,然后停止质押。他们在停止质押之前创建了一个秘密分叉,在那里他们继续质押并积累区块奖励。然后攻击者与其他节点共享这条隐藏链以接管网络。

为了防御这种攻击,主要的解决方案之一是为新节点或已经离线一段时间的节点引入一个称为“主观性”的概念。当这些节点加入或重新加入网络时,它们需要向其他节点询问诚实链中最新区块的标识符。这有助于他们弄清楚要遵循区块链的哪个分支。

通过询问此标识符,节点可以确保它们位于正确的链上,并避免遵循攻击者创建的秘密操纵的分叉。这增加了信任级别并有助于防止远程攻击。惩罚和主观机制有助于维护区块链的完整性并防止潜在的攻击。

以太坊中的验证者在每个时期被随机分成委员会,每个委员会负责在指定的时间段内添加区块。验证者必须在他们的时间段内对一个区块进行证明,并且证明最多的链将成为获胜分支。

为了确保以太坊区块链安全可靠,需要连续两轮获得至少 67% 的验证者同意。如果未达成此协议,区块链将继续运行,并存在一定的不确定性,行为不当的验证者将受到惩罚。

与其他假设 51% 验证者是诚实的系统不同,以太坊采取了更为谨慎的方法(它假设大多数验证者都是出于经济动机,而不仅仅是诚实。这意味着他们有充分的理由行为正确,不参与有害行为。它补充道通过考虑潜在的攻击和自私行为,提供额外的安全级别,使系统更安全、更可靠)。它假设大多数验证者都是出于经济动机,这意味着他们有充分的理由采取适当的行动。这样,它可以防止可能损害网络的潜在攻击和自私行为。

这种额外谨慎的原因是,诚实多数假设可能无法捕获贿赂验证者或操纵区块链以获取利益的攻击者。很难确定贿赂某人所需的确切金额,因此很难保证完全的安全。通过谨慎对待经济动机,以太坊成为每个人都更安全、更值得信赖的平台。

为了应对这些潜在的攻击,以太坊实施了削减。削减是一种对不诚实的验证者施加严厉惩罚的机制,使得这种行为在经济上不可行。这极大地阻止了不诚实行为并增强了网络的安全性。这种方法使以太坊成为最安全的基于权益证明的共识方法之一,因为它积极防范许多其他权益证明协议忽视的攻击。

综上所述,以太坊通过将最长链获胜模型与基于拜占庭容错(BFT)的共识模型相结合,实现了高水平的安全性。这种组合产生了一个强大的协议,它既具有最长链的优点,又能够通过 BFT 机制实现最终确定。虽然该协议很复杂,并且与完全基于 BFT 的共识相比可能更容易出现错误,但它在最长链获胜模型中仍然高效执行。以太坊优先考虑安全性和去中心化,建立高度安全的基于权益证明的共识方法。

以太坊的共识机制是速度、安全性和去中心化的巧妙结合。它经受住了时间的考验,仍然是推动去中心化革命的关键组成部分。

-END-