EIP-1559自2019年由以太坊开发者们提出后即陷入巨大争议,也是本次“伦敦”升级中引入的最大改革。
EIP-1559在以太坊网络的区块中引入了“基础费用”这个概念,该费用会跟随以太坊网络的gas价格进行智能调整,而网络从交易中接收到的gas价格取决于交易对区块空间的需求。这使得钱包和用户可以更容易更准确地预估一笔交易的手续费。
此外,EIP-1559还提出了一种新的交易类型,在该新类型的交易中,用户可以限定自己愿意支付的最大额度的手续费,以及愿意支付给矿工的最大额度的矿工费。而用户指定的费用上限和实际花费的基础费用加矿工小费的差额会被退还给用户。
最后,EIP-1559会销毁手续费中的基础费用部分,以太坊社区中不少人都认为这是对以太坊网络经济机制的一大重要改进,是以太坊货币通缩的重要功能。然而,同样有该提案的反对者认为,当矿工的收益由原先的全部手续费减少为仅收取矿工小费后,会因收益降低而打击矿工的积极性,同时用户反而可能需要支付更多的费用以填补矿工的收益。
目前来看,EIP-1559在主网的激活已经不可避免,而反对者依然占据主网不小的算力,这是否会造成以太坊主网实质性上的硬分叉,甚至影响到整个网络的安全性,还要等待接下来的发展。
EIP-3198是EIP-1559的配套提案。这个提案只是添加了操作码BASEFEE,即EIP-1559中所提到的基础费用。这个操作码会对其所在的区块执行返回基础费用。这样智能合约就能从链上获取基础费用,有助于提交欺诈证明和创建无需信任的gas price衍生操作。
“伦敦”升级引入的另一重要修改是从SELFDESTRUCT中移除了gas退款,并减少了SSTORE 操作码的gas退款。虽然退款这个机制在最初是为了鼓励开发者尽可能地清除状态,但事实上,在Gas代币出现后gas退款反而导致状态的规模增加了。由于这些退款机制的存在,Gas代币在Gas价格低点创建交易再在gas价格高点执行交易就能获得退款,这种操作会堵塞整个网络状态。
除此之外,gas退款还会导致区块执行时间产生变化。在“伦敦”升级之前,在同一区块中有高达50%的gas退款能用于执行更多计算。这就意味着,实际上区块容量最高可达gas上限的1.5倍,这些算力都被浪费了。
EIP-3529会将这种“交易执行退款”从50%降至20%以下。这一改变可以在一定程度上抵消 EIP-1559造成的区块大小差异,而EIP-1559允许区块使用最多可达当前gas上限两倍的gas。
EIP-3541:网络将拒绝以0xEF字节开头的新创建的智能合约
EIP-3541是一个简单的为EIP-3540中描述的EVM虚拟机改进提议奠定基础的提案。一旦EIP-3541实行,以0xEF字节为开头创建的新合约将无法部署在以太坊网络上。已部署的合约不受影响。
“伦敦”升级启动后,字节最短序列以0xEF开头、但又与现存合约的起始序列不相符的新合约部署将会被回滚,以此识别那些兼容EIP-3540提案的合约。
EIP-3554将推迟难度炸弹(又称冰河期)的引爆时间。难度炸弹/冰河期是以太坊引入的一种机制,用于在以太坊网络共识机制从PoW向权益证明过渡时“冻结”挖矿。
鉴于以太坊网络还没有准备好过渡到权益证明机制,因此推迟难度炸弹的引爆时间。此前就已推迟过三次,分别在大都会(EIP-649)、君士坦丁堡(EIP-1234)和缪尔冰川(EIP-2384)更新期间。
虽然之前几次都推迟了很久,但是这次核心开发人员决定只将难度炸弹推迟至2021年12月。届时,以太坊网络要么成功过渡至权益证明,要么再进行一次升级。
以上就是“伦敦”升级引入的所有提案介绍。