Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EIP: Increase MIN_BASE_FEE_PER_BLOB_GAS #8849

Merged
merged 13 commits into from
Sep 25, 2024
68 changes: 68 additions & 0 deletions EIPS/eip-7762.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
eip: 7762
title: Increase MIN_BASE_FEE_PER_BLOB_GAS
description: Adjust the MIN_BASE_FEE_PER_BLOB_GAS to speed up price discovery on blob space
author: Max Resnick (@MaxResnick)
discussions-to: https://ethereum-magicians.org/t/eip-7762-increase-min-base-fee-per-blob-gas/20949
status: Draft
type: Standards Track
category: Core
created: 2024-08-31
requires: 4844
---

## Abstract

This EIP proposes an increase to the MIN_BASE_FEE_PER_BLOB_GAS to speed up price discovery on blob space.

## Motivation

When scoping 4844, the thinking was that blobs would only enter price discovery once, relatively quickly after the blob rollout; however, this has not been the case. In fact, blobs have entered price discovery several times, and the frequency of price discovery events is likely to increase in the short term as we approach saturation of capacity. Moreover, the roadmap calls for further increases in blob capacity in subsequent hardforks, which may lead to price discovery events happening around those changes in the future.

Increasing the MIN_BASE_FEE_PER_BLOB_GAS will speed up price discovery on blob space.

## Specification

The only specification change introduced by this EIP is setting MIN_BASE_FEE_PER_BLOB_GAS to 2**25:

```diff
+ MIN_BASE_FEE_PER_BLOB_GAS = 2**25
- MIN_BASE_FEE_PER_BLOB_GAS = 1
```

## Rationale
MaxResnick marked this conversation as resolved.
Show resolved Hide resolved

The current MIN_BASE_FEE_PER_BLOB_GAS is 1 wei. This is many orders of magnitude lower than the prevailing price of blobs when blobs enter price discovery. Whenever demand for blobs exceeds supply, blobs enter price discovery, but traversing the 8 orders of magnitude between 1 wei and the point where elasticity of demand starts to decrease takes a long time.

The blob base fee can at most double every $\log_{1.125}(10) = 5.885$ blocks when blocks use all available blob space. When blobs enter price discovery, they must climb many factors of 2 to reach the prevailing price.

To set the parameter apropriately, one aproach is to look at the cost of simple transfers when base fees are low. The cost of a simple transfer when the base fee is 1 GWEI is ~5 cents USD at today's prices (2,445.77$ ETH/USDC). We can try to peg the minimum price of a blob to that. Today, to reach this price, it requires an excess blob gas of `63070646`. When you calculate how long this would take to reach from 0 excess blob gas, you get:

```
63070646/(3 * 2**17) = 160.396947225
```

The closest power of 2 to the corresponding reserve price would be `MIN_BASE_FEE_PER_BLOB_GAS = 2**27`. Out of an abundance of caution, we will go with `MIN_BASE_FEE_PER_BLOB_GAS = 2**25` to ensure that even if the price of ETH rises significantly, the reserve price will not be set too high. This value corresponds to a minimum blob price of ~1 cent at today's prices (2,445.77$ ETH/USDC). Further, decreasing the `MIN_BASE_FEE_PER_BLOB_GAS` beyond `2**25` would slow down price discovery without a significant decrease in the price of blobs when the network is unsaturated.

Below you will find a plot provided by @dataalways showing the fraction of type 3 transaction fees that are paid in blob base fees for different values of `MIN_BASE_FEE_PER_BLOB_GAS`. Note that even after the proposed change, for historical values of l1 gas, the price of blobs would have been dominated by the price of the L1 gas.

![Base Fee 1](../assets/eip-7762/base_fee_1.png)


![Base Fee 2^25](../assets/eip-7762/base_fee_225.png)


---


## Backwards Compatibility

This EIP is not backwards compatible and requires a coordinated upgrade across all clients at a specific block number.

## Security Considerations

Rollups that use blobs as a data availability layer will need to update their posting strategies.

## Copyright

Copyright and related rights waived via [CC0](../LICENSE.md).
Binary file added assets/eip-7762/base_fee_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/eip-7762/base_fee_225.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading