Appreciation to Danny and Joe for their evaluation.
As the introduction of the beacon chain approaches and eth2 becomes increasingly definitive, it is time to synchronize the community with the most recent updates concerning the inner mechanisms of eth2, along with the explicit prerequisites, incentives, and experiences associated with being a validator. This piece will offer a broad overview of eth2 that will serve as a foundation for a series covering all elements of eth2 pertinent to validators.
eth2 has been in development for quite some time and has significantly advanced throughout the years. What began as independent sharding and Proof of Stake (PoS) initiatives operated via smart contracts has transformed into a highly integrated architecture, resulting in substantial enhancements in efficiency, scalability, and security.
The phases
As components of eth2 have become more intertwined, other segments have been organized into phases to facilitate enhanced pipelining of the various aspects of eth2. At the time of this writing, Phase 0 is on the verge of launching as developers finalize the client software. Concurrently, the specifications for Phase 1 are being completed, and Phase 2 is undergoing active research and development.
- Phase 0 focuses on the beacon chain, the foundation of eth2, which supervises validators and the coordination of shards. The beacon chain is the primary source of truth from which all other elements of eth2 are established.
- Phase 1 builds on this by enabling information to be stored within shards. The implementation complexity of this segment is considerably lower than the others, as phase 0 provides most of the groundwork for the shards.
- Phase 2 introduces execution to eth2, effectively transitioning eth2 from a robust database to a fully decentralized computing platform.
What exactly is Phase 0?
As previously stated, the beacon chain monitors the status of both the collection of validators and the shards. Practically, this means that if you (occasionally) keep up with developments on the beacon chain, you will possess sufficient knowledge to verify anything claimed to be occurring within eth2. Trust, but verify.
For a PoS system to operate effectively, there must be agreement on the identity of the validators and on the value of each of their stakes to ascertain how much weight their votes carry and to justly reward and/or penalize them for their actions. The beacon chain also regulates the sharding elements of eth2 by assigning validator responsibilities within the shards and keeping track of the present state of each shard.
One of the aspects that sets eth2 apart from other PoS systems is the sheer number of validators that can engage in the protocol. In contrast to the tens, hundreds, and thousands of participants possible in other systems, eth2 scales to accommodate hundreds of thousands or potentially millions of validators. This degree of decentralization is feasible solely due to the intermediate levels of consensus achieved by groups of validators termed committees. The beacon chain employs a random beacon at its center to assign validators to committees responsible for determining what constitutes a part of the beacon and shard chains. A committee’s votes are then cryptographically consolidated into an attestation which means that verifying an entire committee’s votes requires only slightly more effort than reviewing a single vote. Consequently, to validate the beacon chain, only a handful of aggregated signatures need to be assessed to evaluate the votes of numerous validators.
The beacon chain additionally monitors the eth1 chain and the deposits therein, allowing new validators to join eth2 by sending 32 Ether to the deposit contract on eth1. Due to the beacon chain voting on the eth1 chain, eth2 will, at a future point, bolster the security of eth1 by providing an economic assurance that blocks that are part of the canonical eth1 chain.
Nodes vs. Clients
eth2 distinguishes between beacon nodes and validator clients, and validators will require both to fulfill their functions. A beacon node (or simply node) is responsible for maintaining a perspective of the beacon chain as well as any shards may be necessary for a user or validator.
As hinted by their name, validator clients (or just clients) manage the logic associated with a single validator. This is accomplished by communicating with the beacon node to comprehend the current state of the chain, by attesting to and proposing blocks when appropriate, and ultimately by requesting the beacon node to relay this information to its peers.
If you are not acting as a validator, a beacon node contains all the information you need to trustlessly engage with eth2, much like a full node in eth1.
Below are some numerous justifications for this differentiation:
- Each validator must be initialized with a deposit of precisely 32 Ether, hence individuals looking to stake more ETH will need to operate multiple validator instances. The node-client separation permits such users to only run a single beacon node with multiple validators linked to it, thereby minimizing computation, memory, and storage requirements.
- By maintaining validator nodes as separate modules, they are likely to be more secure since it is simpler to write, reason about, and audit smaller code segments.
- For users particularly concerned about redundancy, multiple nodes can be executed concurrently, thus diminishing the likelihood of a validator going offline.
- Since validator clients can only interact with the broader eth2 network via a beacon node, and even then through a restricted API, the attack surface of a validator node is significantly reduced.
- For users who wish to engage with eth2 but do not desire to be a validator, they only need to operate a beacon node which will provide them access to the beacon chain and all the shards they require.
Design Philosophy
The design philosophy of eth2 offers beneficial context for all the choices made within eth2 and often encapsulates the distinctions between eth2 and other protocols.
- Protocol über alles: Acknowledging that every decision involves trade-offs, the protocol’s safety and functionality take precedence over other design goals.
- Hope for the best, but prepare for the worst: eth2 presumes that validators will be complacent, accept bribes, and attempt to undermine the system unless persuaded otherwise. Additionally, the network is regarded as not entirely dependable, and that catastrophic incidents could cause numerous validators to go offline. For these reasons, eth2 is designed to withstand World War 3.
- Minimally viable complexity: Wherever feasible, eth2 has been made more straightforward, improving its understandability, facilitating explanation to others, enabling auditing, writing bug-free clients, and generally avoiding edge cases.
- Maximally decentralized: Proof of stake protocols often compromise on the quantity of validators that can engage, whereas eth2 is structured to scale to millions of validators while motivating these validators to operate independently from each other.
- Expect the unexpected: All components of eth2 are resistant to quantum computing or can be replaced with those that are in the event of a quantum crisis.
- By the people for the people: eth2 must be operable on a consumer laptop. The lower the barriers to entry, the more individuals can involve themselves, thereby enhancing the degree of decentralization.
Wrapping up
Now that you have grasped the fundamentals of eth2, the forthcoming posts in this series will delve into the intriguing specifics of what propels eth2’s functionality.