在区块链技术的快速发展中,以太坊作为全球最大的智能合约平台,其网络升级一直是业界关注的焦点,2021年4月15日,以太坊成功完成了名为“柏林”(Berlin)的网络升级,这是继2020年12月的“伊斯坦布尔”(Istanbul)分叉之后的又一次重要网络更新,柏林分叉并非是以太坊向“以太坊2.0”完全过渡的里程碑,但它通过一系列协议改进,显著优化了网络性能、降低了交易成本,并为未来的升级奠定了坚实的基础。
柏林分叉的核心目标:提升效率与降低成本

柏林分叉的主要目标聚焦于优化以太坊虚拟机(EVM)的操作码、调整交易费用市场机制,以及改进网络协议,其核心驱动力在于解决以太坊主网日益增长的使用需求所带来的网络拥堵和高Gas费问题,通过引入更高效的算法和更合理的费用结构,柏林分叉旨在提升用户体验,使DApp(去中心化应用)的开发和部署更加经济高效。
关键协议改进亮点
柏林分叉包含了以太坊改进提案(EIP)中的多项重要更新,其中最受关注的包括:
EIP-2565:ModExp Gas Costs修正 (ModExp Gas Cost Adjustment)

MODEXP操作(用于模幂运算,常见于密码学应用和某些智能合约)的Gas消耗进行了重新计算和调整,原先的Gas计算方式在某些情况下可能被滥用,导致Gas费虚高,此次修正使其Gas成本更准确地反映实际计算资源消耗,尤其是在处理大指数运算时,能有效降低相关操作的Gas费用。EIP-2718:类型化交易格式 (Typed Transaction Envelope)
引入了一种新的交易类型封装方案,这使得未来可以更容易地添加新的交易类型,而不会与旧交易产生冲突,它为交易数据提供了一个清晰的标识,有助于提高交易处理的效率和灵活性,也为后续更复杂的交易类型(如EIP-2930的访问列表交易,虽在柏林前已激活,但此EIP提供了更统一的框架)铺平了道路。
EIP-2930:访问列表 (Access List)

虽然EIP-2930在柏林分叉前已被激活,但它是柏林升级的重要组成部分,该提案允许交易发送者在交易中包含一个“访问列表”,即交易将要读取或写入的合约地址和存储槽,这能让节点提前知道交易需要访问的状态数据,从而减少预执行(pre-execution)的重复计算,降低Gas费用,特别是对于需要与多个合约交互的复杂交易,优化效果更为明显。
EIP-2718:交易类型封装的统一 (作为上述类型化交易的一部分)
EIP-2718定义了一种新的交易格式,将所有交易类型(包括现有的legacy交易和新的access list交易等)都封装在一个带有类型标识的字节串中,这使得交易解析更加高效,并为未来扩展提供了清晰的结构。
EIP-4337:账户抽象(Account Abstraction)的准备阶段
虽然EIP-4337(账户抽象)本身并未在柏林分叉中完全激活,但柏林分叉中的一些改进,如类型化交易格式,为账户抽象的后续实现创造了条件,账户抽象旨在让以太坊账户具备类似外部账户(EOA)和合约账户(CA)的特性,例如支持社交恢复、多签、交易费由合约支付等,极大地提升用户体验和安全性。
柏林分叉的影响与意义
柏林分叉的顺利实施,对以太坊生态系统产生了多方面的积极影响:
MODEXP等操作码和引入访问列表,柏林分叉有效降低了部分常见智能合约操作的Gas费用,尤其是在网络拥堵时期,为用户节省了一定的交易成本。以太坊柏林分叉是一次成功的、以优化和效率提升为核心的网络升级,它通过引入多项关键的EIP改进,有效缓解了以太坊网络的Gas费压力,提升了交易处理效率,并为未来的发展扫清了一些障碍,虽然柏林分叉的单独影响力可能不如伦敦分叉或合并那样引人注目,但它作为以太坊发展道路上的重要一环,体现了以太坊团队持续迭代、精益求精的务实精神,正是这些看似 incremental 但至关重要的升级,共同推动着以太坊向着更高效、更安全、更可扩展的未来稳步前进。