Ethereum Foundation Blog: What do we need to do with the last testnet merge coming up?

After several years of hard work to bring Proof of Stake to Ethereum, we have now entered the final testing phase: testnet deployment!

As the last testnet to transition to proof-of-stake, Goerli will merge with Prater. The combined Goerli/Prater network will retain the Goerli name.

The Bellatrix upgrade on the Prater testnet in preparation for the merge will be activated at epoch 112260, expected at 12:24PM UTC on August 4, 2022

After the Bellatrix upgrade is activated, the Goerli/Prater merger will occur when Goerli reaches the total difficulty value of 10,790,000, expected between August 6-12, 2022.

After the merger, Goerli’s validator set will remain open for individual stakers to run testnet validators. To launch a Goerli/Prater validator staking cart head to the Prater Launchpad.

background

After several years of hard work to bring Proof of Stake to Ethereum, we have now entered the final testing phase: testnet deployment!

After several development testnets, shadow forks, and deprecated testnets, Sepolia recently transitioned to proof-of-stake. Now, there is only one testnet left: Goerli and its matching beacon chain, Prater.

The merger differs from previous Ethereum upgrades in two ways. First, node operators need to upgrade their Consensus Layer (CL) and Execution Layer (EL) clients, not one of the two. Then, the upgrade is activated in two stages: the first stage is the Bellatrix upgrade, which is activated at a public epoch height on the beacon chain, and the second is the Paris upgrade, which reaches a Total Difficulty (total difficulty) on the execution layer. ) value is activated.

Upgrade information

time

The merger is done in two steps. It starts with a Bellatrix network upgrade on the consensus layer, triggered by an epoch height. Next is the upgrade Paris, where the execution layer transitions from proof-of-work to proof-of-stake, triggered by a specific Total Difficulty threshold, known as Terminal Total Difficulty (TTD).

The Bellatrix upgrade is scheduled to activate at epoch 112260 on the Prater Beacon Chain, expected at 12:24PM UTC on August 4, 2022. Part of Paris on the execution layer will be triggered when the Terminal Total Difficulty (TTD) of the Goerli testnet reaches 10,790,000, expected on August 6-12, 2022.

Once the execution layer exceeds the TTD, the next block will be produced entirely by beacon chain validators. Once the beacon chain finalizes the block, we consider the merge complete. Assuming normal network conditions, this should be done 2 epochs after the first block is triggered after the TTD, which is about 13 minutes later!

There is a new JSON-RPC block tag finalized, which returns the latest finalized block, or an error if no such merged block exists. This tag can be used by the application to check if the merge has been completed. Likewise, the smart contract can query the DIFFICULTY opcode (0x44), which is renamed PREVRANDAO after the merge, to determine if the merge has occurred. We recommend that infrastructure providers monitor the stability of the entire network in addition to monitoring the finalized status.

client version

The following client versions support the merging of the Goerli and Prater testnets. Node runners must run an Execution Layer (EL) client and Consensus Layer (CL) client to remain in the network during and after the merger.

When choosing which clients to run, validators should pay particular attention to the risk of running a majority of clients on EL and CL. See this explainer article on these risks and their consequences. An estimate of the current distribution of EL and CL clients and guidelines for switching from one client to another can be found in this article.

consensus layer

  • Lighthouse Geardude Clockberg (v2.4.0) 
  • Lodestar v0.41.0
  • Prysm v2.1.4-rc.0 
  • Cloud v22.7.0 
  • Ocean 22.7.0

executive layer

  • Besu 22.7.0-RC3
  • Erigon 2022.07.03-alpha
  • go-ethereum (geth) v1.10.21
  • Nethermind 1.13.5

upgrade specification

The merged consensus key changes are detailed in two places:

Changes to the consensus layer, in the bellatrix directory of the consensus specification repository

Changes to the execution layer, in the Paris spec of the execution specification repository

Additionally, two other specifications cover how the consensus layer and execution layer clients interact:

The Engine API is described in the execution-apis repository and is used for communication between the consensus layer and the execution layer

Optimistic Sync is specified in the sync folder of the consensus specification repository, it is used by the consensus layer to import blocks when the execution layer is synchronized, and provides the execution layer with a partial view of the consensus layer chain header.

FAQ

What should I do as a node runner?

After the merger, an Ethereum full node will combine a consensus layer client (running the PoS beacon chain) and an execution layer client (managing user state and running transaction-related computations). They communicate via an authenticated port (using a new set of JSON RPC methods called the Engine API). The execution layer client and the consensus layer client use an encrypted JWT to authenticate each other. Node runners need to consult their client documentation on how to generate and configure this information.

In other words, if you already have a node running on the beacon chain, you now also need to run an execution layer client. Likewise, if you are running a node on the current PoW network, then you will need to run a consensus layer client. In order for them to communicate securely, a JWT token must be passed to each client. Brief instructions for running a node on the Goerli/Prater network can be found here.

It is worth emphasizing that while both beacon chain nodes and validator clients are part of the consensus layer client, running a beacon chain node is not the same as running a validator client. Validators must run both, while node runners only need to run beacon chain nodes. This post explains the difference between the two components in more detail: https://docs.ethhub.io/ethereum-roadmap/ethereum-2.0/eth-2.0-client-architecture/

Also, note that both the consensus layer and the execution layer maintain an independent set of peers and expose its own API. APIs for both Beacon and JSON RPC will continue to work as expected.

What do I need to do as a staker?

The Goerli/Prater merger is everyone’s last chance to ensure validators are properly configured before the mainnet transition. We strongly recommend participating in this merger to avoid any unforeseen issues on mainnet.

As mentioned above, after the merger, validators on the beacon chain will need to run an execution-layer client in addition to their consensus-layer client. We strongly recommend that you do this before merging, but validators can outsource these functions to third-party providers. This is possible because the only data the execution layer needs are updates to the deposit contract.

After merging, validators need to ensure that the transactions in the blocks they create and prove are valid. In order to do this, each beacon node must be paired with an executive layer client. Note that multiple validators can still be paired with a single beacon node and execution layer client combination. While this increases the validator’s liability, it also entitles the validator of the proposed block to receive a priority fee for their associated transactions (currently this fee is captured by miners).

While validator rewards are accumulated on the beacon chain and cannot be raised until subsequent network upgrades, transaction fees will continue to be paid, destroyed, and distributed at the execution layer. Validators can designate any Ethereum address as the recipient of transaction fees.

After updating your consensus layer client, make sure to set the fee recipient when setting up the validator client to ensure transaction fees are sent to addresses you control. If a third-party provider is selected for staking, it is up to the provider of your choice to specify how these fees are distributed.

The Prater Staking Launchpad has a merge readiness checklist that validators can use to ensure they have gone through every step of the process. The EthStaker team will also be hosting a merge validator preparation workshop on July 29.

Why is the estimated time span for Terminal Total Difficulty so large?

The increased difficulty fluctuations per block make estimates of TTD more difficult than block or epoch heights, and thus a wider range of expectations. Users should be aware that this will also happen during the transition period of the mainnet due to changes in the proof-of-work hash rate.

What should I do as an app or tool developer?

The Goerli testnet is ready to merge, and now is your last chance to make sure your product goes through the PoS transition smoothly and works as intended in the merged environment. As stated in the previous blog post, the merger will only have a very weak impact on a subset of contracts deployed on Ethereum and should not break any contracts. Additionally, most of the user’s application programming interface (API) endpoints will remain stable (unless using Proof of Work specific methods such as eth_getWork).

Still, most applications on Ethereum involve much more than on-chain contracts. Now you want to make sure your front-end code, tools, deployment pipelines, and other off-chain components work as expected. We strongly recommend that developers perform a full testing and deployment cycle on Ropsten (or Kiln) and report issues with any tools or dependencies to the maintainers of these projects. If you are not sure where to create an issue, please use this repository.

Also, you need to be aware that all testnets except Sepolia and Goerli will be shut down after the merger. If you are a user of the Ropsten, Rinkeby or Kiln testnets, you should plan to migrate to the Goerli or Sepolia testnets. For more details, please read the article “Ropsten, Rinkeby and Kiln Testnet Deprecation Announcements”.

What do I need to do as an Ethereum user or ETH holder?

unnecessary. The Ethereum mainnet is not affected by this testnet. We will make follow-up announcements in this blog ahead of the mainnet transition.

What do I need to do as a miner?

unnecessary. If you are mining on the Ethereum mainnet or the Sepolia testnet, you need to be aware that each network will operate entirely under PoS consensus after the merger. At that point, mining will no longer be possible on the network.

As a validator, can I stake my stake?

cannot. The merger is Ethereum’s most complex upgrade to date. In order to minimize the risk of network outages, we took the minimum feasible approach, which means that in this upgrade, we put aside all changes that are not related to the PoW->PoS transition.

The ability to withdraw funds from the beacon chain may be introduced in the first upgrade after the merger. The specification of the consensus layer and the execution layer is being promoted.

I have more questions, where can I ask?

The EthStaker community has set up a discord channel to answer questions from stakers and node runners. You can join their discord and ask for help at #goerli-prater. As mentioned above, EthStaker will also host a merge validator preparation workshop on July 29.

Additionally, a merged community meeting is scheduled for August 12th at 14:00 UTC. Client developers and researchers will answer questions from node operators, stakers, infrastructure & tool providers, and community members. Note that this community call is expected to take place after the Goerli/Prater merger.

When will it be merged?

As of this writing, no date has been set for the Ethereum mainnet merger. Any mention of a merger date could be a hoax. Updates will be posted on the Ethereum Foundation blog, don’t be fooled!

Assuming no problems are found in the Goerli/Prater merger, when the client releases a fully functional version, we will select the slot height to activate the Bellatrix upgrade on the mainnet beacon chain, and set the total difficulty value used to trigger the mainnet transition. The client will release the version for the mainnet merge. We’ll be making announcements on this blog and other community platforms.

All of the above are based on the premise that no problems have been found. If issues are identified at any point during this process, or the testing coverage is determined to be insufficient, we will address those issues before moving forward with the deployment process.

Only then will it be possible to estimate the exact date of the merger.

That is soon.

Posted by:CoinYuppie,Reprinted with attribution to:https://coinyuppie.com/ethereum-foundation-blog-what-do-we-need-to-do-with-the-last-testnet-merge-coming-up/
Coinyuppie is an open information publishing platform, all information provided is not related to the views and positions of coinyuppie, and does not constitute any investment and financial advice. Users are expected to carefully screen and prevent risks.

Like (0)
Donate Buy me a coffee Buy me a coffee
Previous 2022-07-29 10:14
Next 2022-07-29 10:15

Related articles