Ethereum All Core Developers Consensus Call #101 Writeup
On January 12, 2023, Ethereum developers gathered for their 101th Consensus Layer (CL) call. Chaired by the Ethereum Foundation’s Danny Ryan, the CL calls are one of two bi-weekly meeting series where Ethereum developers discuss and coordinate changes to the protocol of Ethereum. This week’s call was the first CL call of the year. Starting in 2023, CL calls have been renamed to ACD Consensus (ACDC) calls to reflect their focus on changes to the consensus layer of Ethereum. They are also live streamed from the @EthereumProtocol YouTube channel, instead of the @EthereumFoundation YouTube channel. The other bi-weekly meeting series, which developers have renamed to ACD Execution (ACDE) calls, focus on topics related to the development of the execution layer of Ethereum.
This week, CL client teams discussed progress for testing the Shanghai/Capella upgrade, differences in the consensus and execution layer serialization formats for block headers, updates to the Ethereum Engine API, and client status updates for ongoing work on Ethereum Improvement Proposal (EIP) 4844.
Staked ETH Withdrawals
On January 11, 2023, developers launched the 2nd devnet for staked ETH withdrawals. According to Parithosh Jayanthi of the Developer Operations team at Ethereum Foundation, the launch went well with only a few bad blocks being produced by nodes on the network. In addition to the 2nd devnet, developers also conducted their first shadow fork of the Sepolia testnet earlier in the day on January 12. Next week, developers plan on launching a larger, public test network for staked ETH withdrawals and in the next few weeks, they plan on conducting their first shadow fork of mainnet Ethereum.
On the topic of data field formatting for EL and CL block headers, developers agreed on the call to move forward with a limited change, updating the units for returning withdrawal amounts in the Ethereum Engine API from wei to gwei. As background, wei is the smallest denomination of ether, the native cryptocurrency of Ethereum. One ETH is equal to 10^18 wei. Gwei is one billionth of one ETH.
Harmonizing the withdrawal amounts between the CL and EL for Shanghai to both read in units of gwei is an important change advocated by Andrew Ashikhmin from the Erigon (EL) client team. “I will still advocate switching to gwei because if we don’t do it now then later it will be a much harder change. Right now, it’s a trivial change technically but later because some tools [for staked ETH withdrawals] will be released [and] will be enshrined having wei instead of gwei, it will be a nightmare to switch. So, I advocate doing that bit in Ethereum technically now.” Several developers on the call agreed with Ashikhmin. The specification updates to support this change for Shanghai has been put forward for broader discussion and approval by EL client teams by Alex Stokes, researcher for the Ethereum Foundation. They can be read in more detail here.
While developers came to consensus about harmonizing units for withdrawal amounts, they were hesitant about making changes to the serialization formats between the EL block header and the CL execution payload header for Shanghai. For background on this topic, read last week’s call notes here. “This is a more involved change and requires non-trivial code additions to ELs beyond what exist today,” wrote Stokes in a message on the Ethereum R&D Discord channel shortly after Thursday’s meeting. Because harmonizing the serialization formats between the EL and CL block headers may cause delays to Shanghai, several developers were not in favor of including this change for Shanghai but potentially doing it in a future hard fork such as Cancun. The final call around whether to include changes to the serialization formats between the EL and CL for staked ETH withdrawals will be made next week, during ACDE call #153.
Finally, on the topic of staked ETH withdrawals, developers discussed a minor improvement to CL specifications for stakers. The change was described by Mikhail Kalinin, Lead Researcher at ConsenSys R&D, as a change to the way timestamps are created for Beacon Chain epochs that will help prevent unnecessary rejections of withdrawal credential change messages sent from validator node operators. More information about the change can be read here. According to pseudonymous developer “Potuz” from the Prysmatic Labs team, the change has already been implemented in the Prysm client. However, he is uncertain about when to start broadcasting credential change messages and how to handle gossiped messages before the activation of Capella. To this, developers agreed that CL clients should ignore all gossiped messages before Capella and use the genesis fork ID for signing credential change messages once Capella is activated.
Engine API Improvements
Moving on from discussions around staked ETH withdrawals, developers briefly discussed three pull requests (PRs) related to the Engine API that were recently merged as part of the Shanghai upgrade. One of the three merged PRs is titled “a bunch of cleanups.” These small revisions to the Engine API are ones that were overlooked in lead up to the Merge that help reduce Ethereum’s technical debt by addressing minor discrepancies in code, as well as deprecating certain outdated logic.
EIP 4844 Updates
Then, developers went around the table giving status updates on their progress with the implementation of EIP 4844. Most CL client teams reported passing all, if not most, of the latest specification tests. The Nimbus team reported that there is still quite a lot of work to be done on the user experience front for EIP 4844, which includes matters like how long to store blobs, the size of blobs, and their pruning. A representative of the Besu (EL) team requested a list of all the EIP 4844 testing resources available for clients, which Proto agreed to work on compiling after the call.
Hsiao-Wei Wang from the Consensus R&D team at the Ethereum Foundation raised the topic of naming around the upgrade to activate EIP 4844. During a prior call, developers agreed to remove EIP 4844 from Shanghai and include the code change in the next upgrade dubbed Cancun. However, these upgrade names refer specifically to changes on the EL of Ethereum. Changes to the CL of Ethereum are denoted by a separate name. For Shanghai, the accompanying CL hard fork is called Capella. For Cancun, developers had proposed naming the accompanying CL hard fork Dubhe. Both Capella and Dubhe are the name of stars. Specifically, Dubhe is the second brightest star in the constellation of Ursa Major. Hsiao-Wei Wang proposed naming the CL upgrade for EIP 4844 Deneb, instead of Dubhe, for ease of pronunciation. Deneb is a star in the constellation of Cygnus. Developers agreed to go with the name of Deneb and start updating the name of relevant code repositories for the implementation of EIP 4844 after the EIP 4484 interop event. As a reminder, developers have a third weekly meeting series known as the “EIP-4844 Implementers’ Call,” where progress on Ethereum’s scaling initiatives through proto-danksharding are discussed in more detail. The next EIP-4844 Implementers’ Call will be hosted next Tuesday, January 17th. For details about the call and its livestream link, click here.
Miscellaneous
Zsolt Felföldi, a developer for the Geth team at the Ethereum Foundation, presented two code changes to the Beacon API for supporting better light client functionality. Felföldi emphasized that no decisions about these changes were required before Shanghai, but that early feedback and discussion on them would be welcome. The technical details about both changes are explained in more detail here and here. Finally, Tim Beiko, Chair of the ACDE calls, announced that in preparation for the Shanghai/Capella upgrade, he would be organizing community calls to answer questions from Ethereum stakeholders about the upgrade. The first Shanghai/Capella Community Call will be held next Friday at 15:00 UTC/10:00 ET. Details of the call and its agenda can be found here.
Legal Disclosure:
This document, and the information contained herein, has been provided to you by Galaxy Digital Holdings LP and its affiliates (“Galaxy Digital”) solely for informational purposes. This document may not be reproduced or redistributed in whole or in part, in any format, without the express written approval of Galaxy Digital. Neither the information, nor any opinion contained in this document, constitutes an offer to buy or sell, or a solicitation of an offer to buy or sell, any advisory services, securities, futures, options or other financial instruments or to participate in any advisory services or trading strategy. Nothing contained in this document constitutes investment, legal or tax advice or is an endorsementof any of the digital assets or companies mentioned herein. You should make your own investigations and evaluations of the information herein. Any decisions based on information contained in this document are the sole responsibility of the reader. Certain statements in this document reflect Galaxy Digital’s views, estimates, opinions or predictions (which may be based on proprietary models and assumptions, including, in particular, Galaxy Digital’s views on the current and future market for certain digital assets), and there is no guarantee that these views, estimates, opinions or predictions are currently accurate or that they will be ultimately realized. To the extent these assumptions or models are not correct or circumstances change, the actual performance may vary substantially from, and be less than, the estimates included herein. None of Galaxy Digital nor any of its affiliates, shareholders, partners, members, directors, officers, management, employees or representatives makes any representation or warranty, express or implied, as to the accuracy or completeness of any of the information or any other information (whether communicated in written or oral form) transmitted or made available to you. Each of the aforementioned parties expressly disclaims any and all liability relating to or resulting from the use of this information. Certain information contained herein (including financial information) has been obtained from published and non-published sources. Such information has not been independently verified by Galaxy Digital and, Galaxy Digital, does not assume responsibility for the accuracy of such information. Affiliates of Galaxy Digital may have owned or may own investments in some of the digital assets and protocols discussed in this document. Except where otherwise indicated, the information in this document is based on matters as they exist as of the date of preparation and not as of any future date, and will not be updated or otherwise revised to reflect information that subsequently becomes available, or circumstances existing or changes occurring after the date hereof. This document provides links to other Websites that we think might be of interest to you. Please note that when you click on one of these links, you may be moving to a provider’s website that is not associated with Galaxy Digital. These linked sites and their providers are not controlled by us, and we are not responsible for the contents or the proper operation of any linked site. The inclusion of any link does not imply our endorsement or our adoption of the statements therein. We encourage you to read the terms of use and privacy statements of these linked sites as their policies may differ from ours. The foregoing does not constitute a “research report” as defined by FINRA Rule 2241 or a “debt research report” as defined by FINRA Rule 2242 and was not prepared by Galaxy Digital Partners LLC. For all inquiries, please email [email protected]. ©Copyright Galaxy Digital Holdings LP 2022. All rights reserved.