By using this site, you agree to our use of cookies, which we use to analyse our traffic in accordance with our Privacy Policy. We also share information about your use of our site with our analytics partners.

NewsEthereum 2.0Hyperledger BesuTeku

ConsenSys Core Devs Share Insights From The Edelweis Interop Ahead Of The Shanghai Upgrade

Here’s what to expect leading up to Ethereum’s next big scaling improvement: the Shanghai Upgrade.
by Clarissa Watson, Simran JagdevFebruary 1, 2023
ConsenSys core devs update in preparation for the Shanghai Upgrade

Ethereum’s roadmap is often called ambitious, thorough, and profound. Ensuring the network is scalable is one of the key expected outcomes of the roadmap and two important upgrades have been made to the network to this end. First, the launch of the Beacon Chain in December 2020 that ran as a parallel Ethereum state on a Proof of Stake (PoS) consensus mechanism, until it merged with the execution layer in September 2022, popularly known as the Merge, the second upgrade and a historic milestone in Ethereum’s history. As part of the roadmap, the next major release is the Shanghai Upgrade, scheduled sometime in early Q2 of this year.

The Shanghai Upgrade will enable stakers and validators to withdraw the ETH that’s been locked in the execution and consensus layers of the Ethereum network since the switch to the PoS consensus mechanism. 

Ethereum core devs, Ben Edgington, Mikhail Kalinin, and Matt Nelson from ConsenSys met last week as part of a group of 100 Ethereum developers and researchers at the Edelweiss Interop in chilly Austria to prepare for the upgrade. Here’s what we learned from them on how to prepare for Ethereum’s next big upgrade. 

Q&A with core devs about the Shanghai Upgrade implications

Define the Shanghai Upgrade and its primary objective. 

Ben: Strictly, our next upgrade is called Shanghai–Capella. On this occasion we will be simultaneously upgrading both Ethereum’s execution layer (via the Shanghai upgrade) and Ethereum’s consensus layer (via the Capella upgrade).

The main goal is to enable withdrawals from the Beacon Chain. This includes both accrued rewards for stakers who wish to continue staking, and full withdrawals for stakers who wish to exit. Some other minor updates to the EVM (Ethereum Virtual Machine) are included, but the big goal is to enable staking withdrawals.

What was the purpose of the Edelweiss Interop? Who attended? 

Ben: Edelweiss is the third in a series of interop events (also known as “lock-ins”) that have proved to be very productive for the Ethereum core development teams. Our first took place in Ontario in September 2019, and involved around 30 devs from the consensus client teams. In October 2021, about 60 members of both the consensus and execution layer teams gathered in Greece for the Amphora workshop at which we prototyped the Merge. And, last month, 100 Ethereum core devs met at a remote resort in Austria to work on ironing out the final wrinkles in Shanghai–Capella, and standing up a test network for EIP-4844, which will be the next upgrade after Shanghai.

These events have proved to be exceptionally valuable. We develop our software and protocols in a distributed, decentralised way, but fundamentally it all needs to interoperate seamlessly. Gathering in-person at strategic moments to plug everything together substantially reduces the friction of working remotely, not least time zone lag. Being in the same room allows us to share information and iterate on difficult challenges much more rapidly.

One thing I love about these events is the enormous energy levels. It’s not always evident in the grind of day-to-day remote work, or while discussing minutiae on the core devs calls. But the Ethereum core devs are an incredible bunch: I find the buzz of cooperation and the sheer number of brilliant ideas floating around when we gather deeply encouraging and motivating.

Matt: Echoing Ben’s points, these events really speed up the time-to-delivery of crucial upgrades for Ethereum. While the topics in this case were focused around Shanghai-Capella and the next upgrades after that, many research areas were discussed. Following the Merge, the Ethereum protocol opened the flood-gates for changes in areas like scaling, censorship-resistance, user experience, and more. 

Being in person allows different groups to accelerate the designs of upgrades like changes to the EVM with EOF (EVM object format), statelessness and history expiry of the chain, and more user-facing topics like light Ethereum clients and account abstraction. The brain trust at this workshop was just incredible.

What scope of work was completed? 

Matt: EIP-4844, the beginning of a set of work known as sharding, is off to an exciting start. This EIP [Ethereum Improvement Proposal] is intended to help scale rollups and reduce costs for users on Layer 2 by storing data more effectively and cheaply on Ethereum for its rollups. The various client teams came to the workshop with most of the functionality completed. So, our goal was to set up local development networks where clients like Besu, Teku, Geth, Prysm, can all talk to each other, sync the chain, reach consensus, and, critically, share the data-blobs needed for this type of sharding.

The devnet was a success, with most clients participating, able to sync and validate blocks and blobs. Often, the key part of these interop events is just that: [to ensure] client interoperability. 

With the dev-net proceeding somewhat smoothly, the core devs are becoming more and more confident in mainnet EIP-4844 in the coming months.

People have been staking ETH since the launch of the Beacon Chain in December 2020 and there’s currently over 16M ETH, worth $25.3B, locked. What is the importance of staking withdrawals for the ecosystem that the Shanghai Upgrade enables? 

Matt: I hope that withdrawals will continue to drive demand for Ether and securing of the chain through staking. With the ability to un-stake ETH, those that may have wanted to stake, but were worried about the lock-up could now get involved. This may drive more demand for ETH to stake and see more validators staking on the network. Withdrawals might start with a short downtick in numbers as validators that want to exit their entire stake for a variety of reasons withdraw. Ultimately, the security in knowing one can exit their entire stake will likely drive more participation.

Another key component here is decentralization. One of the initial problems with staking was that once the stake was put up by a user, it was often locked or “stuck.” Users that value decentralization, but who staked with a centralized provider for one reason or another, could not move to a new provider prior to withdrawals. I hope that with withdrawals enabled, more users will choose options that have the long-term health of Ethereum in mind, and not just the centralized option (which is often the easiest).

After withdrawals, I hope to see competition on the staking side of things that focuses on user experience and decentralization, not just centralized providers giving the best returns and UX. I think this will be a hot area as users can freely move their stake from one service to another that is most in-line with their values. Choice is always good!

Mikhail: It’s a guarantee of getting locked funds back implemented in the code. Trust of the stakers in the Ethereum ecosystem enabled us to activate features gradually as they were implemented and step up to the PoS three years earlier than withdrawals were available. We appreciate users’ confidence and continue to work on Ethereum enhancements.

Will all validators be able to withdraw their staked ETH after the upgrade? 

Ben: There are two options: (1) continue to stake your 32 ETH, but have all your rewards [everything above 32 ETH] regularly paid out to your Ethereum account, or (2) exit from staking and have your whole stake and rewards paid out to your account.

These options only apply to validators that have 0x01 withdrawal credentials. Around 311K validators still have the old-style 0x00/BLS credentials and will need to send a message via their node to change to 0x01 before their withdrawals can happen.

What work was done to enable validators to switch their withdrawal key to ETH1 withdrawal credential? 

Ben: For most of the 311K validators still on old-style 0x00 credentials there is absolutely no hurry to change the withdrawal credentials to 0x01. I don’t plan to do this myself until weeks after the upgrade. Nevertheless, we do anticipate something of a rush, so we spent a lot of time testing how the network handles huge amounts of these credential change messages being launched at once, and client teams were able to agree on various strategies to control the impact of the extra load.

Some work was also done on the staking CLI tool to make it easier for stakers to create these withdrawal credential change messages. This is the same tool that many of us used to generate our original stakes, so should be somewhat familiar.

Why was EIP-4844 delayed in this upgrade?

Ben: In short, because it was not ready in time. There is a strong sense in the community that we must not delay the ability for stakers to withdraw their ETH, so we agreed a while ago to implement EIP-4844 in a fast follow-on upgrade. We are still iterating the design of EIP-4844 and made solid progress at the Edelweiss workshop. For example, we discussed a new design for how data blobs will be propagated around the network that might be friendlier to solo stakers.

Mikhail: EIP-4844 is a complex task which involves a lot of research, benchmarking and testing. Including it in Shanghai fork will delay [the latter’s] delivery, so our decision was to fulfill the promise we made in the Merge.

What can stakers and validators do to prepare for the Shanghai Upgrade?

Matt: Validators should make sure to check on their withdrawal credentials as mentioned by Ben above, especially those with 0x00 credentials. Solo-stakers should also follow closely their execution and consensus client upgrade cycles. Users will need to upgrade their staking software in order to enable withdrawals and to follow the chain after the Shanghai-Capella forks. Client teams like Besu and Teku share this information on Twitter and Discord

Additionally, stakers wishing to test out the functionality should stay tuned to the EthStaker community and Ethereum Foundation announcements. The Core Devs will be launching long-lived test nets where users can safely “practice” the withdrawals process. At some point before the hard fork upgrades, client teams will upgrade the Goerli and Sepolia test-nets with the Shanghai-Capella upgrades. Users may also test on these test-nets to ensure everything works without issue. As above, these will require client software updates to enable, so stay tuned.

The Ethereum Foundation also hosts community calls to provide useful information on upcoming upgrades and changes. This is a great venue for stakers and users to directly ask questions of core devs.

What comes after the Shanghai Upgrade

ConsenSys has been dedicated to the advancement of the Ethereum protocol since it was founded. We’ve contributed our people, products, and resources to drive its evolution – from proposing the executable Beacon Chain, to developing two Ethereum clients, Besu and Teku.

The next step, and an important one for scalability, in the Ethereum roadmap is the EIP-4844 upgrade, which is a first step towards sharding or data-sampling. Ethereum’s long-term plan for huge scalability is to introduce ways to verify huge amounts of data without overloading individual validating nodes. EIP-4844 implements some of the key new cryptographic work that’s needed to do this, while providing some intermediate level scaling. In future we will build on this to provide massive scalability at Ethereum’s base layer while continuing to support radical decentralization.

Keep up with the Ethereum roadmap on the ConsenSys Merge Hub