Dencun hard fork

Cancun (execution) + Deneb (consensus) · Mainnet 2024-03-13

Blobs, which let rollups post data cheaply, were introduced and sharply lowered L2 fees.

What changed

Users
The cost and method of transacting directly on Ethereum mainnet did not change. The noticeable change was on L2s. The data cost that rollups paid to mainnet dropped with the introduction of blobs, and the savings were reflected in L2 transaction fees, so transactions sent on L2s became much cheaper. There was no need to change wallets or apps, and you could keep transacting on the L2 you already used.
L2
This was the group that changed the most. Rollups could now place the transaction data they post to mainnet in blobs instead of the existing calldata. Blobs are carried in a space separate from ordinary transactions and have their own fees, so data costs do not spike along with mainnet congestion. Blobs are not stored permanently and are deleted from nodes after a set period, so L2s must retrieve the data within that window and keep it themselves. Major rollups moved to blobs right after the fork, and L2 fees fell sharply.
Wallet & app developers
Transient storage opcodes were added, so values used only within a single transaction, such as reentrancy locks, can be handled far more cheaply than with persistent storage. The MCOPY opcode for copying memory was also added. SELFDESTRUCT was changed so that it deletes code and storage only when called in the same transaction in which the contract was created, and otherwise only sends the balance. The upgrade pattern of redeploying to the same address with CREATE2 after SELFDESTRUCT no longer works, so projects had to move to proxy patterns. Apps that used it only to reclaim balances keep working as before. The beacon block root became readable from the EVM, so staking contracts can check consensus layer information without an oracle.
Node operators
Both execution clients and consensus clients had to be updated before the fork. After the fork, nodes receive and verify blob data and keep it for a fixed period (about 18 days), so bandwidth and disk usage increased. However, blobs are deleted automatically after that period, so they do not accumulate indefinitely the way state does. The reduced scope of SELFDESTRUCT nearly eliminated large-scale state deletion, which lowered the burden of later work that changes the state structure, such as the move to Verkle trees.

Key EIPs

← Hard forks · Roadmap