What is EIP-4844? How Does Cancun Upgrade Reduce Ethereum Transaction Fees?
After the Shanghai Upgrade, the tail end of the PoS consensus transition was completed, marking Ethereum's journey from the "The Merge" phase to the "The Surge" phase. Currently, the Ethereum network urgently needs to address its scalability problem. To maintain consensus, each node must store and verify all transactions occurring on the network, resulting in a situation where there's low performance, high fees, and severe network congestion. This leads us to the impending Cancun upgrade.
Overview of the Cancun Upgrade
After "The Merge", the Ethereum network now has the Consensus Layer which is responsible for PoS consensus, and the Execution Layer which is responsible for executing contract codes. Ethereum is now gearing up for the Cancun-Deneb upgrade, often simply referred to as the Cancun upgrade. Here, "Deneb" signifies updates to the Consensus Layer, and "Cancun" signifies updates to the Execution Layer.
The upgrade aims to enhance the network's scalability, security, and data availability by increasing data storage and reducing transaction costs, paving the way for a fully sharded network in the future.
According to official Ethereum documents, the Cancun upgrade will comprise five EIPs (Ethereum Improvement Proposals), with EIP-4844 being the main content.
We'll further introduce EIP-4844 in the next chapter. Here's a brief overview of these EIPs:
- EIP-1153: Reduces the cost of on-chain data storage to enhance block space.
- EIP-4788: Improves the design of cross-chain bridges and staking pools.
- EIP-5656: Introduces minor code changes related to the Ethereum Virtual Machine (EVM).
- EIP-6780: Eliminates code that could potentially terminate smart contracts.
The Cancun upgrade is expected to roll out in the second half of 2023, with the specific date yet to be confirmed. As per Alex Stokes, a researcher from the Ethereum Foundation, the probable activation date for the Cancun upgrade might be in October 2023.
EIP-4844 (Proto-Danksharding)
EIP-4844, also known as Proto-Danksharding, can be viewed as a preliminary version of the Danksharding scalability solution, serving as a temporary measure before the completion of Ethereum 2.0. Its goal is to meet blockchain application data demands by enabling Ethereum nodes to temporarily store and access off-chain data.
Danksharding
Sharding is a Layer 1 scalability solution. It divides the blockchain network into multiple smaller regions or "shards". Each shard contains the state and transaction history of specific types of addresses, and these records are isolated from other shards. When sharding is activated, each node in the blockchain network only stores and processes transactions within its respective shard, instead of processing transactions from the entire network. However, based on the "blockchain trilemma" theory, as scalability improves with sharding, the network's decentralization and security might relatively diminish.
Danksharding is a new sharding design proposed by Ethereum researcher Dankrad Feist in late 2021, and it's set to replace the initial idea of introducing 64 shard chains.
Instead of focusing on addressing the shortcomings of the first-generation sharding solution, Danksharding emphasizes improving the data availability for Rollups. It introduces a novel concept: instead of distributing all data across different shard chains, all the data is bundled together, resulting in a mega-block (the block's data is then dispersed into 256 groups). In this way, Ethereum's Layer 1 becomes a unified settlement & data availability layer, concentrating solely on data challenges. Different Layer 2 teams can then focus on their respective Rollups development challenges, significantly boosting scalability efforts.
In simpler terms, Danksharding aims to realize the ideal vision of "centralized block production, decentralized verification, and censorship resistance." Consequently, it's regarded as the most promising pathway to overcome the blockchain trilemma. However, due to technical implementation challenges, the Cancun upgrade will adopt a short-term, intermediate solution by launching the "preliminary version of Danksharding," also known as Proto-Danksharding.
In simpler terms, Danksharding aims to realize the ideal vision of "centralized block production, decentralized verification, and censorship resistance." Consequently, it's regarded as the most promising pathway to overcome the blockchain trilemma. However, due to technical implementation challenges, the Cancun upgrade will adopt a short-term, intermediate solution by launching the "preliminary version of Danksharding," also known as Proto-Danksharding.
Proto-Danksharding
It was proposed by OP Labs' Protolambda and their team, from which the name is derived. As a precursor to Danksharding, Proto-Danksharding will implement many of the changes proposed in Danksharding. However, it doesn't actually shard the data; all validators and users still have to directly verify the full data's availability.
Among the many updates set to be implemented in Proto-Sharding, the most significant is the introduction of the "BLOB" concept. This brings a new transaction type to the network, known as the "Blob-carrying transaction," and a new fee system called the "Multi-Dimensional Fee Market."
BLOB and Blob-Carrying Transaction
As the name suggests, a Blob-carrying Transaction is a transaction that carries a "Blob." In essence, it's similar to regular transactions but carries an additional chunk of data, the Blob.
So, what is a "Blob"? Standing for Binary Large Object, a Blob is a form of data representing information sent back from Layer 2, meant to be distinct from the Calldata on Layer 1. In layman's terms, the Blob acts as an external temporary storage. It doesn't store Layer 2 transaction data directly in Layer 1, which greatly reduces storage costs. The main advantage is that, for Layer 2, future storage costs will be lower and speeds higher. This will be favorable for Layer 2 and constitutes an initial Ethereum scalability solution.
Currently, data sent from Layer 2 to Layer 1 is in the form of Calldata, which is expensive to store/transfer and occupies valuable Layer 1 storage space. In contrast, Blob data boasts two distinct features:
- Invisibility to the EVM: Blobs cannot be read by contracts. The Ethereum protocol itself does not interpret this data; to verify a Blob, one simply checks whether the Blob is available, i.e., if it can be downloaded from the network. Blob data is stored in consensus layer nodes, consuming fewer resources and incurring lower costs than Calldata, which needs to be read by contracts.
- Expiration Period: Nodes in the consensus layer that store Blob data will periodically "prune" or clean up this data. In other words, Blobs are only available for a specific duration. This makes Blob data less expensive and space-consuming compared to Calldata which needs to be stored permanently on Layer 1. Based on current information, Blob data's storage time in the consensus layer will be between two weeks to a month. After this period, the Blob data is cleared, and it might then be saved in a specific decentralized storage network for user access.
The official metaphor used to describe the relationship between Blob and Ethereum Layer 1 is that of a "Sidecar". For those unfamiliar, a sidecar motorcycle consists of a regular motorcycle with an attached one-wheeled device, providing additional seating. Both parts are interconnected: they move together, starting and stopping with the motorcycle's engine. Yet, each part also has its own distinct functionalities.
Applying this metaphor to Ethereum, the main motorcycle represents Ethereum's primary Layer 1, while the sidecar represents the Blob. This means that while the operation of the Blob is dependent on the main chain (like how the sidecar's movement is dependent on the motorcycle), it also runs parallel to the main chain and possesses a degree of autonomy, much like how a sidecar has its own distinct space separate from the motorcycle.
Multi-Dimensional Fee Market
Indeed, as mentioned earlier, Blob data is stored in consensus layer nodes and has a specific lifespan. Given the difference in resource consumption and costs between Blob data and Calldata data, it's only logical to expect the introduction of a new fee market with a Gas pricing mechanism different from the traditional Layer 1 network. This aligns with Vitalik Buterin's vision of a "Multi-Dimensional Fee Market."
The idea behind the Multi-Dimensional Fee Market is to have a more flexible and dynamic fee system that can adjust to different types of data and transaction needs, ensuring a more efficient and fair pricing system.
As of now, the specific details of this multi-dimensional fee mechanism have not been fully disclosed.
Benefits Brought by EIP-4844 and the Cancun Upgrade
In terms of the upgrade content itself, the introduction of the Blob concept lays a solid foundation for Ethereum's future implementation of Danksharding. This also propels the Ethereum network closer to achieving the "Multi-Dimensional Fee Market" advocated by Vitalik Buterin. Users will experience a significant reduction in transaction costs in Layer 2 and later in Layer 1.
Looking forward, we can anticipate a significant reduction in transaction fees on the Ethereum network and an enhancement in its performance. These developments will provide a crucial foundation for the growth of the Layer 2 ecosystem on the Ethereum network, including an explosion of applications.
From a more immediate perspective, the Cancun upgrade is expected to benefit Ethereum's Layer 2, and the still-trending LSDFi (Layer-Scale Decentralized Finance). The news of the upgrade's expected launch in October might present users with a golden opportunity to "DCA (Dollar Cost Average) their ETH bags."
Ethereum
Sharding
What else do you want to learn?