主页 > imtoken钱包转usdt > 科普 | Eth2 验证者生命过程

科普 | Eth2 验证者生命过程

imtoken钱包转usdt 2023-07-11 05:08:02

以太坊 2.0 使用权益证明机制来保护网络,即许多称为“验证者”的计算机线程投票决定哪个区块可以上传到链上(所谓“证明”,作为见证人),当然,他们会提出自己的替代区块。 然而,验证者不仅仅有“开”和“关”两种状态:他们的状态在其整个生命周期中经历了从成为验证者到成为验证者的多次转变。 本文深入探讨了验证器的生命周期,展示了阶段和转换过程的本质、如何触发转换以及每个转换需要多长时间1。

先解释一下时间单位

以太坊 2.0 中的时间通常以“纪元(period)”为单位来衡量。 一节是384秒,也就是六分半钟。 为了便于理解,我将基于此测量的时间转换为分钟、小时和天,并在附录的脚注中提供了详细信息。

验证者生命周期概览

在深入细节之前,让我们看一下验证器生命周期的概述,并了解用于描述不同状态的术语。

以太坊的私有链_以太坊上链_如何在以太坊上获得私链代币

- 图 1:验证器生命周期概览 - 每个选项卡中显示的阶段如下:

由此也可以定义一个基本状态:“证明”、激活、自愿退出、完全退出都属于这个状态,处于这个状态的验证者期望见证和提议区块。 这个状态是最重要的。 在这种状态下,验证者需要连接到以太坊 2.0 网络并同步数据,以履行自己的职责,避免受到惩罚。

以太坊的私有链_如何在以太坊上获得私链代币_以太坊上链

- 图 2:“见证”状态 - 定义了阶段后,让我们详细检查它们之间的转换。

如何在以太坊上获得私链代币_以太坊的私有链_以太坊上链

保证金存入阶段

接受保证金提议是验证者职业生涯的开始; 这个接受过程发生在以太坊 1.0 链上,因为验证者资金最初是放在以太坊 1.0 链上的。 但是当1.0链接受时,2.0链还不能感知到押金。

验证者的保证金存入阶段大约需要 7.5 小时2,以确保链重组影响 Eth1 交易顺序和使保证金报价无效的概率足够小。 该阶段完成后,验证人进入等待激活阶段3。

-图3:从充值充值阶段到等待激活阶段-

等待激活阶段

存款在 Eth1 链上存放足够长的时间后,将被 Eth2 链接受。 这标志着验证者正式开始接受 Eth2 作为一个组织。 假设一个验证者存入了至少 32 个 ETH 4,那么 TA 就可以开始见证了。

等待激活的验证人会形成一个队列:在某个时间点,Eth2 链上可以激活和退出的验证人数量是比较少的(所以需要排队) 5 以保证稳定验证器集。 如果队列为空,等待激活的验证器将在大约 25 分钟后激活6; 如果队列很长,则可能需要数天甚至数周才能激活。 但在排队后,验证者可以直接激活并参与见证。

- 图 4:从等待激活到激活阶段 -

以太坊上链_以太坊的私有链_如何在以太坊上获得私链代币

活动阶段

通常,验证器的大部分时间都花在这个阶段。 活跃的验证者大约每 6 分钟发布一次证明,并且偶尔会自己提议区块 7。 除非发生以下三种情况之一,否则验证者将保持活动状态:

前面两种情况,都会将验证者加入退出队列(一段时间内能离开活跃状态的验证者数量也是有限制的,就像能进入的验证者数量也有限制一样,大约每1个几分钟)个人)。

- 图 5:从 Activation 到 Leaving - 在第三种情况下,验证将被添加到作恶者队列中并受到惩罚。

- 图 6:从活跃状态到削减状态 - 值得注意的是,如果需要,验证者总是可以发送额外的债券报价(具有相同的验证者信息)以“充值”余额(但有效余额的上限为 32 ). 如果余额低于 16,这将防止验证者被放入退出队列。

即将到来的退出阶段

自愿退出的验证者虽然表示愿意停止验证(无论是自愿还是被迫),但不能立即退出。 相反,在 exiting 状态下,他们仍然必须像往常一样承担自己的职责,像在 active 状态下一样见证和提议区块。 这样既保证了网络的稳定性,又避免了验证者立即退出带来的影响。

就像一个验证者想要激活时,有一个等待激活状态和一个队列,想要退出的验证者也有一个队列,并且在一段时间内只允许少量的验证者退出。 同样,自愿退出阶段所需的时间取决于有多少验证者在前面排队。

以太坊上链_如何在以太坊上获得私链代币_以太坊的私有链

- 图 7:从退出到完全退出 -

没收状态

如果验证者违反协议后被抓到,他会立即被罚款1 ETH(从他的余额中扣除),然后进入罚款状态,类似于即将退出状态,但他也会受到惩罚。 这将在下面的“完全退出”部分中讨论。

- 图 8:从被 slashing 到完全退出 - 即将离开甚至完全退出的验证人可能会被 slashing(验证人完全退出之前有一段时间可以提取资金,在此期间可以被 slashing) . 这可以防止恶意验证者在发现恶意之前使用正常的退出机制逃跑。 结果是一个更复杂的状态模型:

以太坊的私有链_如何在以太坊上获得私链代币_以太坊上链

- 图 9:补充没收条件后 -

完全戒掉

当过渡到完全退出状态时,验证者正式结束工作,不再需要见证和提议区块,也不再需要跟上 Eth2 区块链的实时动态。

以太坊上链_以太坊的私有链_如何在以太坊上获得私链代币

切换到 completed exit 状态后,大约有一天的延迟 8 才能提取验证者余额。 但是,如果验证者完全退出 slashed 状态,则会有两个额外的惩罚。

首先,从完全提款到能够提款之间的时间要长得多,需要 36 天9。 第二项,在这36天的时间里,系统会根据验证者被抓作恶前后18天内被没收的验证者数量,对验证者进行进一步的处罚。 那么验证者的有效余额损失率为10,如下图所示:

以太坊的私有链_如何在以太坊上获得私链代币_以太坊上链

- 图10:被罚没有效余额与同期被罚没验证者占比的关系——36天周期结束后,被罚没验证者的剩余余额可被带走。

从这个生命流程图中可以看出,完全退出的验证器没有额外的机制来重新激活。 因此,一旦验证者退出,其资金将处于休眠状态,等待验证者前来退出。 但是,在 Eth2 Phase 0 期间,资金无法转移——因此所有已完全退出的验证者的资金都保留在质押系统中,直到启用转移功能。 没有转账功能,因为还没有引入用户账号模型。

补充验证者生命过程

将上面的所有细节添加到流程图中可以得到完整的图片:

如何在以太坊上获得私链代币_以太坊的私有链_以太坊上链

如何在以太坊上获得私链代币_以太坊上链_以太坊的私有链

- 图 11:补充验证人生命流程图 - 请仔细查看补充条件、每个阶段的持续时间以及转换过程。 这些细节对于 Eth2 验证设施的成功运行至关重要。 从初始化押金到提取押金,这张生命流程图指出了每个阶段可能发生的事情以太坊上链,也为验证者时刻的表现提供了清晰的解释。

注1:需要注意的是,以太坊2.0的规范并没有明确的状态机,所以为了描述方便,作者给出了各个阶段的名称。

注2:1024个以太坊1.0区块的时间加上以太坊2.0的32个周期。

注3:这里假设验证者存入了足够的32 ETH。 如果不够,验证人将停留在保证金存入阶段,直到验证人发起另一次保证金交易,使其余额超过 32 ETH。

注4:如果少于32个ETH,也可以再存入一笔,增加验证人的余额。

注5:每期有(活跃验证人数+自愿退出验证人数+没收验证人数)/63356名额,下限为4名。

注6:即4个周期的长度。

注7:每个验证者需要在一个周期内的某个时间段(slot)发出见证消息,在每个时间段内以太坊上链,会随机选出一个验证者作为区块提议者。

注 8:256 期。

注 9:8192 期。

注10:请注意,罚没的最高惩罚为有效余额的100%,但有效余额上限为32 ETH,与验证者实际余额无关。