GAS:EIP-1559是以太坊Gas的救星吗?

在以太坊中,交易所需的 gas 费计算方式是:

TransactionFee = GasPrice × GasLimit

其中 Gas Limit 代表你愿意为这笔交易支付的最大 gas 量,这通常取决于交易的复杂程度。Gas Price 指的是 Gas 的价格,即你愿意为每个单位的 gas 所支付的 ETH 数量。

目前以太坊费用机制使用的是首价拍卖模式。用户需要向以太坊网络提交出价(他们愿意支付的 Gas Price)。每当生成一个新的区块时,矿工将把 Transaction Fee 最高的那些交易打包进区块里。每一笔交易都会按照它的出价来支付 gas 费。

我们通常说的“支付更多的 Gas 费” 意思是增加某笔交易的 Gas Price 以获得被打包的优先权。例如在 Metamask 中,有 “慢”、“平均” 和 “快” 这 3 个 Gas Price 选项供用户选择,用户通过这个选项支付更高的 Gas Price 来加快自己的交易被打包。

问题在于,用户与钱包都无法准确估计他们应该支付的 gas 费,事实上用户总在支付高于他们本应支付的价格,来确保交易的顺利进行。我们可以从下图中看出,ETH 交易费的平均值一直高于它的中位数,并且当网络拥堵的时候差值尤其的大。

ETH 交易费的 平均数 / 中位数 (来源: CoinMetrics)

EIP-1559 可以称作是以太坊历史上最令人期待的提案之一。它对以太坊网络的交易费机制进行了很大改造,主要可以概括为:

引入弹性区块大小的机制,每个区块的最大 Gas Limit 被提升至原来的 2 倍,矿工可以在网络拥堵的时候弹性地改变区块的大小。

原本单一的交易费被更改为固定费用 (Base Fee)加上小费(Inclusion Fee)的模式,固定费用是必须支付的部分,并且会根据上一个区块的 Gas 使用情况进行动态调整。且每个区块的固定费用部分都会被烧毁,不会给到矿工。

第160次以太坊ACDE会议:确定纳入EIP-4844、6780、6475、1153:4月29日消息,根据Christine Kim对第160次以太坊执行层核心开发者会议(ACDE)进行的总结,本次会议主要讨论在下次坎昆(Cancun)升级中,需要纳入哪些代码修改。

除了此次升级的主角EIP-4844(降低L2手续费) 外,开发者还同意将以下EIPs纳入升级:

·EIP-6780(修改SELFDESTRUCT操作码的功能,主要是为未来应用Verkle树做准备);

·EIP-6475(为可选值引入新的简单序列化类型,以提供更佳的可读性和紧凑的序列化);

·EIP-1153(引入瞬态存储操作码)。

另外,还有部分EIPs提案尚未被正式接受纳入升级(EIP-6913、6493、4788、2537、5656)以及部分被确定不考虑纳入本次升级(Big EOF和EVMMAX)。

在对围绕坎昆EIPs进行讨论后,下一次会议议程将是关于EIP-4844的进展。

此前消息,以太坊核心开发人员会议中表示,计划对区块链的共识层进行代码修改,为下一次坎昆升级(Cancun-Deneb)做准备,预计将于今年晚些时候进行。

以太坊的Cancun-Deneb升级中预期的最重大变化将是EIP-4844,也称为“ proto-danksharding ”。 EIP-4844旨在通过以太坊节点实现链下数据的临时存储和检索,以满足区块链应用程序的数据和存储需求。如果成功激活,EIP-4844有望降低第2层rollup解决方案(包括Optimism和Arbitrum)的交易成本。[2023/4/30 14:35:10]

弹性区块大小允许矿工动态扩张或缩小区块大小来处理暂时性的网络拥堵。有了 EIP-1559 之后,每区块的目标 Gas 限值还是 15M,  但是最大 Gas 限值会从 15M 调整到 30M(差不多2倍)。如果区块中使用的 gas 量比目标 gas 限值少,那么代表网络是不拥堵的,下一个区块的固定费用会降低。如果如果区块中使用的 gas 量比目标 gas 限值多,那么代表网络是拥堵的,下一个区块的固定费用会升高。我们会在下文仔细讲解这种机制。总的来说,交易量的波动原先会转化为交易费的波动,而如今转化为区块大小的波动。

以太坊开发人员:提议将EIP-4758纳入以太坊上海:金色财经报道,以太坊开发人员MariusVanDerWijden在其社交平台表示,我想提议将EIP-4758纳入以太坊上海。它改变了SELFDESTRUCT操作码的语义,并将其变成一个SENDALL,将合同的余额发送给一个接收者。这个EIP是Verkle的先决条件(还有其他一些变化)。它非常容易实现,而且不难测试,所以我很想在上海看到它。

据悉,通过将SELFDESTRUCT改为SENDALL来停用,这样做可以将所有资金收回到调用者手中,但不会删除任何代码或存储。[2022/9/26 22:30:01]

区块拥堵程度 (来源: IOSG Ventures)

EIP-1559 引入一种新的交易费用机制,来解决首价拍卖模型中的问题。每区块固定费用是“基础费用(Base Fee)”,给矿工的额外的激励是“小费(Inclusion Fee)”。所以交易费变为:

TransactionFee = BaseFee + InclusionFee

进一步分解:

TransactionFee = BaseGasPrice × GasLimit + InclusionFee

Base Gas Price 代表每个区块的 Base Fee 里的 Gas 的单价,每个区块的 Base Gas Price 是固定的,而且价格高低由前一个区块的拥挤程度来决定,

BaseGasPrice = PreviousBaseGasPrice × (1 + k × CongestionLevel)

其中 Congestion Level 代表区块的拥挤程度,Previous Base Gas Price 代表上一个区块的 Base Gas Price。k是调整速度系数,0 < k < 2。而根据 EIP-1559 的初始设定,k=1/8。拥挤程度会根据每区块中使用的 gas 量是否大于目标 gas 限值来决定。

以太坊开发者修复测试网上的EIP-1559相关漏洞:以太坊开发人员一直在努力解决测试网上的代码和客户端出现的问题,以为下一次网络重大升级——伦敦升级做好准备。7月21日,以太坊首席开发人员Tim Beiko发布了一份“伦敦测试网回顾”报告,详细介绍了即将到来的以太坊升级测试阶段的最新进展。

根据报告,OpenEthereum客户端在7月21日注意到他们的节点在Ropsten测试网上停止了运行。经查,问题不在该客户端,而是在go-ethereum协议和Geth客户端上,后者检查EIP-1559交易的发送方余额。据悉,当时一些客户端拒绝了该区块,而另一些客户端接受了该区块并继续处理:“具体而言,OpenEthereum和Besu拒绝了该笔交易/区块,而Nethermind、go-ethereum和Erigon接受了它们。”之后,通过向EIP-1559交易的有效性添加新的断言(assertions),这个问题得以修复,并且测试仍在继续。据悉,测试于6月24日在Ropsten测试网上率先激活;本月早些时候,Rinkeby测试网也启动了最后的测试阶段。(BeInCrypto)[2021/7/22 1:09:15]

CongestionLevel = (PreviousBlockGas / UsedTargetGasUsed - 1)

总结来说,我们可以看到,

0.875 × PreviousBaseGasPrice ≤ BaseGasPrice ≤ 1.125 × PreviousBaseGasPrice

假设 gas 限值相同的情况下,

0.875 × PreviousBaseFee ≤ BaseFee ≤ 1.125 × PreviousBaseFee

当网络拥堵时,每过一个区块后 Base Fee 最多会增加 12.5%,Base Fee 不断增加直到用户因为交易不再盈利而减少交易,所以这种机制可以缓解拥堵的网络;当网络不拥堵的时候,每过一个区块后 Base Fee 最多会减少 12.5%,Base Fee 的下降激励用户增加交易。

小费是用户付给矿工加速交易用的。小费是可选项,可以设置成零。矿工仍然用首价拍卖模式来优先选择有更多小费的交易来打包进下一个区块。

Stack Funds首席运营官:以太坊涨势源自EIP 1559升级引起的兴奋:金色财经报道,以太坊在周一早些时候升至创纪录的3201美元,年初至今的涨幅超过330%。对此,Stack Funds首席运营官Matthew Dibb表示,以太坊的融资率保持平稳,今日早些时候在FTX上达到负数。以太坊的现货涨势主要是由于即将到来的EIP 1559升级引起的兴奋。[2021/5/4 21:21:23]

以太坊每年的通胀率为4%,每个区块会铸造 2 个 ETH 作为固定区块奖励。在 EIP-1559 中,Base Fee 里的 ETH 都会被烧毁,这会对 ETH 的价格产生通缩压力。

区块奖励分解 (来源: IOSG Ventures)

伦敦升级和 EIP-1559 提案已经在区块高度 10499401 部署在了 Ropsten 测试网。目前社区正在观察 EIP-1559 的表现,以及gas费会怎么变化。最近,许多文章和评论都刊登了http://watchtheburn.com/ 这个网站的截图,这个网站在监测有多少 ETH 被 Base Fee 燃烧掉。

 Ropsten 测试网上烧毁的 ETH (来源: watchtheburn.com)

截至目前,从区块高度 10499401 到 10512250,总共烧掉了 88571 个 ETH。也就是说在12859 个区块中燃烧了 88571 个 ETH,同时有 2 * 12859 = 25698 个 ETH 被铸造。这意味着 ETH 确实因为 EIP - 1559 变得“通缩”了!

但是 EIP-1559 在以太坊主网上线后也会是这个结果吗?我们觉得不会。

我们认为在 Ropsten 上之所以燃烧了这么多的 ETH,是因为网络有许多不寻常的连续的拥挤的区块,这些拥挤的区块将Base Gas Price 推到很高,并且持续了很长一段时间。一个很好的证明是区块高度 10503157 到 10504352,Base Gas Price 从 98.45 Gwei 增加到了 82851 Gwei,在 1195 个区块中增长了 841 倍。

MakerDAO发起有关添加ETH-C为新Vault类型和支持EIP-1559等治理投票:据官方博客消息,3月1日,MakerDAO治理促进者已代表MakerDAO风险小组将一项治理投票纳入投票系统。投票内容如下:将ETH-C添加为新的Vault类型;更新抵押品拍卖参数;增加ETH-A目标可用债务(gap)参数;MakerDAO支持EIP-1559。[2021/3/2 18:05:41]

Rospten测试网中区块高度为10499401 到 10506825 的基础费用价格 (来源: IOSG Ventures)

这种情况很特殊,更像是开发者在测试网上做的极端测试。

主网上线后不会出现相同的情况,因为逐步提高的 Base Fee 会迫使需求不那么强烈的用户不进行转账,进而把区块大小恢复到目标大小,从而降低 Base Fee。

以太坊社区的 /img/202281265451/5.jpg">

Base Fee 模拟 (来源: /img/202281265451/6.jpg">

Gas Fee 分解 (来源: IOSG Ventures)

第二,可变的区块大小可以在交易量大的时候作为缓冲,把 gas 费的波动转化为区块大小的波动。所以当交易量激增时,gas 费会比以前上涨得缓慢。

最后,EIP-1559 上线之初 Base Gas Price 会被设置为 1 Gwei,相较于最近 20+ Gwei 的 gas 价格,这会在刚上线的时候把 gas 费短暂地拉低。

另一方面降低 gas 费并不是 EIP-1559 的目的。它的目的更多的是想要让 gas 费的变化变得更加平稳,减少用户过度竞价,并且让gas费有更高的可预测性。

钱包对 gas 费不再是估算而是精准计算,因为现在可以准确计算出下一个区块的 Base Gas Price 了,用户对交易费用的数额有更清楚的认知。钱包会显示下个区块的Base Gas Price,并且允许用户设置小费来加快打包。

钱包开始设计新的UI模板,以下是Metamask(非官方)和Status(非官方)的模板。

     

钱包页面模拟 (来源: /img/202281265451/9.jpg">

区块奖励流出方向对比 (来源: IOSG Ventures) 

毫无疑问,一些矿工会认为 EIP-1559 是一个坏消息。原本所有交易费都归矿工所有,而现在只剩下小费会给到矿工,而BaseFee的部分会被烧毁掉,因此矿工们将会失去部分收入。对于MEV而言,矿工在EIP-1559后仍然有调整交易在区块中的顺序的能力,所以MEV的基本面保持不变。

下图是 Flashbots 基于MEV占比的矿工收入明细。我们假设对于一个非MEV交易,Base Fee 通常会比小费多很多,所以下图中大部分的橙色区域会被烧毁,小部分因为小费的存在而留下;而对于矿工MEV收益的部分,大部分MEV收益是来自于 Flashbots 里的 searcher 支付的打包费,和矿工通过往区块里混入自己的交易得到的收益。被烧毁的 Base Fee 和前两个部分相比十分小。所以下图中大部分的绿色区域会保留,大部分的MEV收益仍会被捕获到。

  矿工利润分解 (来源: Flashbots)

从长期前景来看,EIP-1559 给 ETH 带来通缩压力;ETH 的价格升值最终会让矿工受益。如果矿工在 ETH 数量上损失了25%,但 ETH 价格上涨了35%,矿工的美元收入仍然是不变的。

也有提案是说,与其烧掉所有的 Base Fee,不如将其中的一小部分与矿工分享。总而言之,所有这些都可以根据 EIP-1559 的表现进行协商和调整。

Flashbots 的用户是通过 EIP-1559 引入的新费用机制竞拍还是继续使用 Flashbots 呢?新费用机制的小费部分似乎可以用于竞拍。

Flashbots 提供的一个重要的功能叫做 pre-trading privacy,交易只有在被打包进区块之后才会被公开。Flashbots 使用首价密封投标拍卖的方式,所有用户同时提交密封的交易包以及竞价,没有竞拍者会提前知道其他人的交易包的内容和所出的竞价。所以用户不用担心被抢先交易,因为他的交易是全程被密封着的。

因为无法提供 pre-trading privacy,所以 EIP-1559 不能代替 Flashbots。假设套利者提交了一个能够盈利 $100 的交易进入内存池,并附上有 90$ 的小费。这个交易在进入池子的时候就会被公开,其他套利者可以复制他的交易,并且提交一个新的有更高小费的交易, 比如带有 $95 的小费的新交易。于是新的交易会被打包进区块,原来的套利者就因为被抢跑而失去了套利机会。EIP-1559 没办法改变这种情况,无法给用户提供抢跑保护。

没错,即使在 EIP-1559 上线之后,以太坊用户还是会大量使用Flashbots,来寻找进入区块无风险入口以及抢跑保护。

EIP-1559 引入了新的 gas 费机制,用 Base Fee + 小费的模式代替了单一的费用机制。以太坊区块大小具有了弹性,由此将 gas 费的变化转嫁为区块大小的变化。在 EIP-1559 上线后, 以太坊网络的交易费会变的更低并且有更大的可预测性;ETH 仍会是通胀的状态但是通胀率会降低;以太坊网络拥堵的情况会得到缓解;用户体验度会得到提升。这些改变会大大提升以太坊的可用性,并让更多的用户最终向以太坊倾斜。

虽然矿工短期会损失一些收益,但是长远来看最终会享受到以太坊价格上涨带来的更多收益。矿工依然拥有调整区块中交易顺序的自由,所以 MEV 的基本面并没有被改变,但由于 Base Fee 的燃烧,矿工在 MEV 方面的收益会相应减少;EIP-1559 不能代替 Flashbots 提供 pre-trading privacy的功能,所以需要防止交易被抢跑的用户仍然需要使用 Flashbots。

EIP-1559 已经在 Ropsten 测试网上线,之后会陆续登陆 Goerli、Rinkeby 和 Kovan 等测试网。在测试完备后,EIP-1559 预计会在7月底进行主网上线。 

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:46ms0-0:954ms