A beginner’s guide to Ethereum Scaling and Plasma

Abhinav Lanka
Elph
Published in
5 min readNov 7, 2018

The introduction of Ethereum in 2015 by Vitalik Buterin is one of the most significant developments in the blockchain ecosystem after Nakamoto’s original Bitcoin paper that was published in 2008.

Simply put, Ethereum is a globally distributed network of nodes (computers running specific software) that developers can publish smart contracts to. Smart contracts facilitate the storage of information, manage agreements between users, and offer verifiable computation.

This new technology has paved the way for a new category of applications known as decentralized applications (dApps), whose core logic runs on a peer-to-peer network like Ethereum instead of centralized servers like AWS.

Similar to how the Internet has given access to information to billions of people over the past 20 years, decentralized apps and blockchain technology have the potential to give access to financial services independent of any centralized bank or government, providing an open and secure financial future for everyone.

Why Scaling Matters

Unfortunately, the biggest hindrance to widespread consumer adoption of blockchain technology today is a lack of scalability. Limited to processing just around 15 transactions per second, Ethereum pales in comparison to existing financial systems like Visa. The promise of a decentralized future, governed by crypto-economic incentives instead of centralized authorities, will not be possible until this critical problem is solved.

Broadly speaking, there have been two schools of thought when it comes to solving this problem — layer 1 solutions and layer 2 solutions.

Layer 1 Solutions

Layer 1 solutions take the approach of changing the existing protocol (Ethereum) itself. This often requires a hard fork of the blockchain and therefore requires political buy-in from the community to be feasible. The benefit of a layer 1 solution, however, is that the complexity is hidden from the developers, since the blockchain itself is taking care of the scaling aspect.

Sharding, a concept borrowed from computer science, is one of the most popular approaches. Currently, every single node running on the Ethereum network has to process every single transaction that is broadcasted through the network. This provides higher security guarantees, but at the cost of speed. Sharding hopes to solve this scalability problem by having the network split in partitions, known as shards, so that nodes need to only process transactions for specific shards.

Layer 2 Solutions

Alternatively, layer 2 solutions don’t require any changes to the existing blockchain architecture. Instead, layer 2 solutions involve off-loading the transactions off the main chain (Ethereum), and settling these transactions periodically back to the main chain. Layer 2 solutions can focus on scalability, while falling back to layer 1’s robust security model to ensure funds cannot be misused. Some popular layer 2 solutions are state channels, TrueBit, and Plasma. In this post, we are going to limit our focus to Plasma, its background, and Elph’s role in increasing adoption of this exciting new technology.

Plasma is a framework for building scalable applications that was proposed by Vitalik Buterin and Joseph Poon in August 2017.

This technique allows for conducting off-chain transaction on a sidechain, or child blockchain, which uses Ethereum smart contracts to act as a bridge to connect to Ethereum.

Interaction between Ethereum and Elph

Plasma chains can execute transactions with their own consensus model (Proof of Authority, Proof of Stake, etc.) at high scale since these transactions don’t need to be replicated by every node on the Ethereum network. Periodically, these transactions are published to the smart contracts on the parent blockchain. These serve as proofs for the latest snapshot of state (i.e. balances) on the child chain.

One of the most powerful guarantees of Plasma is that a user can request a withdrawal of all assets back into the main chain, and these assets can be credited back to users after a challenge period. This challenge period allows anyone else to challenge the withdrawal if they believe it was invalid by submitting a fraud proof. The Plasma framework guarantees that all digital assets on the child chain are secured by Ethereum’s security guarantees, resulting in scalability + security.

Applications utilizing Plasma chains can interact directly with the sidechain instead of with the main chain, and increase their transaction throughput by orders of magnitude. DApps like decentralized exchanges, marketplaces, and games can immediately take advantage of this scalability by running on separate Plasma chains, thereby avoiding the high cost, low throughput, and crippling network congestion that has plagued layer 1 blockchains today.

Where Elph Comes In

Elph’s sidechains utilize Plasma technology to increase the throughput of applications to over 6,000 transactions per second, a 400x improvement to Ethereum’s 15 transactions per second.

Our sidechain is being rigorously tested right now on Rinkeby testnet and we are fully working on bringing this to mainnet as soon as we can. Our Javascript SDK for interacting with the sidechains is ready to use today.

Developers will soon be able to configure every component at setup, from choosing the consensus protocols their apps run on to various different security guarantees. This is analogous to how advancements in cloud computing in the past decade have made setting up server infrastructure a matter of a few clicks.

Here at Elph, we are building the critical infrastructure for blockchain applications so that developers can only worry about their application and leave the scaling to us.

Conclusion

Scalability is one of the most important areas of research in the blockchain community, and both layer 1 and layer 2 solutions offer significant improvements to the transaction throughput we currently see today.

We are focusing on layer 2 solutions to let developers build highly scalable applications. If you want more continuous updates about our progress, please sign up on Elph.

If you’re interested in using Elph, email us at developers@elph.com or message us directly on Telegram.

Learn More about Us

Join any of our channels below to learn more:

Telegram: https://t.me/ElphNetwork
Twitter: https://twitter.com/ElphNetwork
Medium: https://medium.com/Elph
Github: https://github.com/ElphNetwork

--

--