In part 2 of our ETH2.0 series, we talked about The Beacon Chain, the ambitious switch to a Proof-of Stake consensus algorithm and Ethereum’s scalability in general. Long story short: Ethereum has been struggling with scalability issues since 2016. Their solution besides The Beacon Chain? Basic Sharding!
The DCS Triangle
In the blockchain industry, there is a common dilemma, or in this case a trilemma, that comes in the form of the DCS triangle (also known as the Scalability Trilemma). This triangle consists of the following three axes: Decentralization, Consistency and Scale. Early on, it became clear that a blockchain could not achieve all three aspects without having a tradeoff. One aspect was always inferior to the other two, Scale in the case of Ethereum (and Bitcoin).
Here you can see the DCS Triangle visualized:
- Decentralized: No single entity has control over the network. Therefore, anyone can join as a validator.
- Consistent: All network nodes see the same data at the same time, preventing double-spends.
- Scale: Short for Planetary Scale, which can be summarized with high throughput, capacity and low latency. Simply put, the ability to process many transactions.
Splitting the difference
Basic Sharding is the solution (or the attempt) to achieve all three aspects. So how does it work? Currently, the Ethereum blockchain is slow because all nodes need to check all the data, store the entire state and therefore process every transaction. This makes Ethereum decentralized, secure and consistent but is also the mean reason why Ethereum can only handle 15-20 transactions per second. With Basic Sharding, the state and history of the blockchain are divided into 64 smaller chunks called shards. Each shard is self-sufficient, manages its own transaction history and his its own dedicated function. Two examples of these self-sufficient shards could be:
- A dApp having its own shard, where all transactions related to this dApp is stored on this single shard.
- All addresses starting with 0x01 having its own shard.
Vitalik Buterin used the following metaphor during DEVCON 2018:
But is there a downside to basic sharding? Well, it is known that the basic sharding structure is initially less secure. It’s easier to ‘hack’ a single shard then the entire blockchain. Another issue is the fact that each shard is self-sufficient and does not interact or communicate with other shards. This will eventually be solved with the introduction of cross-shard communication in phase 2.
These 64 shard-chains will run parallel with the Beacon Chain and will increase Ethereum’s scalability significantly. The implementation will conclude phase 1 and will initiate phase 1.5; a term that has been created to herald the merge between Ethereum 1.0 and Ethereum 2.0. Once phase 1.5 has been concluded, Ethereum 1.0 will function as a shard on the new Ethereum 2.0 Proof-of-Stake blockchain. Phase 2 is not yet fleshed out but will focus on the implementation of ether accounts, cross-shard communication and many more ‘smaller’ features. Our next article on ETH2.0, will be the final one and will focus on what the future will hold for this prestigious project. See you then!
Read all you need to know in our 'What is Ethereum?' info page!