Dencun升级之二:EIP7044/7045
在本系列的第一部分,我们探索了以操作码为中心的 EIP(EIP-5656 和 EIP-6780),现在我们将注意力转向两个以质押和验证者为中心的升级:EIP-7044 和 EIP-7045。
一键发币: SOL | BNB | ETH | BASE | Blast | ARB | OP | POLYGON | AVAX | FTM | OK
在本系列的第一部分,我们探索了以操作码为中心的 EIP(EIP-5656 和 EIP-6780),现在我们将注意力转向两个以质押和验证者为中心的升级:EIP-7044 和 EIP-7045。 第 1 部分重点关注以太坊执行层的细微代码更改和技术改进,而该系列的第 2 部分(本文)则探讨了计划在 Cancun-Deneb 分叉中激活的以太坊共识层的变化。
这些变化被公平地描述为对验证器操作的改进,只有在合并后的几个月里事后看来,这些改进才成为可能——而且在某些情况下是必要的。 尽管它们不一定会改变以太坊的整体轨迹,但它们将允许更安全地实施以太坊质押,并提高共识过程的安全性和稳健性。
1、EIP-7044:永久有效的签名自愿退出
EIP-7044 将允许签署的自愿退出无限期地保持有效,而不是像现在这样仅对两次升级或当前和之前的共识层 (CL) 分叉版本有效。 这一变化旨在简化和改善质押用户体验,特别是对于委托质押解决方案的用户。
1.1 委托 ETH 质押
一般来说,委托质押安排涉及两方:ETH 质押者,拥有他们想要质押的 32 ETH(或 32 ETH 的倍数),以及验证器运营商,管理运行以太坊验证器的技术和操作复杂性 代表 ETH 质押者。 下面的信息图描述了以太坊上 ETH 质押者和验证者运营商之间的关系:
虽然一些委托质押安排涉及验证器运营商保管用户的 32 个 ETH,要求用户相信验证器运营商不会滥用或窃取其资金,但也可以提供非托管的委托质押。 例如,ConsenSys Stake 以完全非托管的方式为用户提供作为验证者运营商的服务,以便用户在整个 ETH 质押过程中保留其资金的所有权。
像 ConsenSys Stake 这样的非托管、委托质押产品是可能的,因为每个以太坊验证器都有两种类型的密钥:签名密钥和取款密钥。 验证者的签名密钥用于执行每个以太坊验证者期望的链上职责(即证明和提议区块)。 由于验证者必须每隔几分钟签署一次链上证明,因此验证者的签名密钥保存在热钱包中(以方便访问),并且必须由验证者操作员控制。
验证者的提款密钥决定了当验证者退出信标链时,原始的 32 ETH 存款和所有应计的质押奖励将发送到哪里。 由于提款密钥很少用于执行链上操作,因此验证者的提款密钥可以由 ETH 质押者专门保存在冷(离线)存储中。 这确保了 ETH 质押者保留其验证者提款密钥的唯一所有权,并最终保留其质押资金的所有权,即使在将其验证者签名密钥的所有权委托给验证者运营商之后也是如此。
1.2 验证者在委托质押设置中退出
在上述委托质押设置中,当 ETH 质押者决定退出验证器并提取其原始 32 ETH 存款和应计质押奖励时,就会出现复杂情况。 就上下文而言,退出以太坊验证器需要使用验证器的签名密钥签署所谓的“自愿退出消息”(VEM)或“自愿退出操作”,并由共识层(CL)客户端提交到信标链上进行处理 (例如泰库)。 下面的信息图提供了验证器退出过程的更详细的细分:
回想一下,即使在非托管委托质押安排中,验证者的签名密钥也由验证者运营商持有,而不是 ETH 质押者。 这种安排使 ETH 质押者处于不利的境地,即每当他们希望退出验证器时,他们都必须信任验证器操作员代表他们签署并提交自愿退出。
虽然任何有信誉的验证器运营商都会尊重 ETH 质押者的退出请求,但这种情况使 ETH 质押者面临验证器运营商拒绝退出其验证器的风险(有时称为“悲伤”)。 幸运的是,有一个解决方法可以解决这种次优的质押用户体验:预先签名的自愿退出。
1.3 预先签署的自愿退出
目前,验证者运营商通过为其运营的验证者预先签署自愿退出,并将这些预先签署的自愿退出发送给为每个验证者提供资金的 ETH 抵押者,来表明他们愿意满足 ETH 抵押者的退出请求。 为 ETH 质押者提供预先签署的自愿退出,使他们能够随时单方面向以太坊共识客户端提交自愿退出,并通过这样做,独立退出其验证者。
如今,这些预签名的验证器退出仅对当前和之前的共识层 (CL) 分叉版本有效。 换句话说,一旦 Deneb 分叉发生,在 Capella 分叉之前预先签署的自愿退出将不再有效。
这种设计选择(限制预先签署的自愿退出的有效性)最初是出于核心开发人员对非常长且有争议的分叉情况的考虑而做出的。 在这种情况下,在分叉版本 A 上提交的预签名自愿退出将可以在分叉版本 B 上重放。一旦通过 Deneb 升级使预签名自愿退出永久有效,这仍然是一个风险,但核心开发人员之间的共识是 这一变化所带来的优势和改进的质押用户体验超过了这种风险。 EIP 的作者认为,“这种可能性不足以证明上面暴露的用户体验退化是合理的,因为没有资金面临风险,并且质押者可以在一条或两条链上重新质押。”
1.4 永久有效的自愿退出的未来好处
重申一下,EIP-7044 将使自愿退出永久有效,而不是仅对当前和之前的共识层 (CL) 分叉版本有效。
除了以上述方式改善质押用户体验之外,该 EIP 还围绕自动验证器退出开辟了新的设计空间。 例如,永久有效的预先签署的自愿退出可以存储在某些合同或自动化机制中,如果满足特定条件(例如,如果您的验证器在设定的时间内处于非活动状态),则将自愿退出提交给以太坊的共识层 纪元)。 如果验证器设置丢失或以其他方式离线,这将为质押者提供额外的保护,使其免受不活动处罚。
对于那些更精通技术的人来说,此更改将通过对状态转换函数进行一次更改来实现:
- 修改 process_volk_exit 以计算固定在 CAPELLA_FORK_VERSION 上的签名域和根。
此外,还隐式修改 volent_exit 八卦条件以支持此更改。 为了使更改向后兼容,签名域被锁定在 Capella 分叉上。
2、EIP-7045:增加最大证明包含槽
从一个角度来看,以太坊区块链主要由区块(如下所示的正方形)和证明(如下所示的圆圈)组成。 每个证明都可以被视为对给定区块的投票,以表明其“正确性”。
特定时隙的证明必须包含在预定义时间窗口内的块中,才能被以太坊共识机制视为有效。 对于外行来说,以太坊中的时间被划分为纪元,每个纪元包含 32 个时隙; 一个时隙是 12 秒的时间段,在此期间可以提议和验证区块。
EIP-7045 将证明的最大包含槽位从 1 个滚动纪元扩展到 2 个非滚动纪元。 换句话说,验证者过去有 32 个槽来广播其证明以包含在给定槽中。 在这次升级中,验证者现在将能够证明当前纪元中的槽位,以及完整的后续纪元,这意味着验证者现在最多(但不一定)有 64 个槽位来包含证明(并因此获得奖励)。 (这里的细微差别是,验证者不太可能拥有完整的第一个纪元来进行证明,除非他们证明的时隙是该纪元中的第一个时隙)。
这个 X+1 证明窗口在信标链最初启动时就被考虑过,但现在才受到更多关注(和优先级),因为它将允许每个块的确认时间更快。 为了更好地理解这一变化,我们首先要澄清以太坊共识中的一个关键概念,即“分叉选择”。
2.1 分叉选择:以太坊如何确定规范区块
虽然区块链是线性的,但只有在网络对“正确性”进行投票以就哪个区块是规范的以及头区块建立共识之后,它才会变得如此。 在对规范区块达成共识之前,可能存在多个竞争区块,每个区块都会收到一定数量的证明或投票。
在上图中,验证者将证明三个头块之一,如绿色、紫色和蓝色箭头所示。 在投票过程完成并验证特定区块之前,以太坊网络尚未决定哪个区块是规范的。
2.2 使用 LMD-GHOST 评估以太坊的分叉选择
以太坊使用一种名为 LMD-GHOST(最新消息驱动贪婪最重观察子树)的算法来分析分叉权重并选择规范区块。 LMD-GHOST 通过递归遍历区块后代来选择累积权重最大的分叉,从而使其能够识别验证者证明最支持的分叉。 其主要目标是防止网络争论哪个区块是规范的,或者是最经证实的区块。
为了使 LMD-GHOST 安全运行,它需要访问尽可能多的证明。 目前,证明只能包含在创建的 32 个槽位内。 这限制了可用于评估分叉选择的证明数据集。
因此,研究人员认为增加信标链的证明窗口是适当的,从而增加可以分配给给定区块的证明数量。 通过这样做,LMD-GHOST 将能够更快、更有效地确定规范区块,使共识节点能够在出现两个或多个竞争分叉时更轻松地解决冲突。
然而,值得注意的是,LMD-GHOST 只是用于确保以太坊权益证明 (PoS) 共识的机制的一部分(尽管很重要)。 虽然 LMD-GHOST 负责确认规范区块,但另一种称为 Casper the Friendship Finality Gadget (Casper-FFG) 的算法决定了纪元的最终性。
以太坊 PoS 目前使用两种算法(Gasper)的组合来管理验证者奖励和惩罚、确定区块有效性、选择规范区块并声明最终性。 要了解有关 Gasper 的更多信息,我们鼓励阅读以太坊基金会关于 Gasper 算法的解释资源。
注意:不同的应用程序可以根据其安全需求选择 LMD-GHOST 或 Casper-FFG 作为以太坊状态的“真相”来源。 这里的主要权衡是速度与保真度:LMD-GHOST 可以合理地尽早声明以太坊的规范状态,而 Casper-FFG 将需要更长的时间来完成纪元 - 但一旦纪元完成,在该纪元期间添加到链中的块是不可变的( 据说 Casper-FFG 可以为此提供可靠的安全性)。
2.3 增加证明窗口的好处
通过将包含窗口扩展到 X + 1 个纪元(而不是限制包含当前纪元的证明),EIP-7044 使 LMD-GHOST 在评估分叉权重时能够包含更多证明。 这样,LMD-GHOST 将能够更加自信地选择得到大多数以太坊验证者认可的规范分叉。
延长的窗口还为验证者影响以太坊共识提供了灵活性。 例如,即使某些验证者最初受到审查,他们后期的证明仍然可以在有效分叉背后积累权重。 这使得 LMD GHOST 能够更有效地应对临时审查或协调问题。
EIP-7044 无疑是朝着降低区块确认时间和减少以太坊用户延迟的正确方向迈出的一步。 然而,我们必须注意,该 EIP 和相应的研究独立于正在进行的研究和开发,以在以太坊上实现单时隙最终性(SSF)(这将需要对共识层进行更重大的改变)。
原文链接:Ethereum Evolved: Dencun Upgrade Part 2, EIP-7044 & EIP-7045
DefiPlot翻译整理,转载请标明出处