摘要:本文是对Tim Roughgarden的这篇优秀研究论文的总结,概述了EIP-1559提案的内涵,重申了Roughgarden的 "十大要点",并尝试对论文中的论点进行更直观的解释。
背景介绍:以太坊交易
(如果你对以太坊很熟悉,可以跳过这一部分)。)
像所有的计算机一样,以太坊区块链是一个状态机¹,任何给定的以太坊状态都是由地址和账户状态之间的 "简单 "映射--账户状态只是一个账户存储的数据(如账户余额、合约代码等),而该账户是由一个唯一的地址控制。
地址到其相应账户状态的映射(来源:Ethereum EVM illustrated.)
交易是改变这个全局状态的东西。交易指定了一个指令序列,通过以太坊虚拟机(EVM)的执行来改变全局状态。(更准确地说,EVM是以太坊的状态转换功能的实现形式,在定义任何状态机时都是必要的。)
一个非常简单的状态机。其中圆圈代表状态,箭头代表状态转换。当然,以太坊的状态机要复杂得多,许多状态转换类型以操作码的形式实现,并可能有无限的状态¹。
交易的创建者必须指定 gas限额和 gas价格。
Gas上限是交易对以太坊区块链施加的成本(计算、存储等)的度量。Gas 价格表明交易创建者愿意为每单位 Gas 支付多少钱(以 ETH 为单位)。例如,最基本的交易类型(简单的转账)需要 21,000 单位的 gas;更复杂的交易则需要更多的gas。通常 gas 价格反映了当前对 EVM 计算的需求,并且随着时间的推移发生数量级变化。
(注意:这篇文章中的所有引用都来自最初引用的文章
https://arxiv.org/pdf/2012.00854.pdf。)
交易创建者支付:gas limit × gas price。
一个区块是一个有序的交易序列和一些相关的元数据(重要的是, 还包括一个指向前一个区块的引用/指针;这就是为什么叫它区块链)。
©PNGWing
最大区块大小是任何区块可以包含的计算量的上限(由交易中的gas总量表示)。目前,其上限设置为 12.5M gas;因此每个区块交易的理论上限约为1000 笔(尽管在实践中要少得多)。矿工负责选择交易并将其排序到区块中并提供工作量证明。
以下对于理解本文的其余部分很重要:
交易费用机制(TFM)是协议的一部分,它决定了确认交易的创建者所支付的金额,以及获取这笔费用的对象。
当前的交易费用
当前以太坊网络交易采用最高价拍卖机制²。
来源:以太坊区块链的交易费用机制设计--EIP-1559的经济分析
这将导致 "许多矿工将区块打包到最大区块大小,贪婪地优先处理gas价格最高的未决交易"。
EIP-1559: 核心思想
在此可以找到正式以太坊改进提案(EIP)#1559(https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1559.md)。
燃烧与历史相关的基础费用
每个区块都有一个由协议计算的底价(每单位gas),称为基本费用。支付基本费用是加入区块的前提条件。
基本费用只是前一个区块的一个函数。
所有来自基本费用的收入都被燃烧,也就是说,从ETH的流通总量中永久销毁。
可变区块大小
最大的区块大小翻倍(例如,gas上限制从12.5M增加到25M),此时旧的最大区块(例如,12.5M gas)将作为目标区块大小。
只要最新区块的大小分别大于或小于目标区块大小,就向上或向下调整基本费用。
提示
现在的交易不再是单一的gas价格,而是包括小费和费用上限。只有当交易的费用上限达到区块的基本费用时,交易才会被打包进入区块。
谁支付什么费用?如果基础费用为 r 的区块中,包含小费为 δ、费用上限为 c、gas 限制为 g 的交易,则交易创建者需支付 g·min(r+δ, c) ETH。
谁收到这笔款项?来自基础费用的收入被销毁,剩余部分转移给区块的矿工。
有趣的是,在阅读这些关键想法时,人们可能会认为它们是相当随意的,并且/或者这些 "关键想法 "中的一些与其他想法有点正交。事实并非如此。嗯,不是真的。这些想法是有内在联系的,正如你将在本帖的其余部分看到的那样。
有趣的是,在读到这些核心思想时,人们可能会认为它们相当随意,并且/或者其中一些“核心思想”与其他思想有些矛盾。当然,事实并非如此, 这些想法有着内在的联系,正如您将在本文的其余部分看到的那样。
可变区块大小作为需求的代表
第一点:这些想法是有内在联系的,是动态调整块大小的概念。为什么要这样做?有一个简单的答案:当区块大小是动态时,开采的区块的实际大小可以被用作需求的代表。
EIP-1559的机制是使用过去的区块大小作为需求的链上衡量标准,大区块(超过12.5M gas)和小区块(低于12.5M gas)分别表示需求增加和减少。
公式的更新
建议更新每个区块的基本费用的公式为:
也就是说,在最大区块(即目标大小的两倍)之后,基本费用最多增加 12.5%,在一个空块之后最多减少 12.5%。⅛的系数是相当随意的,一个 "好 "的系数可以使基本费用以适当的速度调整,以适应需求的下降/上升的峰值。
十大要点
在此,我将重述Roughgarden论文中的 "十大要点",并对其背后的原因进行解读。
[1.] 任何交易费用机制,无论是EIP-1559还是其他机制,都不可能大幅降低平均交易费用;持续的高交易费用是一个可扩展性问题,而不是一个机制设计问题。
下图是以太坊网络中计算(以gas衡量)的供需图的一个代表性例子⁴。
来源:以太坊区块链的交易费用机制设计--EIP-1559的经济分析
Roughgarden认为,所有(合理的)天然气价格机制都可以被视为 "为这个理想而努力"。也就是说,努力达到一个最接近该最佳交点的天然气价格。而这个交点完全由供求关系决定--与天然气价格机制无关。
注意,这完全独立于gas价格机制。供需线的交点是市场清算价格,即gas需求总量等于可用供应量时的价格。
Roughgarden 认为所有(合理的)gas价格机制都可以被视为“为这个理想而努力”,即努力达到最接近该最佳交点的gas价格。而这个交点完全由供求关系决定--与gas价格机制无关。
通过增加供应或减少需求来降低市场清算价格,从根本上说是一个可扩展性问题,而不是一个机制设计问题
[2.] EIP-1559 应该通过可变区块大小的灵活性来减少交易费用的差异和用户所经历的延迟。
就像前面的 "要点 "中提到的,只要需求超过供应,交易费用就会很高。
那么,该提案的意义何在?为了使交易费用更可预测,从而使费用估算问题,即为交易选择最佳gas价格的问题,尽可能地简单明了。
从本质上讲,作者认为 EIP-1559 的主要好处是改善用户体验 (UX), 通过他称之为“用户激励兼容性(UIC)”的东西将用户体验正式化。为了使这篇博文相对“轻松”,我将跳过这种形式主义的细节,但论文中也提供了一个很好的直观类比:
在亚马逊上购物要比在竞争激烈的房地产市场上买房子容易得多。在亚马逊上,不需要讲究策略,也不需要猜测自己;你要么愿意为货架产品支付所列价格,要么不 愿意...
在准备购买一套房子并与其他潜在买家竞争时,你必须仔细考虑向卖家的出价。而且,不管你有多聪明,事后你都可能会对你的报价感到后悔--要么是因为你出价过低,被人PK掉,要么是因为你出价过高,支付的价格超过了你的心理价格。房子不需要卖给愿意支付最多的潜在买家(如果该买家出价过高),这是经济效率的损失。
苏富比的艺术品拍卖会。诚然,这不是我们正在处理的问题的完美类比:gas价格,但它确实是一个很好的图片,艺术界总是有趣的话题:) 图片来源::ukartpics/Alamy Stock Photo
从本质上讲,当前的 Gas 价格竞价系统在市场上造成了很多“混乱”(从而导致市场效率低下),因为交易创建者通常不会诚实地说出他们愿意的出价,并且他们的决定通常会受到其他人(或他们认为其他人)的影响。坦率地说,设定价格更直接,从而减少市场的混乱和低效率。
[3.] EIP-1559 应该通过简单的费用估算来改善用户体验,除去需求快速增长的时期之外,以“明显的最佳出价”的形式。
论文中证实这一点的部分相当复杂,但本质上归结为证明所谓的“用户激励兼容性”。本节 (6.3) 中的证明表明 1559 机制通常用作“貼价机制”(如前面给出的亚马逊示例)。需要注意的是,这在需求快速增长的时期并不成立,因为:
当基本费用过低时,用户必须通过他们的小费来竞争稀缺的区块空间,1559机制实际上又回到了最高价竞拍。
也就是说,在需求急剧上升期间,1559 看起来就像当前系统并无差异。
[4.] 在 EIP-1559 下,矿工按预期执行协议的短期激励与最高价竞拍拍卖一样强烈。
"按照预期"意味着:
矿工没有动机去制造虚假交易
矿工没有动机与链外用户勾结
这些论点在第6.2和6.4节中得到了正式证明。
[5.] 在EIP-1559框架下,双花攻击、审查攻击、DOS攻击和长期收入最大化战略(如操纵基本费用)的博弈论障碍似乎与最高价竞拍一样强大。
对此的解释在第7.5节中有相当简洁的说明,但基本要点是:在EIP-1559下,"主要 "攻击载体并不比目前的gas价格机制更容易被利用,因为它们是 "可检测的,理论上是脆弱的,或两者兼而有之"。
[6.] EIP-1559至少应该通过燃烧交易费来适度降低ETH的膨胀率。
显然,更多的燃烧意味着更少的 ETH 流通。
[7.] 面对链外协议带来的威胁,简单的费用估算和费用燃烧这两个看似正交的目标变得密不可分。
有意思的是,燃烧基本费用是1559机制的必要组成部分,否则(即如果矿工只是简单收取费用),整个1559机制将等同于最高价竞拍;也就是现在这样。也就是说,如果对1559机制进行修改,使矿工赚取基本费用,那么将减少现行的gas价格机制。
我认为这是一个关键点,因为我已经多次看到别人的论点,认为EIP-1559与目前的机制相同,但情况并非如此,特别是由于燃烧的引入。
另外,有一个论点表明,基本费用在这个设计中也是必要的,因为简单地从最高价竞拍中燃烧费用被证明是次优的(由于链外协议变得有利可图)
[8.] 备选设计方案包括向未来区块的矿工提前支付基本费用收入,而不是燃烧它们;以及用固定的小费取代用户设定的可变小费。
这点也是非常重要的。作者表明,研究论文中为EIP-1559提出的所有论据对其他几个备选设计也是成立的。
我将特别提到的一个备选设计方案是:向前支付基本费用。由于提议的费用燃烧机制,对 EIP-1559 的最大阻力来自矿工(见下面的注意事项部分)。
[我们可以证明]为了使区块的基本费用在经济上有意义,来自它的收入不能传递给该区块的矿工。也许在当前的 EIP-1559 规范中扣留这些收入的最简单方法是销毁这些收入,有效地向所有 ETH 持有者发放一次性退款。另一种解决方案是将这些收入转移给其他区块的一个或多个矿工。
这种对 EIP-1559 的替代/修改可能会影响矿工的意见。我有兴趣听到更广泛的讨论/辩论。
[9.] EIP-1559 的基本费用更新规则有点武断,应该随着时间的推移进行调整。
关于基本利率更新函数,我已经在上面提到过(“⅛ 系数是相当随意的”)。2倍的最大区块大小也是一个有点随意的 "好 "数字。更一般的,1559机制只需要满足几个条件,即:
与历史相关的基本费用,以及
烧掉或以其他方式扣留区块矿工的收入
关于过冲的插图。这张图片来自维基百科上关于过冲的文章,本意一个来自信号处理的话题,只是与目前的话题有点关系,可以用来辅助解释)
此外,Roughgarden还概述了基本费用更新规则所需的几个额外条件:
在需求突然激增(或下降)后,合理地迅速向上(或向下)调整。
调整速度足够慢,以避免对小的或非常短暂的需求变化作出过度反应。
不能由用户和/或矿工组成的卡特尔以博弈理论从容操控。
攻击者的成本很高。
“相当快”是多快?“贵”到底有多贵?这些问题,最好通过实验和社区讨论来回答。
[10.] 可变大小的区块使一个新的(但昂贵的)攻击载体成为可能:用一连串最大区块来压倒网络。
存在的一种可能性是,"攻击性的矿工卡特尔 "创造一连串最大区块,以创造需求冲击,然后推动用户增加小费。这种情况成本很高,也可以通过使用更大的区块来缓解。
注意事项
愤怒的矿工
但是,真的有足够的证据来证明,矿工勾结的危害性在 EIP-1559 下不会比现在更糟吗?
似乎大多数矿工(至少是矿池)一直反对EIP-1559。⁶ 这是因为他们认为燃烧会损失他们一部分利润,这是可以理解的。这带来了许多问题,最关键的可能是:如果大多数矿工拒绝包含EIP-1559的升级,那么这个更新能否真正实施?这是否会导致网络中的另一个分叉?
还有一些攻击载体是 "脆弱的游戏"--例如,将区块大小保持在一定水平,人为地减少供应--然而,只要被激怒的矿工足够多并且成功地串通起来,就有可能实施这种本来 "脆弱 "的串通策略。
然后总有人问有一个问题:这对更广泛的社区有什么影响?我不认为更广泛的区块链社区会以积极的态度看待协议变更的纷争和分叉。
我想借此机会再次强调Tim Roughgarden建议的EIP-1559的变体:"预付基本费用",也许这可以提供一个亟需的中间地带?
结论
EIP-1559 可能不会导致平均 gas 价格下降。
EIP-1559 可能会通过简单的费用估算和较少可变的 gas 价格来改善用户体验(即交易创建者的体验)。
从传统博弈论的角度来看,EIP-1559提供了与当前天然气价格选择机制在某些假设下相同的安全保证。
这方面的注意事项是:由足够多的心怀不满的矿工引起的更大的矿工勾结可能会破坏这些结论所依据的一些更传统的博弈论假设。足够多的对手能否破坏我们的博弈论假设?并成功实施否则“脆弱”的勾结策略?
我们能否对Roughgarden的EIP-1559的变体:"预付基本费用 "进行广泛的讨论?也许这可以提供一个亟需的中间地带(在用户和矿工之间)?
参考文献
[1]: To get technical, Ethereum is actually an infinite state machine: https://medium.com/@samuel.brooks/blockchain-the-infinite-state-machine-ffc39f32e182
[2]: There’s a lot of interesting research about first-priced auctions (and auctions in general, see: auction theory). In particular, a lot of major tech companies that rely on ad revenue have recently switched from second- to first-priced auctions: https://digiday.com/media/buyers-welcome-auction-standardization-as-google-finally-goes-all-in-on-first-price/
[3]: There are some important caveats to this. With the rise of DeFi (Decentralized Finance), there have been increasing cases of miners censoring and reordering transactions in order to profit via arbitrage (and other) opportunities present on DeFi applications. See Section V-B “Threats from Miner Extractable Value” here: https://arxiv.org/pdf/2101.08778.pdf
[4]: The demand curve likely isn’t linear, but it’s not relevant for this argument; i.e. the argument holds for any-shaped demand curve.
[5]: Roughgarden adds: “For example, typical layer-1 scaling solutions like sharding, in which different parts of the blockchain operate in parallel, increase transaction throughput and therefore decrease the market-clearing price. Typical layer-2 scaling solutions like payment channels and rollups, which effectively move some transactions off-chain, decrease demand for EVM computation and likewise decrease the market-clearing price”.
[6]: https://medium.com/ethereum-cat-herders/eip-1559-community-outreach-report-aa18be0666b5
原文链接:https://medium.com/coinmonks/economic-analysis-of-eip-1559-a-summary-afac46533928
字数:3000
作者:Saša Milić
译者:@blcold
翻译机构:DAOSquare