主页 > imtoken区块链钱包官网 > 【区块链科普】以太坊2.0系列之二——区块输出与确认

【区块链科普】以太坊2.0系列之二——区块输出与确认

imtoken区块链钱包官网 2023-05-21 05:39:28

以太坊区块生成时间_以太坊是如何确认区块的_以太坊区块链高度

在上一篇文章中,我们概述了以太坊 2.0 是什么以及它的主要改进。 在本文中,我们将重点介绍以太坊 2.0 的运行机制。

插槽和时代

*以太坊2.0中有两个重要的时间概念:slot和epoch。 *

****

以太坊区块链高度_以太坊是如何确认区块的_以太坊区块生成时间

一个时隙是 12 秒。 在每个时隙中,信标链和分片可能会增加一个新的区块,即系统在理想状态下运行时,每12秒有一个信标(链)块和区块。 生成 64 个分片块。

为了便于理解,我们可以把slot看成是以太坊2.0的出块时间。 不同的是,时隙中可能没有块,最理想的情况下会产生65个块。

每个纪元由 32 个时隙组成,总共 384 秒或 6.4 分钟。

验证者和委员会

作为具有 PoS 机制的区块链,以太坊 2.0 信标链的运行依赖于验证者和委员会。

一个委员会由一组验证者组成。 一个验证者在一个纪元内只能参加一个委员会。 在每个时期,验证者均匀分布在时隙中。

洗牌算法会及时调整每个时隙的委员会数量,保证每个时隙(信标链和每个分片)的委员会至少由128个验证人组成。 攻击者控制委员会中 2/3 验证者的机会不到万亿分之一。

以太坊区块生成时间_以太坊是如何确认区块的_以太坊区块链高度

如图所示,下方蓝色一行代表数千个验证者。 RANDAO算法在验证者中选出每个时隙的提议者,并将验证者分配给每个时隙,组成委员会。 ).

验证者相当于以太坊2.0中的虚拟矿工,验证者的生命周期大致可以分为三个阶段:

1)激活:当用户在以太坊主网的存款合约中质押32个ETH时,将激活一个验证者。

2)失效:当验证者的有效余额低于16 ETH时,信标链将停止这些验证者的工作。 此外,验证人也有可能因为行为不当而被罚没,导致暂停运营。

3)退出:工作2048个epoch(近9天)后,验证人可以自愿选择退出。 退出时,stakers 需要等待 4 个 epoch 才能撤回他们的 stake。 在这 4 个 epoch 内,验证者仍可能面临举报和罚没。

验证人的职责包括区块生产、LMD GHOST 投票和 Casper FFG 投票。

信标链通过伪随机算法RANDAO实现共识。 算法会根据验证者有效余额的权重选出一个区块提议者,其余验证者负责投票。

所有验证者都必须在他们的插槽中投票选出信标链的领导者。 这个过程称为 LMD GHOST 投票。

在发起一次 LMD GHOST 投票的同时,验证者还会投票给最新的 epoch checkpoint(target checkpoint target)和之前的 epoch checkpoint(source checkpoint source)。 此投票称为 Casper FFG 投票。

为了便于理解,我们可以粗略地将 LMD GHOST 投票比作地方选举,将 Casper FFG 投票比作全国选举。

LMD GHOST & 卡斯帕 FFG

LMD GHOST的全称是Last Message Driven Greediest Heaviest Observed SubTree。 最新消息驱动的GHOST是以太坊2.0使用的分叉选择规则。

我们都知道,比特币等采用PoW机制的区块链在遇到分叉时会遵循最长链规则,即算力支持最高、出块速度最快的方案将被认为是权威链。 以太坊 2.0 的最终性由最新消息驱动,得票最多的分叉链将被视为权威链。

以太坊区块生成时间_以太坊区块链高度_以太坊是如何确认区块的

上图是一个例子,笑脸代表验证者的证明,虽然顶链是最长的链以太坊是如何确认区块的,但是因为绿链获得了最多的验证者证明,所以绿链是权威链。

Casper FFG 的全称是 Casper the Friendly Finality Gadget(Casper friendly finality tool)。 是V神提出的一种PoW/PoS混合算法,目的是让以太坊从PoW平滑过渡到PoS。

有效平衡

众所周知,权益证明(PoS)类似于现实中的股权制度。 持有更多代币的节点有更高的权利享受更多的网络奖励。 这种“富者愈富,穷者愈富”的机制存在一个问题。 越穷越穷”,以太坊 2.0 引入了有效平衡的概念。

有效余额是根据每个验证人的当前余额和上次有效余额计算得出的,它决定了每个验证人的投票权重和可以获得的奖惩金额。

有效余额遵循三个规则:

1、有效余额不能超过32个ETH。

2、有效余额只能是1ETH的倍数,小数点忽略。

3. 只有当实际余额高于有效余额1.5ETH时,有效余额才会增加。

以太坊区块链高度_以太坊是如何确认区块的_以太坊区块生成时间

以上图为例,蓝线为实际余额,绿线为有效余额。

一种。 在时间 3,验证者的余额降至 32 ETH 以下。 根据第二条规则,有效余额从 32 ETH 下降到 31 ETH。 奖惩的多少由有效量决定,因此奖惩变小。

b. 在时间 5,验证者的余额低于 31 ETH。 根据第二条规则,其有效余额从 31 ETH 下降到 30 ETH,奖惩进一步减少。

C。 在时间 9,验证者的余额增加到 31 ETH,但没有达到第三条规则中提到的标准,因此有效余额不会增加,奖惩不变。

d. 在时间 17,验证者的余额增加到 31.5 ETH。 根据第三条规则,有效余额从 30 ETH 上升到 31 ETH,奖励和惩罚变大。

检查点

以太坊 2.0 中的检查点是位于 epoch 第一个时隙的块,每个 epoch 都会有一个检查点块。

****

如果一个应该是checkpoint的slot没有产生block,那么这个checkpoint就是最新的一个block forward,所以一个block可能同时是多个epoch的checkpoint。

以太坊区块生成时间_以太坊是如何确认区块的_以太坊区块链高度

以上图为例,slot 64的块是epoch 1的checkpoint以太坊是如何确认区块的,epoch 2的checkpoint本来应该是slot 128产生的块,但是由于slot 65和slot 128之间没有块,所以epoch 2 的检查点是从 slot 128 开始的第一个区块,也就是 slot 64 的区块。

类似地,对于 epoch 3,没有在 slot 192 生成块,因此 epoch 3 的检查点是在 slot 180 生成的块。

证明与确认

上面说的是以太坊2.0的区块生成机制,那么区块是怎么确认的呢?

首先明确引入三个定义:

1)绝对多数:绝对多数是指投票得到所有活跃验证者总有效余额的2/3支持。

2) 证明:一个epoch结束后,如果checkpoint获得2/3的balance票数,即形成绝对多数,则checkpoint合法。

3)Finalization:如果检查点A已经被证明,并且其下一个epoch的检查点B也被证明,则检查点A被最终确定。

以太坊区块生成时间_以太坊是如何确认区块的_以太坊区块链高度

我们可以通过一个例子更直观的理解区块确认,如上图所示:

1. 在slot 96产生一个新的块,标志着epoch 2的结束。这个块存储了对epoch 2检查点的投票(即在slot 64的块);

2、信标链检查epoch 2检查点(即64号槽的区块)是否已经获得超过2/3的验证者的证明; 所有块都是合理的;

3. 如果 epoch 2 检查点(即 slot 64 的块)被证明,则 epoch 1 检查点(即 slot 32 的块)和所有先前被证明的块被最终确定。

参考文章

[1] 风气。 你需要先看的信标链以太坊2.0讲解员

[2] 公证人。 了解验证者有效余额

[3] 布鲁诺·斯科沃尔克。 两点哦:理由和定案

以太坊是如何确认区块的_以太坊区块链高度_以太坊区块生成时间

以太坊区块链高度_以太坊是如何确认区块的_以太坊区块生成时间

如何下载ViaWallet

以太坊区块链高度_以太坊是如何确认区块的_以太坊区块生成时间