When the original version of the Ethereum protocol launched in 2014, it was widely praised as the potential successor to Bitcoin. However, in its four short years, Ethereum has grown faster than the Ethereum blockchain was capable of handling — raising several challenges expected to be resolved in its upcoming Serenity upgrade.
Speaking at Devcon 4 in Prague just weeks ago, Vitalik Buterin, co-founder of Ethereum, stated that Ethereum 2.0 will be the culmination of several different ongoing projects — collating all of the Ethereum Foundation’s efforts into what will become a genuine world computer.
Buterin then went on to state that the upcoming Serenity upgrade will include Caspar, a fundamental change that will see Ethereum switch from its current energy-intensive proof-of-work protocol to one based on proof-of-stake.
Based on the current version of the serenity roadmap, Ethereum 2.0 is shaping up to be a vastly different beast than its predecessor — including improvements and fixes to practically all of Ethereum’s most pressing challenges.
Besides the major changes listed below, Serenity will include dozens of tweaks and changes that aim to further improve the security, scalability, and accessibility of the platform — catering to the vast Ethereum community while tackling other daunting technical challenges.
A Scaling Solution
Perhaps one of the most fundamental concerns with most modern blockchains is the scaling issue. The solution to the infamous scaling issue has remained just out of reach for several years.
Currently, there are a number of potential solutions being developed for Ethereum — the major ones include a variety of proposals based on the idea of moving transaction data off-chain while finalizing the result on-chain, similar to Bitcoin’s Lightning Network. Ethereum’s implementation of this is known as Raiden, which uses offline payment channels to reduce the load on the main chain.
Another proposal is known as Plasma, which is a series of contracts that operate on top of the Ethereum main chain. The root network contract is responsible for consolidating commitments from child blockchains — massively reducing the amount of computation needed to conduct transactions. An off-chain solution such as Plasma and Raiden may or may not make it into the final Serenity spec.
The major scaling proposal likely to be included in Serenity is known as sharding, a system that removes the requirement for all nodes to validate every transaction instead of splitting the traffic into several shards which are handled by only a subset of the network’s nodes. Each shard will be capable of cross-shard communication, and would massively increase the throughput of the blockchain — increasing it from the current ~15 transactions per second up to several thousand.
As it stands, Ethereum uses a consensus system known as proof-of-work to secure the blockchain against attacks and achieve transaction finality on the decentralized ledger. This system, while secure, uses an exorbitant amount of power that renders that hampers the overall growth of the ecosystem.
In its planned Caspar update, the Ethereum network will transition to a proof-of-stake consensus system, which will see mining become a thing of the past for Ethereum. The switch from proof-of-work to proof-of-stake is expected to be a gradual process, with proof-of-stake transactions initially forming just 1 percent of all transactions.
With the new consensus algorithm, miners will instead be replaced by validators, which are nodes that have staked a large amount of ETH for the privilege of processing transactions — receiving a reward for doing so.) The validators will take turns proposing and voting on new blocks, with the weight of the validator’s vote being related to the size of its stake.
Switching to proof-of-stake is expected to drastically reduce the circulating supply of ether as large amounts of the supply are staked. This may have the unintended side effect of increasing the value of each ether unit as it becomes harder to acquire.
The Beacon Chain
The planned upgrades for Ethereum are so significant that a simple soft-fork would be insufficient for implementation. Instead, Ethereum 2.0 will include links to the legacy chain through what is known as the beacon chain — an entirely new proof-of-stake blockchain that operates above the original main chain and connected to the third tier of chains responsible for carrying transaction data.
The beacon chain is expected to be one of the first parts of the Ethereum 2.0 to be delivered, with the test-net expect for launch sometime in early 2019 acting as the soil upon which the rest of Serenity will be built and forming the cross-like between all future chains.
The beacon chain will be responsible for approving and managing a set of nodes that operate as block validators. These validators will have voting duties which are directly handled by the beacon chain, rather than being executed by the EVM of the main chain, increasing the efficiency of the process.
Each validator will be required to stake 32 ETH to ensure it remains honest in its duties and will be responsible for confirming blocks proposed by the shard chains. The beacon chain will be responsible for enforcing penalties and rewards for block proposers and validators, as well as shuffling validators regularly.
Currently, smart-contracts written for Ethereum are executed by and operate within the Ethereum Virtual Machine, or EVM — software that every node on the Ethereum network runs. Similarly, smart-contracts are the heart and soul of Ethereum and form the foundations of all of Ethereum’s popular decentralized applications, including games such as Etheremon.
However, in just a few short years, the EVM has already proven itself to be inadequate. It has been widely criticized for its inefficiencies, and for having a design that is largely incompatible with the most commonly-used languages today.
Instead, Ethereum 2.0 will likely implement eWASM — an Ethereum-centric version of WebAssembly, a new type of code that allows code to be efficiently executed in browsers.
Unlike the EVM, eWASM is designed to support several high-level programming languages and greatly increase the pool of available developers. It also hopes to eliminate the need for smart-contract developers to learn Solidity — Ethereum’s native programming language.
Besides lowering the barrier for entry to smart contract development, eWASM also stands to significantly improve the execution speed of Ethereum smart contracts by greatly increasing the number of transactions it can handle per second.
When will Serenity be Launched?
It is expected that Serenity will be launched as a series of upgrades spanning several years, but can be briefly summarized as a four-phase plan.
The first phase will begin with the implementation of Caspar in 2019 — introducing the first version of the proof-of-stake beacon chain, which will operate alongside the original proof-of-work chain during the transition period.
In phases two and three, early scaling solutions such as sharding will be implemented, improving the network capacity but excluding smart-contract functionality.
The final phase, expected sometime in 2021 or beyond, will be fully transitioned to pure proof-of-stake and be optimized for general use.
However, we would not be surprised if the successful implementation of Serenity and all of its features don’t take significantly longer than the given timeline — as the sharding update (previously named Constantinople) has already been delayed by more than a year.
Do you think Vitalik Buterin will achieve his goal of fully implementing Serenity by 2021? Will sharding be sufficient as a scaling solution, or will it need to be paired with off-chain solutions? Let us know your thoughts in the comments below!