What is Ethereum Plasma?
Scalability is one of the main concerns of Ethereum. Currently, the constraints its network faces in terms of capacity and speed prevent it from being adopted on a larger scale globally.
Ethereum Plasma was developed by Ethereum co-founders Vitalik Buterin and Joseph Poon. The concept was born in August 2017 as a scaling solution for Ethereum. Along with Thaddeus Dryja, Joseph Poon was also responsible for the initial concept of the Lightning Network, a Bitcoin scaling solution proposed in 2015. Although both Plasma and Lightning Network have been proposed as scaling solutions for blockchains, they have their own mechanisms and peculiarities.
This article will briefly introduce Ethereum Plasma, but it is worth noting that Plasma is not a separate project, but an off-chain scaling technology, or rather a framework for building scalable applications that can be Different research groups or companies do it in different ways.
How does plasma work?
The main idea of Ethereum Plasma is to build a sidechain framework that will communicate and interact with the main chain (Ethereum in this case) as little as possible. Such a framework is designed to operate on a tree-like blockchain, which is arranged in a hierarchical fashion such that many smaller chains can be created on top of the main area. These smaller chains are also called Plasma chains or subchains.
Plasma’s structure is built through the use of smart contracts and Merkle trees to create an unlimited number of child chains – basically smaller copies of the parent chain’s Ethereum blockchain. On top of each child chain, more chains can be created, which is why it is called a tree structure.
Basically, each Plasma subchain is a customizable smart contract that can be designed to work in unique ways to meet different needs. This means that chain and chain can coexist and operate independently. Ultimately, Plasma will enable businesses and companies to implement scalable solutions in a variety of ways depending on their specific context and needs.
Therefore, if Plasma can be successfully developed and implemented in the Ethereum network, the main chain (of Ethereum) will be less likely to become congested, as each sub-chain will be designed to work with a specific goal – which is not necessarily the same as the main chain target related. Therefore, the child chain will relieve the overall work of the main chain.
The communication between the child chain and the root chain is protected by an anti-forgery proof, and the root chain will be responsible for keeping the network secure and punishing malicious actors.
Each subchain has its own mechanism to validate blocks and implement anti-forgery proofs, (these) can be built on top of different consensus algorithms. The most common are Proof of Work, Proof of Stake and Proof of Authority.
Anti-forgery proofs ensure that users are able to report dishonest nodes, protect their funds, and exit transactions (this involves interaction with the main chain) if malicious behavior occurs. In other words, proof-of-forgery serves as a mechanism through which child chains in Plasma can submit complaints to their parent or root chain.
Plasma’s white paper also proposes a very interesting application called MapReduce computing. Basically, MapReduce is a set of functions that are very useful in organizing and computing data across multiple databases.
In the context of Plasma, these databases are blockchains, and the tree-like structure of the chains allows MapReduce to be used to validate the data in the tree-like chain, which greatly improves network efficiency.
Mass Exit Problem
A major problem plaguing Plasma is the mass exit problem, which is a situation where many users try to exit their Plasma chain at the same time, flooding the root chain and causing a lot of network congestion. This can be triggered by fraudulent activity, cyber-attacks, and any other type of critical failure that can occur with a subchain or a group of chains.
Basically, Plasma is an off-chain solution that attempts to significantly improve the overall performance of the Ethereum network by creating many smaller tree-like chains. These chains will offload the work of the main chain, allowing the main chain to process more (other) transactions per second.
The layered model of linked blockchains proposed by Plasma has great potential and is currently being tested by many research groups. Plasma through proper development may increase the efficiency of the Ethereum blockchain and provide a better framework for the deployment of decentralized applications. Furthermore, the idea can also be adapted and implemented by other cryptocurrency networks as a way to avoid scalability issues in the future.
Ethereum Plasma is an open source project and the public repository can be found on their GitHub. Besides Ethereum, there are many other cryptocurrencies and GitHub repositories doing work on Plasma. Some examples include OmiseGO, Loom Network and FourthStateLabs. For more detailed and technical information, you can refer to the official Plasma white paper or the LearnPlasma website.