主页 > imtoken浏览器可以下载 > 以太坊2的硬核详解

以太坊2的硬核详解

imtoken浏览器可以下载 2023-08-31 05:08:47

编译:夏天

首先,让我们试着理解什么是最终性。 【注:也有将finality翻译成“确定性”的译法】

您一定已经注意到,加密货币平台和 Dapps(去中心化应用程序)通常会等待几个区块完成,然后才会将您的交易视为“已确认”。 这是一种确保交易已经“几乎”确定,或者交易“几乎”不可逆,即交易已经“敲定”的方式。

以太坊 2.0 可以提供最终性保证,这是以太坊区块链中铭记的客观事实,而不是一种“接近”的状态。 这非常重要,因为它可以实现更快的链上通信,即如果一个块刚刚完成,则该块将不必等待多次确认。

也就是说,基于工作量证明的区块链(例如比特币)从未包含使交易真正具有最终性的功能; 而以太坊 2.0 链旨在提供比工作量证明更强大的最终性保证。

让我们更具体一点。 先看几个定义:

基于以上信息,我们继续讨论Justification(证明)和Finalization(终结性)。

卡斯帕FFG

以太坊转pos后怎么挖矿_以太坊转pos后有分叉_2019以太坊分叉时间

Casper 是一种证明和最终确定区块的方法(无论它们是在一般区块链平台或以太坊 2.0 链中的时代期间产生的区块)。 Casper 是一个通用的“小工具”,可以添加到任何需要实现最终确定性的区块链中,但 Casper 在 PoS 区块链中最为有用。

以太坊 2.0 中的 Finality 是系统确定不会有两个竞争的、最终​​确定的检查点的概念,当这种情况发生时以太坊转pos后有分叉,至少三分之一的活跃验证者 Violators 将被削减。 我们称之为经济终结。

你可能想知道,为什么三分之一的验证者会被罚没? 我们知道,在以太坊2.0系统中,三分之二的验证者必须是诚实的验证者才能参与验证(也就是投票),所以如果系统中有两个竞争最终确定的检查点,那么就意味着有两个- 三分之二的验证人投票给其中一个检查点,同时三分之二的验证人投票给另一个检查点,即至少有三分之一的验证人投票给这个检查点。 如果两个检查点都投了票,这些验证者将被系统视为恶意验证者,并进行相应的罚没。

对于验证者来说,最大的好处来自正确确定信标状态,而不是进行不当的恶意操作。

那么“finalized checkpoint”中的“finalized”是什么意思呢? 在解释这个之前,我们需要先解释一下什么是“证明(proof)”。

证明是验证者通过对检查点进行投票来决定哪个检查点是信标链的顶部块。 如果三分之二的验证者(即绝大多数验证者)在连续的两个epoch上达成共识,那么连续的两个epoch是有道理的,前一个epoch被认为是finalized(最终确定的)。

注意:为了便于理解,以上定义已大大简化。 还涉及许多其他因素,但这超出了本文的范围。

2019以太坊分叉时间_以太坊转pos后有分叉_以太坊转pos后怎么挖矿

因此,一个“最终确定”的时代实际上是一个“已证明”的时代,有一个关键的区别——当某件事被“证明”时,你仍然可以回到过去并对其进行反驳; 但是当你“封印”了一些东西之后,历史就变得很难改写了。

换句话说,如果某件事被“定型”,那一定意味着它被“证明”了以太坊转pos后有分叉,而“被证明”了并不一定意味着它被“定型”了。

需要注意的是,当验证者证明或最终确定一个纪元时,并不意味着验证者在对纪元本身进行投票,而是验证者在对纪元期间的“内容”进行投票/验证。 它是每个纪元中最后一个时隙(即检查点)的状态根。

因此,验证者通过投票来证明/最终确定纪元,这就是验证者对以太坊区块链最新已知有效状态进行投票的方式。

陆战队幽灵

这就是分叉选择规则发挥作用的地方。

GHOST 实际上是 PoW(工作量证明)和其他区块链平台上非常流行的协议。 GHOST 协议遵循“最重”的子树,即最长的链。

以太坊转pos后有分叉_2019以太坊分叉时间_以太坊转pos后怎么挖矿

在比特币区块链中,“最重”的分支是将最多算力放入其区块中的链,也就是最长的链。 显然最长链就是我们所说的“规范链”,但是这条链还是有可能切换到另一条分叉链上的(虽然可能性很小),所以最长链的最终确定性是概率性的。

LMD 让“消息”发挥作用,即以太坊 2.0 链上的最终确定性“由最新消息驱动”。 消息即证明,归结为得票最多的分叉链将被视为“权威链”。

硬核详解以太坊 2.0 如何实现最终性:分叉规则 LMD GHOST 与 PoS 机制 Casper FFG

上图为最新消息驱动的分叉选择规则:绿色区块表示LMD GHOST分叉选择规则证明的区块,笑脸符号表示最新的验证者证明(attestations),证明总量(笑脸总数)是块的权重,用块中的个数表示。

上图中,虽然最上面的分叉链是最长的链,但是最下面的绿色区块组成的链才是“权威链”,因为绿色区块包含的证明最多,也是权威链。 也就是说,拥有最多的验证者投票。

加斯帕

在以太坊 2.0 链中,Casper 和 LMD GHOST 共同构成了驱动以太坊 2.0 系统的共识协议。

以太坊转pos后有分叉_2019以太坊分叉时间_以太坊转pos后怎么挖矿

让我们看一下以太坊研究员 Justin Drake 在 EthCC 会议上关于 Eth2.0 的演讲中的这张幻灯片。

硬核详解以太坊 2.0 如何实现最终性:分叉规则 LMD GHOST 与 PoS 机制 Casper FFG

幻灯片 1

上图中,两个虚线框显示了叉子选择中的非法情况。 上图左边的虚线框表示,如果同时投票给两个不同的state roots,是非法投票,即不能同时投票给两个不同内容(state roots)的epoch。

右上角的虚线框表明你不能跳过某些时期并为后面的时期投票。 换句话说,您不能在为当前候选纪元投票之前为未来纪元投票。

上图下半部分是两条最终确定的分叉链。 红点表示的第一个和第二个epoch,就是已经敲定的“权威链”,因为这两个epoch之后是第三个和第四个(红点表示的)epoch。 但是,第三个和第四个epoch存在于两条平行的分叉链中,那么这两条分叉链中的哪一条属于“权威链”呢?

我们来看第二张幻灯片。

2019以太坊分叉时间_以太坊转pos后怎么挖矿_以太坊转pos后有分叉

硬核详解以太坊 2.0 如何实现最终性:分叉规则 LMD GHOST 与 PoS 机制 Casper FFG

幻灯片 2

综上所述,同时投票给内容不同的两个epoch是违法的。 在slide 2的下半部分包含两个分叉链的情况下,上分叉链中的两个epoch(红点)已经完成(finalized),所以看起来上分叉链是有效的; 但是下面的分叉链也包含了两个已经敲定的epoch,只不过那两个epoch是后来敲定的!

硬核详解以太坊 2.0 如何实现最终性:分叉规则 LMD GHOST 与 PoS 机制 Casper FFG

幻灯片 3

这意味着下面的分叉链是一个无效的分叉,因为如果投票遵循下面两个最终确定的 epoch,这将意味着一个新投票的 epoch 将跟随来自另一个分叉链的 epoch。 这是非法的,因为最终确定的检查点必须按时间顺序排列。 如果发生这种情况,大量验证者将受到严厉惩罚,因为大多数验证者投票给了一条“非法链”上的一个纪元。 因此,这些验证者必须受到惩罚。

就是这样! 如果您是验证者,请确保您在每个时隙期间只投票一次,并确保您投票的是其他人投票的内容。 以免被没收! (不用担心,这些都会内置到你使用的以太坊2.0客户端中)

希望这篇文章能让您更清楚地了解理由和终结。 如果您仍然不清楚对方,请告诉我(Twitter @bitfalls)! 非常感谢 Dustin Brody、Mamy Ratsimbazafy、Justin Drake 和 Danny Ryan 对本文的帮助!

来源链接:mp.weixin.qq.com