At the beginning of December, the Ethereum community initiated the new beacon chain proof-of-stake consensus framework — the cornerstone of Ethereum’s enduring and eco-friendly ecosystem. The launch was an extraordinary achievement, and the operation of the beacon chain has demonstrated, so far, stability and strength.
As I compose these words, the beacon chain is operational with over 2.5M ETH backing its consensus. Thus, this is the current “state of eth2.” But what lies ahead? What’s on the horizon, and where are we headed?
This article seeks to offer high-level insight into the status of Ethereum’s eth2 upgrade — a complete transformation of Ethereum’s fundamental consensus to create a more sustainable, secure, and scalable environment for Ethereum and its community.
This entry does not delve into intricate technical specifics, nor is it intended to be exhaustive. If you seek a more detailed narrative on all things eth2, I suggest looking into Ben Edgington’s What’s New in Eth2 and my “eth2 quick update” series on the EF blog.
Disclaimer: this is how I currently perceive things today. There are numerous voices and perspectives influencing the continually expanding, ever-developing eth2 research initiative. This is merely a snapshot of a fragment of an interpretation. Enjoy!
eth1 + eth2 == Ethereum
The terms “eth1” and “eth2” are misnomers. If it were up to me, I would eliminate them entirely, but they have become fairly widespread, so let’s at least clarify what they signify.
These labels — eth1 / eth2 — suggest a misleading sequentiality. They suggest that eth1 will be phased out in favor of eth2, that one is being overshadowed by the other. In reality, these terms actually refer to distinct layers of the stack.
Eth1 primarily pertains to the functioning and enhancement of Ethereum’s user-layer — state, transactions, accounts — all the aspects the end-user considers when engaging with Ethereum. Conversely, eth2 is a series of enhancements intended to revamp Ethereum’s core consensus — shifting from the energy-intensive, inefficient proof-of-work to a more sustainable, scalable proof-of-stake. And what do we mainly wish to achieve consensus on with this upgraded consensus framework? The eth1 user-layer!
This relative separation of concerns (user-layer vs core consensus) has permitted Ethereum (eth1) to continue functioning while simultaneously facilitating a significant overhaul of Ethereum’s core consensus (eth2) in a relatively low-risk manner. Additionally, in the future, this separation of concerns may encourage greater specialization across the stack and software elements. The champions (eth1 client developers) that sustain Ethereum today can keep concentrating on user-layer enhancements and stability, while the eth2 engineering teams can focus on their strength — developing sophisticated proof-of-stake consensus.
Following the merge, an Ethereum client will leverage the best features from both eth1 and eth2 in a modular approach. For a high-level discussion on what this might look like in practice, take a look at my ethresearch post on the eth1+eth2 Client Relationship (also consider my ‘eth1 + eth2 = Ethereum’ talk at ETHOnline where I emphasize this point).
eth2 == consensus
When we mention “eth2,” we refer to software and protocol enhancements of Ethereum’s core consensus framework. Fundamentally, eth2 signifies the transition from Ethereum’s consensus method from proof-of-work to proof-of-stake and the incorporation of a sharded data layer for boosting scalability. If proof-of-work is the rocket ship propelling Ethereum out of Earth’s atmosphere, eth2’s proof-of-stake beacon chain serves as the permanent space habitat where the rocket will eventually dock for a lasting and ample residence.
If you observe the complexity that constitutes an eth2 client today, it is wholly in the oversight of consensus — finality, fork choice rule, validators, and incentives.
eth1 == user_layer
When we discuss “eth1,” we refer to the Ethereum proof-of-work chain and all existing applications and tools active on the mainnet. When we talk about upgrades to eth1 and larger “eth1x” matters, we are specifically addressing items almost completely within the “user-layer.” That is — state, contracts, execution, transactions, etc. If the consensus is the brain, the user layer functions as the body; nearly all advancements to Ethereum since its inception have been directed at the body, while the (relatively small) brain of proof-of-work has remained stable.
If you examine the sophistication that currently defines an eth1 client (i.e. geth, nethermind, besu, openethereum, turbo-geth), the vast majority of the optimization is directed toward the oversight of this user-layer — effectively accessing/writing the extensive user state, optimizing execution, efficiently managing the transaction mempool, etc.
In summary, the Ethereum of the future will replace the brain of Ethereum (with a sustainable and secure proof-of-stake) while retaining the body we are aware of. This results in uninterrupted contracts and applications with stable APIs and tools (see Mikhail’s demonstration of using an unmodified metamask to engage with an eth1+eth2 merge testnet).
Consensus, but on what?
A prevalent misconception regarding the introduction of the beacon chain is that “it doesn’t perform any function”, to which I reply “that’s precisely the objective!”.
The beacon chain is fundamentally a proof-of-stake consensus framework protected by validators who have staked ETH. At present, the only agreement this consensus system reaches is about itself. It has not, as of yet, reached agreement on matters that end users find significant — the user-layer (for instance, transactions, user accounts, smart contracts, etc). This is intentional.
The Ethereum network safeguards hundreds of billions (€/$/Ɖ) in assets and user interactions, thus the approach to enhancing its fundamental consensus (although drastic in nature) must be cautious and progressive in implementation.
To summarize:
Step one [COMPLETED] — achieve consensus in a decentralized and secure manner.
Step two [IN PROGRESS] — reach consensus on elements crucial to the Ethereum ecosystem: (a) the current state of the Ethereum network (i.e. eth1) and (b) the sharded data of the future.
Consensus on Ethereum (eth1)
To begin with, eth2 is intended for Ethereum. The beacon chain was initiated and is administered by the community, and ultimately exists for the community and its current applications, contracts, and tools.
The transition of Ethereum’s consensus from proof-of-work to the beacon chain’s proof-of-stake will establish a more secure and sustainable framework for both present and future decentralized applications. By altering the consensus mechanism while keeping the rest of the protocol (the user-layer) stable, Ethereum will ensure an uninterrupted and continuous experience for existing users and applications. Before the shift, applications will still be secured and processed by proof-of-work, while right after the transition they will be secured and processed by the beacon chain. Existing APIs and tools will mostly remain unchanged and generally applications will simply function.
This endeavor is currently underway with a combined geth+teku (eth1+eth2) client operating private testnets at present. We anticipate launching a more public testing ground soon along with some preliminary specifications so that additional clients (both eth1 and eth2) can participate.
The safety and stability of the beacon chain
Throughout 2021, the beacon chain will persist in being rigorously tested, assessed, and fine-tuned for the eventual integration of eth1 into eth2.
One of the essential requirements for the integration is time. The beacon chain must operate in production long enough to demonstrate its stability and resilience. Beyond this time-related stability criterion, I envision comprehensive network/load assessments, supplementary testing/fuzzing, and extensive integration testnets.
Sharded data
In addition to requiring a secure and sustainable environment, Ethereum also requires a scalable environment.
It is evidently clear that Ethereum L1 at present will not, alone, deliver the throughput necessary to accommodate the global demand for decentralized applications. While Ethereum’s existing L1 combined with L2 scalability solutions (rollups, channels, etc) will provide significant assistance in the upcoming 12 months, even then Ethereum will continue to experience demand surpassing supply as global adoption progresses.
To complement the exciting L2 rollup ecosystem that enhances scalability using L1 data, eth2 aims to establish consensus on a scalable, sharded data layer.
That being said, achieving consensus on sharded data is considerably simpler than establishing consensus on sharded state, both in terms of complexity related to core consensus as well as the complexities faced by the end user. Simultaneously, this scalable L1 data amplifies the scalability benefits of L2 rollup adoption.
There is optimism that the merge combined with sharded data will provide functional escape velocity and ultimately lead us to our desired destination. This is not to suggest that a sharded user-layer (user state and transactions distributed across several shards) is entirely out of the question, but rather that at this moment it is currently not a priority as we implement simpler yet effective enhancements to Ethereum.
Check out Vitalik’s post — A Rollup Centric Roadmap — or his presentation — Scaling Ethereum in 2020 and Beyond for further insights behind the reasoning here.
Upgrades along the way
The first set of enhancements to the beacon chain is currently being specified and deliberated. Some proposed adjustments are iterative enhancements to validator incentives and state management, whereas others introduce new, though relatively modest, features to the beacon chain — for example, native light client support.
Much of the dialogue surrounding these incremental enhancements is occurring in the eth2 specs repository in addition to the Eth R&D discord. I anticipate client teams and other contributors will disclose more regarding these as they materialize in the coming month.
This initial upgrade to the beacon chain will also act as a sort of “warm-up” for both eth2 client developers and the community of stakers. With more ambitious enhancements regarding the merge and sharding in vision, beginning with a smaller upgrade is wise.
The state of eth2 clients
Overall, we are in a favorable position with eth2 clients. We have four operational mainnet clients (Nimbus, Teku, Lighthouse, and Prysm), each representing a segment of validator utilization. Furthermore, Lodestar is currently operating on the mainnet in a more alpha condition while persistently offering excellent JS tools and libraries to the expanding eth2 developer community.
Efforts are ongoing to enhance performance and stability universally, and there remain opportunities to improve client diversity. Overall, however, we observe a vibrant ecosystem of both clients and stakers.
Client diversity
From what we can ascertain, client diversity is not optimal at the present moment. Some estimates suggest that Prysm nodes make up at least 50% of the mainnet nodes, and while this does not directly correlate to the amount of stake secured by each client, it likely provides directionally accurate representation.
With four operational mainnet clients, the ideal distribution should ideally reflect equal weight (25%) among all clients, with any single client holding less than 50%. Considering the current landscape of eth2 clients, this is feasible, though it will require a unified effort from community participants and institutional stakers to seek and adopt clients that hold lesser shares of the network. Having run all four clients in the past, I can confirm — they are all reliable and efficient, and each boasts a passionate and supportive team dedicated to simplifying your experience.
Client development in 2021
Client teams will dedicate a substantial portion of 2021 to enhancing the security and stability of mainnet clients while also striving towards the production implementations of the various acknowledged upgrades. In the early part of 2021, a significant amount of this will focus on research and development as specifications are reviewed and improved, but in the latter half of the year, we should begin to see production testnets for merge and/or sharding upgrades.
I anticipate that client teams will keep you informed far better than I can. Engage with their discord servers, monitor their repositories, and stay tuned to their blogs.
Additional context
Stateless Ethereum
As previously outlined, “eth2” generally signifies a series of enhancements to Ethereum’s foundational consensus mechanism, while “eth1x” indicates research and development along with upgrades to Ethereum’s user layer. Stateless Ethereum (and much of eth1x) concentrates on rendering the L1 state more sustainable, simultaneously introducing a range of node types that ultimately empowers users with greater options for network interaction.
Owing to the distinct separation of concerns (consensus vs. user layer), this research and development initiative is being conceptualized and constructed alongside the eth2 advancements. While there are certain instances where we must verify cohesion among designs, statelessness can be implemented either prior to or following the eth1+eth2 merge. The earlier stateless components are deployed, the better, yet eth2 is not contingent on the stateless timeline.
Currently, there are monthly conversations on statelessness and an active research and development initiative. I am optimistic about witnessing significant progress in these iterative upgrades throughout 2021!
EIP 1559
EIP 1559, a greatly awaited modification of Ethereum’s fee marketplace, is sufficiently autonomous from eth2 and can technically occur either before or after the eth1+eth2 merge. That being said, research and development on this matter has accelerated over the past 12 months, and we optimistically expect to see the 1559 fee mechanics on mainnet in 2021.
A noteworthy point, however, is that 1559-style fee mechanics will be inherent to eth2’s sharded data layer. This will improve user experience for Ethereum’s data consumers when attempting to submit data into the Ethereum network, significantly assisting rollups in reliably integrating their block data into the beacon chain.
For further information on the 1559 upgrade in eth1, refer to Tim Beiko’s insightful 1559 Updates.
Community and tooling
The community and tooling surrounding eth2, although still in its early stages, is currently flourishing and expanding quickly. Numerous community-organized initiatives exist — EthStaker, Ethereum Due Diligence Committee, Ethereum Studymaster, Secret Shared Validators, and more — all actively enhancing the validator experience (alongside new open-source projects and tooling contributions emerging each week)!
The EF conducted a very successful Medalla Data Challenge and is presently reviewing numerous intriguing proposals from the Staking Community Grants round. Stay alert for more thrilling eth2 initiatives this year!
Following the launch of the beacon chain, there appears to be boundless potential to engage and create impact. Remember, we are constructing this together. If you sense something is absent or a project requires assistance, please do not hesitate to get involved! Contributions, whether minor or significant, can have a profound effect.
Wrapping it up
In summary, there’s an abundance of work to undertake in 2021, but what else is new?
The successful deployment of the beacon chain marked a significant achievement for engineers, stakers, and the broader community. We now possess the groundwork for Ethereum’s sustainable future. While there are numerous moving components and countless intricate threads, the Ethereum community has consistently demonstrated remarkable resilience and capability in delivering results.
Here’s to a fantastic 2021 🚀