- The Sepolia testnet will undergo a post-merge execution layer (EL) upgrade at block 1735371, expected on August 17, 2022
- The upgrade will cause EL clients on the network to disconnect from peers which have not transitioned to proof-of-stake. It does not add additional functionality beyond this.
- Sepolia node operators must upgrade their execution layer client prior to block 1735371.
- A similar upgrade is expected on Goerli and the Ethereum mainnet once these networks have transitioned to proof-of-stake
Background
In order to maintain a healthy peer list, nodes on Ethereum's execution layer will automatically disconnect peers who do not have the same upgrade sequence as them. On the Ethereum mainnet, this means checking whether a peer upgrded to Frontier Thawing at block 200,000, then Homestead at block 1,150,000, and so on all the way to the latest upgrade, Gray Glacier, which happened at block 15,050,000. EIP-2124 specifies how this is handled. In typical network upgrades, which are triggered by a block height, this happens automatically as nodes use the block height of upcomming upgrades to filter peers.
For The Merge, this was not possible because the upgrade was triggered using a total difficulty value rather than a block number. The rationale for this choice is explained in EIP-3675:
Using a pre-defined block number for the hardfork is unsafe in this context due to the PoS fork choice taking priority during the transition.
An attacker may use a minority of hash power to build a malicious chain fork that would satisfy the block height requirement. Then the first PoS block may be maliciously proposed on top of the PoW block from this adversarial fork, becoming the head and subverting the security of the transition.
To protect the network from this attack scenario, difficulty accumulated by the chain (total difficulty) is used to trigger the upgrade.
To minimize changes to the protocol during its most complex upgrade since launch, the design for The Merge excluded EIP-2124 compatibility. This means an additional upgrade must now be done to add this. It is important to note that the only change introduced as part of this upgrade is specifying a block number that nodes can use to identify peers who have gone through The Merge. No other functionality is introduced or deprecated as part of this upgrade.
Upgrade Information
Timing
This upgrade will happen on Sepolia at block 1735371, expected on August 17, 2022.
Note that a similar upgrade will be announced for Goerli and mainnet after these networks have transitioned to proof-of-stake.
Ropsten will not be upgraded since it is now considered deprecated, along with Rinkeby and Kiln. See this post for more details on their deprecation schedule.
Client Releases
Only execution layer clients need to be updated for this upgrade. Node operators can keep running their current consensus layer client release on Sepolia through the transition.
Note that client releases used for the Goerli/Prater merge all support this upgrade on Sepolia. In other words, if you already downloaded a release for the Goerli/Prater merge, you can use that same version on Sepolia for this upgrade.
Execution Layer
Name | Version | Link |
---|---|---|
Besu | 22.7.0-RC3 | Download |
Erigon | 2022.07.04-alpha | Download |
go-ethereum (geth) | v1.10.21 | Download |
Nethermind | v1.13.5 | Download |
Upgrade Specifications
The specification for this change is tracked as part of the Paris specifications, under the FORK NEXT Upgrade section.
FAQ
As a node operator, what should I do?
You should upgrade your execution layer client to one of the versions listed above before August 16, 2022. Your consensus layer client does not need to be upgraded.
As a staker, what do I need to do?
The validator set on Sepolia is permissioned. If you are part of the current Sepolia validators, you must update your execution layer client to one of the versions listed above on August 16, 2022 at the latest.
If you are not part of the current Sepolia validator set, you do not need to do anything at this time.
Goerli/Prater and mainnet validators will need to follow the same steps when this upgrade is announced on those networks.
As an application or tooling developer, what should I do?
Nothing, unless you are also running a node. If so, please upgrade your execution layer client to one of the versions listed above before August 16, 2022.
As an Ethereum user or Ether holder, is there anything I need to do?
No. The Ethereum mainnet is not affected by this upgrade. Even when this upgrade will be applied to mainnet, there won't be any action needed.
Thank you to Justin Chrn for the original cover image and Tomo Saito for the modifications.