没有合适的资源?快使用搜索试试~ 我知道了~
EIP-1559 is a proposal to make several tightly coupled additions to Ethereum’s transaction fee mechanism, including variable-size blocks and a burned base fee that rises and falls with demand. This report assesses the game-theoretic strengths and weaknesses of the proposal and explores some alternative designs.
资源推荐
资源详情
资源评论
Transaction Fee Mechanism Design for the Ethereum Blockchain:
An Economic Analysis of EIP-1559
∗
Tim Roughgarden
†
December 1, 2020
Abstract
EIP-1559 is a proposal to make several tightly coupled additions to Ethereum’s transaction
fee mechanism, including variable-size blocks and a burned base fee that rises and falls with
demand. This report assesses the game-theoretic strengths and weaknesses of the proposal and
explores some alternative designs.
Contents
1 TL;DR 2
1.1 A Brief Description of EIP-1559 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Ten Key Takeaways . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Organization of Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Transaction Fee Mechanisms in Ethereum: Present and Future 4
2.1 Transactions in Ethereum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 First-Price Auctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 EIP-1559: The Nuts and Bolts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.4 An Informal Argument for EIP-1559 . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3 The Market for Ethereum Transactions 8
3.1 Market-Clearing Prices and Outcomes . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2 Will EIP-1559 Lower Transaction Fees? . . . . . . . . . . . . . . . . . . . . . . . . . 10
4 The Purpose of EIP-1559: Easy Fee Estimation 12
4.1 The Problem of Fee Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2 Auctions vs. Posted-Price Mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . 13
∗
This work was funded by the Decentralization Foundation (https://d24n.org/). This report has benefited
from comments by and discussions with a number of people: Maryam Bahrani, Abdelhamid Bakhta, Tim Beiko,
Vitalik Buterin, Matheus Ferreira, Danno Ferrin, James Fickel, Hasu, Georgios Konstantopoulos, Andrew Lewis-
Pye, Barnab´e Monnot, Daniel Moroz, Mitchell Stern, Alex Tabarrok, and Peter Zeitz. Thanks to James also for
introducing me to the problem.
†
Author’s permanent position: Professor of Computer Science, Columbia University, 500 West 120th Street, New
York, NY 10027. Email: tim.roughgarden@gmail.com. Disclosure: I have no financial interests in Ethereum, either
long or short.
1
5 Incentive-Compatible Transaction Fee Mechanisms 14
5.1 The Basic Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.2 Allocation, Payment, and Burning Rules . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.3 Incentive Compatibility (Myopic Miners) . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.4 Incentive Compatibility (Users) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.5 Off-Chain Agreements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
6 Formal Analysis of the 1559 Mechanism with Myopic Miners 24
6.1 The 1559 Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.2 The 1559 Mechanism Is Incentive Compatible for Myopic Miners . . . . . . . . . . . 25
6.3 The 1559 Mechanism Is Typically Incentive Compatible for Users . . . . . . . . . . . 26
6.4 The 1559 Mechanism Is OCA-Proof . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
7 Miner Collusion at Longer Time Scales 29
7.1 Extreme Collusion: The 100% Miner Thought Experiment . . . . . . . . . . . . . . . 29
7.2 First-Price Auctions with a 100% Miner . . . . . . . . . . . . . . . . . . . . . . . . . 30
7.3 EIP-1559 with a 100% Miner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7.4 First-Price Auctions: Do Miners Collude? . . . . . . . . . . . . . . . . . . . . . . . . 33
7.5 EIP-1559: Will Miners Collude? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
7.6 Caveats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
8 Alternative Designs 38
8.1 Paying the Base Fee to the Miner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
8.2 Fee-Burning First-Price Auctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
8.3 Paying the Base Fee Forward . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
8.4 The BEOS Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
8.5 The Tipless Mechanism: Trading Off UIC and OCA-Proofness . . . . . . . . . . . . 43
8.6 Alternative Base Fee Update Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9 Additional Remarks 52
9.1 Side Benefits of EIP-1559 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
9.2 The Escalator: EIP-2593 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
10 Conclusions 54
References 54
1 TL;DR
1.1 A Brief Description of EIP-1559
In the Ethereum protocol, the transaction fee mechanism is the component that determines, for
every transaction added to the Ethereum blockchain, the price paid by its creator. Since its
inception, Ethereum’s transaction fee mechanism has been a first-price auction: Each transaction
comes equipped with a bid, corresponding to the gas limit times the gas price, which is transferred
from its creator to the miner of the block that includes it.
2
EIP-1559 proposes a major change to Ethereum’s transaction fee mechanism. Central to the
design is a base fee, which plays the role of a reserve price and is meant to match supply and
demand. Every transaction included in a block must pay that block’s base fee (per unit of gas),
and this payment is burnt rather than transferred to the block’s miner. Blocks are allowed to grow
as large as double a target block size; for example, with a target of 12.5M gas, the maximum block
size would be 25M gas. The base fee is adjusted after every block, with larger-than-target blocks
increasing it and smaller-than-target blocks decreasing it. Users seeking special treatment, such as
immediate inclusion in a period of rapidly increasing demand or a specific position within a block,
can supplement the base fee with a transaction tip that is transferred directly to the miner of the
block that it includes it.
1.2 Ten Key Takeaways
The following list serves as an executive summary for busy readers as well as a road map for those
wanting to dig deeper.
1. No transaction fee mechanism, EIP-1559 or otherwise, is likely to substantially decrease
average transaction fees; persistently high transaction fees is a scalability problem, not a
mechanism design problem. (See Section 3.2.1 for details.)
2. EIP-1559 should decrease the variance in transaction fees and the delays experienced by some
users through the flexibility of variable-size blocks. (Section 3.2.2)
3. EIP-1559 should improve the user experience through easy fee estimation, in the form of an
“obvious optimal bid,” outside of periods of rapidly increasing demand. (Section 6.3)
4. The short-term incentives for miners to carry out the protocol as intended are as strong under
EIP-1559 as with first-price auctions. (Sections 6.2 and 6.4)
5. The game-theoretic impediments to double-spend attacks, censorship attacks, denial-of-service
attacks, and long-term revenue-maximizing strategies such as base fee manipulation appear
as strong under EIP-1559 as with first-price auctions. (Section 7.5)
6. EIP-1559 should at least modestly decrease the rate of ETH inflation through the burning of
transaction fees. (Section 9.1)
7. The seemingly orthogonal goals of easy fee estimation and fee burning are inextricably linked
through the threat of off-chain agreements. (Sections 8.1–8.2)
8. Alternative designs include paying base fee revenues forward to miners of future blocks rather
than burning them; and replacing variable user-specified tips by a fixed hard-coded tip. (Sec-
tions 8.3 and 8.5)
9. EIP-1559’s base fee update rule is somewhat arbitrary and should be adjusted over time.
(Section 8.6)
10. Variable-size blocks enable a new (but expensive) attack vector: overwhelm the network with
a sequence of maximum-size blocks. (Sections 8.6.5–8.6.6)
3
1.3 Organization of Report
Section 2 reviews Ethereum’s current transaction fee mechanism and provides a detailed description
of the changes proposed in EIP-1559. Section 3 considers the market for computation on the
Ethereum blockchain and the basic forces of supply and demand at work. Section 4 formalizes
the concepts of a “good user experience” and “easy fee estimation” via posted-price mechanisms.
Section 5 defines several desirable game-theoretic guarantees at the time scale of a single block,
and Section 6 delineates the extent to which the transaction fee mechanism proposed in EIP-
1559 satisfies them. Section 7 investigates the possibility of collusion by miners over long time
scales. Section 8 spells out the fatal flaws with some natural alternative designs and identifies
worthy directions for further design experimentation. Section 9 covers additional benefits of the
mechanism proposed in EIP-1559, along with a short discussion of EIP-2593 (the “escalator”).
Section 10 concludes.
Sections 2–4, 7, and 9–10 are relatively non-technical and meant for a general audience. Sec-
tions 5–6 and 8 are more mathematically intense and aimed at readers who have at least a passing
familiarity with mechanism design theory (see e.g. [54] for the relevant background).
1
2 Transaction Fee Mechanisms in Ethereum: Present and Future
This section reviews the economically salient properties of Ethereum transactions (Section 2.1),
the status quo of a first-price transaction fee mechanism (Section 2.2), the nuts and bolts of the
new transaction fee mechanism proposed in EIP-1559 (Section 2.3), and the intuition behind the
proposal (Section 2.4).
2.1 Transactions in Ethereum
The Ethereum blockchain, through its Ethereum virtual machine (EVM), maintains state (such as
account balances) and carries out instructions that change this state (such as transfers of the native
currency, called ether (ETH)). A transaction specifies a sequence of instructions to be executed by
the EVM. The creator of a transaction is responsible for specifying, among other fields, a gas limit
and a gas price for the transaction. The gas limit is a measure of the cost (in computation, storage,
and so on) imposed on the Ethereum blockchain by the transaction. The gas price specifies how
much the transaction creator is willing to pay (in ETH) per unit of gas. For example, the most
basic type of transaction (a simple transfer) requires 21,000 units of gas; more complex transactions
require more gas. Typical gas prices reflect the current demand for EVM computation and have
varied over time by orders of magnitude; readers wishing to keep a concrete gas price in mind could
use, for example, 100 gwei (where one gwei is 10
−9
ETH). The total amount that the creator of a
transaction offers to pay for its execution is then the gas limit times the gas price:
amount paid := gas limit × gas price. (1)
For example, for a 21,000-gas transaction with a gas price of 100 gwei, the corresponding payment
would be 2.1 × 10
−3
ETH (or 1.26 USD at an exchange rate of 600 USD/ETH).
A block is an ordered sequence of transactions and associated metadata (such as a reference to
the predecessor block). There is a cap on the total gas consumed by the transactions of a block,
1
Other economic analyses of EIP-1559 include [8, 30, 50, 51, 59].
4
which we call the maximum block size. The maximum block size has increased over time and is
currently 12.5M gas, enough for roughly 600 of the simplest transactions. Blocks are created and
added to the blockchain by miners. Each miner maintains a mempool of outstanding transactions
and collects a subset of them into a block. To add a block to the blockchain, a miner provides
a proof-of-work in the form of a solution to a computationally difficult cryptopuzzle; the puzzle
difficulty is adjusted over time to maintain a target rate of block creation (roughly one block per 13
seconds). Importantly, the miner of a block has dictatorial control over which outstanding transac-
tions are included and their ordering within the block. Transactions are considered confirmed once
they are included in a block that is added to the blockchain. The current state of the EVM is then
the result of executing all the confirmed transactions, in the order they appear in the blockchain.
2
The transaction fee mechanism is the part of the protocol that determines the amount that a
creator of a confirmed transaction pays, and to whom that payment is directed.
2.2 First-Price Auctions
Ethereum’s transaction fee mechanism is and always has been a first-price auction [15].
3
First-Price Auctions
1. Who pays what? The creator of a confirmed transaction pays the specified gas
limit times the specified gas price (as in (1)).
2. Who gets the payment? The entire payment is transferred to the miner of the
block that includes the transaction.
4
A user submitting a transaction is sure to pay either the amount in (1) (if the transaction is
confirmed) or 0 (otherwise). A miner who mines a block is sure to receive as revenue the amount
in (1) from each of the transactions it chooses to include. Accordingly, many miners pack blocks
up to the maximum block size, greedily prioritizing the outstanding transactions with the highest
gas prices.
5,6
2.3 EIP-1559: The Nuts and Bolts
2.3.1 Burning a History-Dependent Base Fee
EIP-1559, following Buterin [16, 17, 18], proposes a mechanism that makes several tightly coupled
changes to the status quo.
2
Technically, a longest-chain rule is used to resolve forks (that is, two or more blocks claiming a common prede-
cessor). The confirmed transactions are then defined as those in the blocks that are well ensconced in the longest
chain (that is, already extended by sufficiently many subsequent blocks).
3
First-price auctions are also used in Bitcoin [47].
4
We will ignore details concerning transactions that run out of gas or complete with unused gas.
5
Technically, because different transactions have different gas limits, selecting the revenue-maximizing set of
transactions is a knapsack problem (see e.g. [55]). The minor distinction between optimal and greedy knapsack
solutions is not important for this report.
6
We use the word “greedy” without judgment—“greedy algorithm” is a standard term for a heuristic that is based
on a sequence of myopic decisions.
5
剩余57页未读,继续阅读
资源评论
FeelTouchLabs
- 粉丝: 1w+
- 资源: 78
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功