EIP-4844: The Core of the Cancun Upgrade
Original Title: 《 EIP-4844: The Core of the Cancun Upgrade》
Original Source: Ebunker Chinese
One of the biggest obstacles to the mass adoption of Ethereum is that users must pay high gas fees to conduct transactions or interact. As on-chain activity increases, gas fees also rise significantly, thereby raising the user threshold.
To improve Ethereum's L1 + L2 performance and address the gas fee issue, the Ethereum Foundation proposed EIP-4844 to reduce gas fees and increase throughput as a mid-term transitional solution. This article will detail EIP-4844 and why it is crucial for the implementation of Ethereum's roadmap.
Introduction to EIP-4844
Ethereum EIP-4844 is the core content of the Cancun upgrade, introducing a new transaction type (blob-carrying transaction) to reduce Ethereum's transaction fees. Blob-carrying transactions are similar to regular Ethereum transactions but include additional data known as blobs. Compared to the current calldata that stores transaction data immutably and is read-only in memory, blobs are much larger and cheaper to store.
From the distinction between blockspace and blob space in the above image, blobs are different from blocks visible to the Ethereum Virtual Machine (EVM); blobs are only available for a short time and are invisible to the EVM. Furthermore, blobs are located on the Ethereum consensus layer rather than on the computation-focused execution layer. Most importantly, blob space is significantly cheaper than blockspace.
EIP-4844 is also known as Proto-Danksharding, which will implement the framework and logic of Danksharding alongside the new transaction format and validation rules.
EIP-4844 Development Timeline
Over the past three years, Ethereum has undergone a series of upgrades, transitioning from PoW to PoS consensus and making its blockchain more scalable.
Here is a timeline and overview of significant updates to Ethereum:
- December 1, 2020: The PoS-driven Beacon Chain went live, allowing Ethereum users to stake their ETH on a separate Beacon Chain to validate transactions.
- September 2022: The Beacon Chain merged with the Ethereum mainnet, combining the network's execution layer and consensus layer.
- April 13, 2023: The Shanghai upgrade (EIP-4895) went live, enabling ETH staking withdrawals for Ethereum validators.
These upgrades are essential for improving Ethereum's scalability, but they do not directly enhance the blockchain's transaction speed or gas prices. Future upgrades like sharding and Danksharding will enable Ethereum to achieve true scalability.
What is Sharding?
Sharding refers to dividing a blockchain network into smaller units called "shard chains." Each shard chain can process transactions in parallel, maximizing transaction throughput, reducing network congestion, and lowering gas fees. In other words, sharding is a way to partition a database into smaller databases that manage specific segments of data, thereby improving the efficiency and performance of these databases.
Due to the high complexity of sharding technology, Ethereum decided to adopt an intermediate solution, implementing Proto-Danksharding first, and eventually transitioning to the more easily achievable Danksharding.
What is Danksharding?
Danksharding is a new sharding architecture that relies on large-capacity data called blobs to scale the Ethereum blockchain. Rollup-centric layer two protocols use additional blob data space to alleviate network congestion, thereby reducing transaction fees.
Currently, the TPS (transactions per second) of Ethereum's base layer is about 15, while the TPS of its layer two rollups is around 100. Rough estimates suggest that Danksharding is expected to increase Ethereum's TPS (considering L1 + L2 as a whole) to 100,000.
Another innovation of Danksharding is the merged fee market, where only one proposer selects transactions for all shards, rather than each shard having its own proposer. To ensure the smooth operation of this merged fee market and alleviate the issue of maximum extractable value (MEV), a method called proposer-builder separation will also be implemented (where the proposer refers to the Ethereum protocol validator that chooses which transactions to include in the next block).
However, implementing full Danksharding on Ethereum is not a one-step process; it requires several upgrades to be gradually realized, such as EIP-4844 (Proto-Danksharding).
What is Proto-Danksharding?
Proto-Danksharding is named after two Ethereum researchers, Proto Lambda and Dankrad Feist. It is expected to increase Ethereum's TPS to around 1,000 and is a simpler step required before achieving full Danksharding. Most importantly, it will introduce a new transaction type that accepts blob data, which is a crucial component for enabling full Danksharding.
Vitalik Buterin believes that Proto-Danksharding executes most of the logic and framework of Danksharding but does not yet implement any actual sharding. In other words, Proto-Danksharding is a prototype of Danksharding, providing the framework for future sharding upgrades.
How Does EIP-4844 Reduce Gas Fees?
The primary goal of EIP-4844 (Proto-Danksharding) is to reduce Ethereum gas fees by using blob-carrying transactions. Blob data is cheaper, and the Ethereum Virtual Machine (EVM) cannot access it; it can only view commitments to the blobs. Additionally, the data bandwidth in Proto-Danksharding is fixed at 1 MB per slot.
Simply making calldata cheaper may lead to mismatches in average or worst-case scenarios; therefore, Ethereum developers are attempting to establish a new type of blob-carrying transaction (focusing on transactions from L2 Rollups) to reduce gas fees.
The average block size of Ethereum is about 90 KB, but theoretically, the maximum block size is around 1.8 MB. This means that Ethereum blocks can accommodate more transactions during periods of high network activity, but at very high gas fees. If calldata becomes ten times cheaper, transaction volume will increase tenfold, and in extreme cases, block size could increase tenfold (to 18 MB). Clearly, Ethereum cannot accommodate such massive blocks in its network.
Solution
Proto-Danksharding addresses the gas pricing crisis through a multi-dimensional EIP-1559 fee market.
Before Proto-Danksharding was proposed, EIP-4488 attempted to tackle the issue of high gas fees.
EIP-4488 has two rules: the gas fee for calldata is reduced from 16 gas units per byte to 3 gas units; and there is a limit of 1 MB per block plus 300 bytes per transaction, with a maximum of about 1.4 MB.
The block size limit is the simplest way to ensure that an average block load surge does not lead to an extreme case load surge. Moreover, the extreme case block size (1.4 MB) is always below the current maximum block capacity (1.8 MB).
Since EIP-4488 had already proposed a solution for the gas issue, why did the Ethereum community ultimately choose EIP-4844 to reduce gas fees? Because while EIP-4488 minimized current fluctuations (maintaining stability), it would require more changes in the future. In contrast, Proto-Danksharding aims to make more framework changes to assist the Ethereum network in upgrading to Danksharding in the future.
Proto-Danksharding creates a separate transaction type that stores data from L2 Rollups in large-capacity blobs, with a limit on the number of blobs present in each block, significantly reducing L2 fees. Blobs are stored on the consensus layer rather than the execution layer, making them inaccessible to the Ethereum Virtual Machine (EVM).
Even after Proto-Danksharding, sharding remains a complex task, but the complexity will be confined to the consensus layer. Therefore, execution layer client teams and rollup developers will not need to do any extra work to transition from Proto-Danksharding to full sharding.
EIP-4844 will also separate blob data from calldata, making it easier to store blob data over shorter time periods.
Data Storage Options for EIP-4844
Proto-Danksharding, with approximately 1 MB per slot (12 seconds), will generate 2.5 TB of data annually. The consensus layer can address data storage challenges through historical retention periods (EIP-4444) and implement logic to automatically delete blob data after a certain period.
Regarding how to access old blob data, there are various methods to store historical data on decentralized protocols. For example, specific application protocols such as rollups, Bittorrent, Ethereum portal networks, block explorers, API providers, and third-party indexing protocols (The Graph) can store complete historical records.
What Upgrades Were There Before and After EIP-4844?
Ethereum developers proposed several upgrades before EIP-4844 to reduce gas fees. For instance, EIP-3651 lowered the gas fees that prevented block builders from interacting with Ethereum block building software Coinbase, EIP-3855 reduced gas fees for developers through Push0, and EIP-3860 decreased gas fees for specific use cases.
EIP-4844 is a step toward full sharding, which will expand the Ethereum network and lower gas fees. Developers are planning a "Verge" after EIP-4844, which will introduce Verkle trees for scalability.
Impact of EIP-4844
The primary goal of EIP-4844 is to reduce Ethereum's L2 gas fees by 10 to 100 times through the use of new blob-carrying transactions, making the transition to full sharding easier, as all future upgrades will occur solely on the consensus layer.
From an architectural perspective, EIP-4844 introduces blob-carrying transactions, marking the first time Ethereum has built a separate data layer for L2, laying the groundwork for subsequent full Danksharding.
From an economic model perspective, EIP-4844 will introduce a new fee market for blobs, which will also be the first step for Ethereum toward a multi-dimensional market.
From a user experience perspective, users will intuitively perceive a significant reduction in L2 fees, and this important underlying improvement will provide a crucial foundation for the explosion of L2 and its application layer.
Conclusion
EIP-4844 is a major upgrade to make the Ethereum network more scalable while requiring fewer updates for future full sharding. Proto-Danksharding increases the space for blob data groups, allowing for more data processing, thereby reducing network congestion and lowering gas fees.
As a highly complex protocol upgrade, EIP-4844 is an important part of the Ethereum roadmap, and it is also related to other system upgrades, such as proposer-builder separation and EIP-1559 blob fee adjustments.
In addition to introducing blob-carrying transactions, EIP-4844 will implement execution layer logic, validation rules, multi-dimensional gas fee markets, and other system changes required for future full sharding.
It is worth noting that while EIP-4844 will implement most of the complete Danksharding logic, it will not achieve any actual sharding. Besides bringing Ethereum closer to the cost and throughput levels needed for mass adoption, EIP-4844 will also enhance scalability and cost savings.
Although EIP-4844 currently does not have a specific release date, it is expected to be implemented later this year. After the implementation of EIP-4844, users will see significant improvements in Ethereum, especially in L2, primarily in faster transactions and lower fees. The successful implementation of EIP-4844 will also make Ethereum more competitive in the cryptocurrency space.