Pectra升级EIP详解:对ETH通胀的影响分析
以太坊新升级 Pectra 🚀,名字是 Prague 和 Electra 的合体。
Prague 是为执行层的升级而来,灵感源于以太坊开发者大会的举办地布拉格,而 Electra 则代表共识层的提升,以字母顺序命名的星星中的「E」为其突出标志。Pectra 可能是以太坊历史上涉及最多的 Ethereum Improvement Proposals(EIP)的一次硬分叉,除了针对验证者操作和主网性能的提案,还加入了对 L2 的优化。Pectra Devnet 4 测试网已经上线,目前确认纳入了 8 个 EIP。
影响 EIP 确定与影响分析 💡
这 8 个 EIP 对用户的影响主要体现在:为 EOA 增加代码执行能力,提升账户灵活性,能进行更复杂的操作;质押上限的提升可能会增加对 ETH 的需求;同时优化验证者的流程,增强安全性与效率,提高以太坊的速度和吞吐量。
-
EIP-2537(支持 BLS 签名):引入一系列预编译合约(precompiles),为以太坊增加 BLS12-381 曲线运算的支持,实现 BLS 签名验证,并允许多个签名聚合成一个,这样验证时的复杂度就降低了。BLS 签名是一种能生成较小签名并支持聚合的密码学算法,这对需要频繁进行签名验证的 L2 来说,简直是如虎添翼。
-
EIP-2935(在状态中保存历史区块哈希):将最近的 8192 个区块哈希存储在系统合约中,支持无状态客户端(Stateless Clients)模型,并提供灵活的历史区块哈希查询。这些哈希值可通过合约直接查询,作为证明(witness)捆绑给无状态客户端。这样,客户端就不需要维护完整的区块链历史或存储大量数据,只需依靠存储的区块哈希和相关证明,便能验证区块和交易的合法性。 3. EIP-6110(链上验证者存款处理)
🔑 存款处理转变:将验证者的存款处理从共识层移至执行层,链上直接处理和验证,告别冗余的共识层投票机制。这样一来,存款流程安全性大幅提升,处理延迟显著减少,设计也变得更简洁。
4. EIP-7002(自主触发退出)
🚀 用户自主性提升:提款凭证的持有者现在可以独立发起退出,无需依赖验证者的活跃密钥(BLS密钥)。之前,只有活跃密钥能触发退出,若丢失或委托给第三方,持有者就无能为力。这项提案让持有者通过提款凭证直接操作ETH退出,真正做到自主控制。
5. EIP-7251(提高质押上限)
📈 质押上限提升:验证者的最大有效余额上限提高,允许每位验证者质押超过32 ETH,而最低质押门槛依旧是32 ETH。这项措施旨在让大节点运营者通过合并多个验证器,减少网络中验证者的数量,从而降低P2P消息、签名聚合和存储负担。
6. EIP-7549(优化证明中的委员会索引)
⚡ 投票聚合效率提升:将委员会索引字段移出证明消息,优化共识投票聚合。现有机制中,验证者投票时会包含委员会索引,导致相同投票内容的签名根不同,聚合困难。通过移除这一字段,投票聚合效率提升,验证成本和网络负载减轻。
7. EIP-7685(通用执行层请求框架)
🛠️ 请求处理框架定义:为执行层(EL)设立一个通用框架,专门用于存储和处理智能合约触发的请求。这个框架支持更多执行层行为,并能统一处理不同类型的请求,简化添加新请求类型的流程,无需更改执行块结构。
8.EIP-7702(给EOA增添代码执行能力): 让外部拥有账户(EOA)具备代码执行功能,提升账户的灵活性和可编程性。EOA可以通过授权签名的形式,指定智能合约来代为执行某些操作,比如批量交易或权限控制,而无需变成智能合约账户,依然拥有一定的智能合约功能。
🌟 重点关注的EIP 🌟
来看看一些正在积极考虑的EIP,主要是通过优化blob,提升L2数据发布的费用稳定性,增强L2的交易处理能力,同时有效降低L2的成本。而且,增加calldata成本的调整,可能会对ETH的销毁量产生影响,进而加大ETH的通胀压力。
· EIP-7742(解除共识层与执行层之间的blob计数依赖): 这项提案把共识层和执行层之间的blob数量解耦,简化了blob验证流程,减少了不必要的复杂性,增强了协议的扩展性和灵活性。当前协议中,执行层和共识层都硬编码了blob的最大值,导致了冗余验证。通过取消执行层对blob最大值的验证,改为共识层动态提供blob目标值,可以更灵活地调整blob目标参数,以适应未来的扩容需求。EIP-7742在考虑的升级EIP中争议最小,最近的共识层会议上,开发者同意在pectra-devnet 5中实现EIP-7742,但是否正式纳入,还得等执行层在ACDE(全体核心开发者执行层会议)上的反馈。
· EIP 7762(最低blob基础费用): 目的是提高MIN_BASE_FEE_PER_BLOB_GAS,减少blob价格调整至合理水平所需的时间。目前,最低blob基础费用是1 wei,当blob需求超过供应时,价格发现过程太慢,达到合适的费用水平需要很长时间。提高最低blob基础费用后,价格调整的速度会加快,更快实现市场均衡,确保网络在需求高峰时仍能保持稳定。 · EIP-7623(calldata 成本上调): 为了让网络更稳当地处理交易,决定提高交易中 calldata 的成本。这一变化旨在控制区块最大大小及其波动,目前区块大小大约是 1.79 MB。由于 rollups 等应用的数据发布,平均区块大小在不断攀升。通过提升主要用于数据可用性(DA)交易的 calldata 成本,预计将区块最大大小压缩至约 0.72 MB,从而为未来的 Gas 限制增加或更多 blob 留出空间。普通用户的交易费用不会受影响,但这一调整主要针对依赖以太坊大规模数据存储的交易类型。值得注意的是,calldata 成本上调可能会削弱以太坊在数据存储领域的竞争力,引发交易量下降,进而通过 EIP-1559 机制销毁的 ETH 也会减少,这可能导致 ETH 面临更大的通胀压力。💸
· EIP-7782(slot 时间缩短): 计划把以太坊的 slot 时间从 12 秒缩短到 8 秒,这样可以更频繁地生成区块,处理更多交易,作为增加 blob 数量的一种替代方案,提高交易吞吐量。不过,这也可能会破坏某些智能合约(这些合约是基于 12 秒的 slot 时间设计的),并加剧以太坊的状态膨胀问题,给存储和计算带来更大压力。⏱️
· EIP-7783(逐步提升区块 Gas 费限制): 这个提案作为 EIP-7782 的温和替代方案,计划通过动态调整区块的 Gas 限制,逐步增加每个区块能容纳的交易量,从而增强网络处理能力。与直接缩短 slot 时间相比,逐步调整 gas 限制会让扩展过程更加平稳。此提案不需要硬分叉,但可能会对状态数据产生一定影响。📈
Pectra 升级涉及众多 EIP,为了简化升级过程并加快部分 EIP 的上线,在 5 月,以太坊基金会的工程师团队 EthPandaOps 曾提议将 Pectra 拆分为两个部分,但由于担心可能延误升级,未受到重视。到了 9 月,以太坊研究员 Alex Stokes 再次提出了拆分建议,这次得到了开发者的支持,这种拆分有助于在六个月内完成升级的第一部分:
· 第一部分: 包含已经在 Pectra Devnet 测试网运行的 EIP(共 8 个已明确的 EIP),这些方案相对易于实施且经过了大量测试。🛠️ · 第二部分: 复杂的EIP,比如PeerDAS和EOF相关提案,将会被安排在第二阶段。这些提案需要更多的开发、审计和测试,尤其是那些涉及共识层和执行层协调的内容。