- The blobs are coming: Dencun will go live on Goerli at 6:32 UTC on January 17, 2024.
- Dencun will be Goerli's last upgrade before core teams stop supporting it. More on this in a previous post.
- Assuming the Goerli upgrade goes well, the Sepolia and Holesky testnets will activate Dencun over the next few weeks.
- To receive an email alert for network upgrade announcements, subscribe here.
The Dencun network upgrade is scheduled to activate on the Goerli testnet at 6:32 UTC on January 17, 2024. The upgrade includes several changes, most notably the introduction of ephemeral data blobs with EIP-4844, also known as "protodanksharding", which will help reduce L2 transaction fees.
Dencun follows last year's Shapella upgrade. It will first be deployed to the Goerli testnet. Then, if no major issues are found, to Sepolia and Holesky. Once Dencun is running smoothly on all three testnets, mainnet activation will be scheduled.
Dencun will be Goerli's last upgrade. After it has been activated on mainnet, client and EF testing teams will stop supporting the Goerli testnet. For more details, see this previous announcement.
Upgrade Specification
The Dencun upgrade combines changes to both Ethereum's consensus and execution layers. The full list of protocol changes can be found in EIP-7569. For reference, they are:
- EIP-1153: Transient storage opcodes
- EIP-4788: Beacon block root in the EVM
- EIP-4844: Shard Blob Transactions
- EIP-5656: MCOPY - Memory copying instruction
- EIP-6780: SELFDESTRUCT only in same transaction
- EIP-7044: Perpetually Valid Signed Voluntary Exits
- EIP-7045: Increase Max Attestation Inclusion Slot
- EIP-7514: Add Max Epoch Churn Limit
- EIP-7516: BLOBBASEFEE opcode
Deneb
Complete python specifications for changes affecting Ethereum's consensus layer can be found in the deneb folder of the ethereum/consensus-specs repository.
Cancun
The EIPs linked above contain the full specifications for changes affecting Ethereum's execution layer.
Additionally, a python specification for these is being implemented in the ethereum/execution-specs repository.
Lastly, Deneb requires changes to the Engine API, used for communication between the consensus and execution layer nodes. These are specified in the cancun.md file of the ethereum/execution-apis repository.
Client Releases
The following client releases support Dencun on Goerli. Further versions will activate support on other testnets and mainnet. Once these are released, another announcement will be made here.
When choosing which client to run, validators should be especially mindful of the risks of running a majority client on either the execution layer (EL) or consensus layer (CL). An explainer of these risks and their consequences can be found here. An estimate of current EL and CL client distribution and guides for switching from one client to another can be found here.
Consensus Layer Goerli Releases
Name | Version | Link |
---|---|---|
Lighthouse | 4.6.0-rc.0 | Download |
Lodestar | 1.14.0-rc.1 | Download |
Nimbus | 24.1.1 | Download |
Prysm | 4.2.0-rc.1 | Download |
Teku | 24.1.0 | Download |
Note: when running a validator, both the Consensus Layer Beacon Node and Validator Client must be updated.
Execution Layer Goerli Releases
Name | Version | Link |
---|---|---|
Besu | 24.1.0 | Download |
Erigon | 2.56.0 | Download |
go-ethereum | 1.13.9 | Download |
Nethermind | 1.25.0 | Download |
Reth | 0.1.0-alpha.14 | Download |
Note: while Reth supports Dencun, the client is still pending a full audit and is not recommended for production use. See the Reth README for more context.
Dencun Bug Bounty Bonus
All Dencun-related bug bounties for in-scope vulnerabilities will receive a 2x multiplier between now and two weeks prior to when the mainnet upgrade is scheduled to take place. Critical bugs are now worth up to $500,000 USD! See the bug bounty program for more details.
FAQ
As an Ethereum user or Ether holder, is there anything I need to do?
In short, no.
If you use an exchange, digital wallet or hardware wallet you do not need to do anything unless you are informed to take additional steps by your exchange or wallet provider.
If you run your own Ethereum node, see the next question.
As a non-staking Goerli node operator, what do I need to do?
To be compatible with the Goerli upgrade, update your node to the version of your Ethereum client listed in the table above.
As a Goerli staker, what do I need to do?
To be compatible with the Goerli upgrade, update your node to the version of your Ethereum client listed in the table above. Make sure both your beacon node and validator client are updated!
As a non-Goerli node operator or staker, what do I need to do?
Nothing for now. Further announcements will be made for Dencun's activation on Sepolia, Holesky and mainnet. You can sign up to receive an email alert for them here.
Stakers who want to run through the upgrade process more times before mainnet are encouraged to use ephemery.dev, which will soon support Dencun.
What happens if I am a Goerli staker or node operator and I do not participate in the upgrade?
If you are using an Ethereum client that is not updated to the latest version (listed above), your client will sync to the pre-fork blockchain once the upgrade occurs.
You will be stuck on an incompatible chain following the old rules and will be unable to send Ether or operate on the post-Dencun Ethereum network.
As an application or tooling developer, what should I do?
Review the EIPs included in Dencun to determine if and how they affect your project --- there are many new exciting features being introduced across both the execution and consensus layers! The only EIPs with backwards compatibility implications are EIP-6780, EIP-7044 and EIP-7514.
Where can I follow the upgrade happening?
The Goerli upgrade will be livestreamed here.
Why "Dencun"?
Upgrades to the consensus layer use star names, and those to the execution layer follow Devcon city names. "Dencun" is the combination of Deneb, a first-magnitude star in the Cygnus constellation, and Cancun, the location for Devcon 3.
Original cover image by Darren Lawrence, with modifications by Tomo Saito.