Skip to main content

An Intro to EIP-4844 (Proto-Danksharding)

Updated on
Mar 20, 2024

4 min read

info

EIP-4844 was implemented on Ethereum mainnet with the Dencun upgrade on 03/13/2024

One of the biggest implementations to Ethereum that happened in 2022 was the transition to Proof-of-Stake (PoS). Now, one of the next biggest improvements to Ethereum is being scheduled for later this year, EIP-4844 (Proto Danksharding). This guide will cover what EIP-4844 is and how it will benefit Ethereum and other layer 2 rollup solutions.

Ethereum Architecture and History

Before we cover EIP-4844, you should understand the current architecture of Ethereum and its bottlenecks.

Previously in Proof-of-Work (PoW), there was one monolithic chain containing both the consensus (i.e., PoW) and EVM logic to operate the blockchain. Later, in 2020, the Beacon chain was born, which was the first step toward moving Ethereum to a Proof-of-Stake architecture. It wasn't until last year's (Sept. 2020) Paris upgrade (The Merge) that Ethereum fully transitioned to a Proof-of-Stake consensus mechanism. This consisted of enabling the execution client to take instruction from consensus clients and adding a new engine API which contained internal API methods for communicating between execution and consensus clients since they are now separate pieces of software.

Although the transition to Proof-of-Stake was a significant development toward scaling Ethereum and its sibling L2 chains (i.e., Optimism, Arbitrum), it was not the end. With EIP-4844, Ethereum is moving towards adopting an architecture called Sharding. This will add a data layer (holding storage) that will interact with the execution client (the EVM) and other L2 chains. The main benefits of this EIP will include reduced transaction fees for layer 2 rollup solutions.

Sharding

Ethereum's goal is to scale computation without trading off decentralization and security. For this to occur, data needs to be stored efficiently and easily retrievable to end users. An architecture called Sharding is proposed to help.

Sharding is a method of distributing data across multiple machines, enabling more efficiency as it can process more data at a faster rate. In the context of blockchain, Sharding refers to dividing the network into smaller groups, or "shards", that can process transactions in parallel. This allows for more throughput as every participating node on the network doesn't need to process every transaction. Sharding is one of the main goals for Ethereum to scale. Scaling will also benefit other blockchains, such as layer 2 rollups which have to submit data onto Ethereum, which can get expensive. For Sharding to be implemented on Ethereum, it is projected that the Ethereum development team will implement another version of Sharding called Proto-Danksharding first which we will discuss next.

What is EIP-4844 (Proto-Danksharding)

EIP-4844, also referred to as Proto-Danksharding, proposes to implement the majority of the "scaffolding" and logic (such as transaction formats and verification procedures) that make up a complete Danksharding specification, but not yet any sharding. The goal of this EIP is to make it more efficient for layer 2 rollup solutions to scale without having to wait for full Sharding to be implemented.

How does EIP-4844 work?

EIP-4844 will implement a new transaction type that will hold an additional data field called a blob. A blob can be considered an opaque byte string up to ~125 kB in size. These blobs are committed with a new type of cryptography called KZG (a fixed-size vector commitment scheme) and are forward compatible with data availability sampling and can assist in alleviating the network's burden from growing block sizes and unsustainable transaction gas costs. You can find more information regarding these KZG commitments here.

Transactions carrying blobs allow layer 2 solutions to retrieve the data in a manageable timeframe and query it cheaper than calldata (since the data is smaller). Note that blobs will only persist in the consensus layer (aka Beacon nodes) for a period of time. Additionally, future work won't require composability with the execution layer (aka EVM). The addition of the blob in transactions will expose a new fee market that is separate from the gas market used to pay for transactions.

Once EIP-4844 is implemented, layer 2 solutions will benefit the most from this EIP as transactions posted to layer 1 will be 10-100x cheaper, helping end users.

In the next section, we will cover the benefits Ethereum should see with EIP-4844 implemented in the short and long term.

Benefits of EIP-4844

EIP-4844 is taking the first step forward toward Sharding. This will initially help layer 2 rollup solutions the most and eventually help Ethereum reduce its gas fees and onboard the next million users.

What is QuickNode?

To build on Ethereum, you'll need access to a node. You're welcome to use public nodes or deploy and manage your own infrastructure; however, you can also leave the heavy lifting to us and get optimized response times by using a QuickNode endpoint.

Create a free account and create an endpoint.

QuickNode Endpoint Creation

Then you can head to QuickNode Docs and use one of the ready code examples to test different RPC methods against the Ethereum network.

Here's a sample request to retrieve transactions within the latest block.

curl <YOUR_QUICKNODE_HTTP_ENDPOINT> \
-X POST \
-H "Content-Type: application/json" \
--data '{"method":"eth_getBlockByNumber","params":["latest",false],"id":1,"jsonrpc":"2.0"}'

Remember to replace the YOUR_QUICKNODE_HTTP_ENDPOINT placeholder above with your actual HTTP Provider URL.

Additional Resources

If you would like to stay updated with the latest happenings on EIP-4844 Proto-danksharding. Check out the following resources:

If you want to try running EIP-4844 on Devnet, check out this repository.

Closing Thoughts

Tell us what you think about EIP-4844 on Twitter or Discord!

We ❤️ Feedback

If you have any feedback on this guide, let us know.

Share this guide