转发原文标题:《解析以太坊即将到來的硬分叉:Pectra 升級》
以太坊升级之路
在我们深入探讨即将到来的Pectra升级之前,有必要回顾一下以太坊的发展历程。以太坊2.0″权益证明”的演进过程可谓曲折而复杂。最初,以太坊通过添加信标层来启动权益证明共识机制,而执行层仍保持工作量证明(Phase0和Altair硬分叉)。随后,Bellatrix硬分叉完全激活了PoS机制(尽管当时尚未启用提款功能)。Capella硬分叉则实现了提款功能,完成了验证者生命周期的闭环。最近的Deneb硬分叉(Dencun升级的一部分)对信标链参数进行了微调,包括调整证明包含时间窗口、优化自愿退出流程以及验证者更换限制等。
Dencun升级中最显著的变化发生在执行层,引入了blob交易、blob gas、用于blob的KZG承诺等新特性,同时废弃了SELFDESTRUCT操作。现在,Prague/Electra(统称为Pectra)硬分叉将为执行层和共识层带来一系列重要升级。作为Lido项目的审计方,我们特别关注此次升级中与共识机制和质押相关的变化,但也不能忽视执行层的重要更新,这些变化将对整个以太坊网络及其验证者产生深远影响。
Pectra升级的核心内容
Electra升级为信标层带来了多项关键改进。其中最引人注目的是允许验证者的有效余额在32至2048ETH之间动态调整,打破了原先固定32ETH的限制。此外,验证者现在可以通过二级”提款”凭证发起退出,不再需要依赖活跃验证者密钥。信标层处理Eth1存款的方式也进行了优化,不再需要从存款合约解析事件。同时,新增了一个通用框架,用于处理来自常规Eth1合约的请求,类似于Electra升级前存款的管理方式。
与此同时,Prague升级为执行层带来了多项创新。新增了一个支持BLS12-381曲线的预编译合约,用于验证zkSNARK证据(补充现有的BN254曲线支持)。另一个重要变化是引入了一个系统合约,用于存储和访问多达8192个历史区块哈希,这对无状态客户端特别有用。为了优化网络性能,升级提高了calldata的gas成本,鼓励项目将calldata密集型操作(如rollup)迁移到Dencun升级中引入的blobs。此外,升级还增加了每个Eth1区块可包含的blob数量,并提供了相关API接口。最令人期待的变化之一是允许外部拥有账户(EOA)拥有自己的账户代码,这将极大地扩展EOA的功能,使其能够执行multicalls或将执行权委托给其他地址。
这些升级涉及多个以太坊改进提案(EIP),包括EIP-7251(增加MAX_EFFECTIVE_BALANCE)、EIP-7002(执行层可触发的退出)、EIP-6110(链上提供验证者存款)、EIP-2537(BLS12-381曲线操作的预编译)等。这些提案有些专注于共识层,有些则针对执行层,还有一些需要两个层协同工作。由于这种紧密的相互依赖性,将Electra和Prague分开实施是不现实的,因此我们将逐一分析每个EIP及其对以太坊生态的影响。
验证者机制的革新
EIP-7251带来了验证者机制的重大变革。在Electra升级之前,验证者的最大有效余额固定为32ETH。激活验证者至少需要32ETH的质押,激活后验证者可以将其有效余额降至16ETH,达到该阈值时会被强制退出。Electra升级将最大有效余额提高至2048ETH,标志着以太坊从”32ETH权益证明”向”权益证明”的真正转变。
这一变化对验证者的影响是多方面的。首先,验证者成为区块提议者和同步委员会成员的概率将与其有效余额成正比增加。其次,削减处罚和不活跃惩罚的计算也将基于有效余额。这意味着大额质押的验证者将更频繁地参与区块提议和同步委员会,获得更多收益,但同时也面临更大的风险。
对于小型独立验证者来说,Electra升级允许他们逐步增加有效余额(以1ETH为增量单位),从而获得更多奖励。对于大型验证者而言,这一变化显著简化了管理流程,他们不再需要运行多个32ETH的验证者实例,而是可以整合为一个更大的验证者。流动性质押提供商则需要重构其质押分配方案,以适应新的验证者会计系统。
质押操作的简化
EIP-7002解决了质押操作中的一些痛点。目前,以太坊验证者需要两个密钥对:活跃密钥用于验证职责,提款密钥用于资金管理。然而,只有活跃密钥可以发起验证者退出,这可能导致质押资金被”挟持”。EIP-7002允许质押者通过常规ETH交易触发提款和退出操作,无需直接与验证者CLI交互,大大简化了质押流程。
EIP-6110则优化了存款处理机制。现行系统需要通过解析存款合约事件来处理存款,这引入了显著的延迟。新方案将直接在Eth1区块中包含存款请求,类似于提款处理流程,从而大幅缩短存款到激活的时间。
EIP-7685建立了一个通用框架,用于处理执行层和信标层之间的请求传输。这个框架支持存款、提款和合并三种主要操作类型,为未来的扩展奠定了基础。虽然具体实现细节仍在完善中,但这个框架将使Eth1层触发的请求在信标层上得到更高效的处理。
技术基础设施的增强
EIP-2537引入了BLS12-381曲线的预编译支持,这对验证BLS签名和zkSNARK证明至关重要。在智能合约中验证这些签名和证明原本需要大量计算资源,现在通过预编译合约可以显著降低gas成本。这一改进为门限签名方案、去中心化随机数生成等应用打开了大门,同时也使基于zkSNARK的解决方案更加实用。
EIP-2935在区块链状态中存储8192个历史区块哈希,为无状态客户端和智能合约提供了更长的历史数据访问窗口。这一改进特别有利于跨链应用和rollup,使它们能够直接在EVM中访问历史数据,而无需外部收集。
为了优化网络性能,EIP-7623提高了calldata的成本,鼓励rollup将数据迁移到blob交易。EIP-7691则增加了每个区块允许的blob数量上限,从3/6提高到6/9。这两个改进共同推动rollup采用更高效的blob交易方式。EIP-7840将这些blob参数添加到执行层配置文件中,使客户端能够通过API检索这些值,便于gas费用估算等操作。
账户系统的重大变革
EIP-7702可能是本次升级中最具颠覆性的变化。它引入了一种新的交易类型(SET_CODE_TX_TYPE=0x04),允许为EOA账户设置代码。这意味着EOA现在可以”借用”外部合约的代码并在自己的上下文中执行。从外部看,这就像EOA临时获得了智能合约的功能。
这一变化将带来诸多好处。用户可以直接从EOA发起多重调用(multicall),解决了approve()+anything()需要两笔交易的效率问题。它还支持”预授权”逻辑,使类似approve(X)+deposit(X)的操作可以在单笔交易中完成。此外,这一特性为账户赞助、安全限制设置、支出限额等功能铺平了道路。
然而,这一变化也带来了一些挑战。传统的tx.origin安全检查机制将受到影响,因为EOA和智能合约的界限变得模糊。协议开发者需要调整现有的安全检查逻辑,以适应这一新的账户模型。从长远来看,这一变化使以太坊的账户系统更接近TON等区块链的设计理念,为更复杂的用户交互提供了可能。
展望未来
Pectra升级计划于2025年3月实施,它将为以太坊带来多方面的改进。验证者机制的变化将重塑质押生态,执行层与共识层的交互优化将提升网络效率,BLS12-381预编译将扩展智能合约功能,blob交易的优化将促进rollup发展,而EOA的可编程性将彻底改变用户体验。
这些变化标志着以太坊持续演进的重要里程碑。虽然目前部分实现细节仍在开发中,但可以预见的是,Pectra升级将为以太坊生态注入新的活力,推动其向更加高效、灵活和用户友好的方向发展。
声明:
- 本文转载自【TechFlow】,转发原文标题:《解析以太坊即将到來的硬分叉:Pectra 升級》。著作权归属原作者【MixBytes】,如对转载有异议,请联系 Gate Learn 团队,团队会根据相关流程尽速处理。
- 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
- 文章其他语言版本由 Gate Learn 团队翻译, 除非另有说明,否则不得复制、传播或抄袭经翻译文章。
声明:文章不代表CHAINTT观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险 自担!转载请注明出处:https://www.chaintt.cn/18584.html