The scalability of the blockchain has always been one of the main problems in the Ethereum network. This blockchain faces limitations every day in terms of capacity and speed. Such limitations prevent the network from growing globally.
For this reason, Vitalik Buterin, who is the co-founder of the network with Joseph Poon, sought a solution and made the Ethereum Plasma proposal. The beginnings of this concept date back to August 2017. Ethereum Plasma is an off-chain scalability technique or in other words, a framework for developing scalable applications. This framework can be implemented in various ways by different research groups or companies.
Below we’ll tell you all about how Ethereum Plasma works.
The main goal behind the creation of Ethereum Plasma, as we have already mentioned above, was to build a framework from sidechains that interact and communicate as little as possible with the main chain. In the case of Ethereum Plasma, the main chain will be the Ethereum blockchain. This framework is oriented to operate as a blockchain tree, which is hierarchically organized with the goal of developing numerous smaller chains on top of the main blockchain. Such chains are referred to as secondary or child chains, although they are also referred to as plasma chains or child chains.
The construction of the Plasma structure is based on the use of smart contracts and Merkle trees. Both make it possible for the network to create an unlimited number of sub-chains. It should be noted that these sub-chains are copies of the main blockchain, the Ethereum network. On top of each minor chain, more chains can be erected to form a tree-like structure.
Simply put, each Plasma child chain is a fully customizable smart contract. Such a contract can be designed to participate in the network in a unique way to solve different problems and needs. This system allows blockchains to coexist together and, in turn, operate independently. In some cases, Ethereum Plasma will allow companies and businesses to implement scalability solutions in a variety of ways, all by adapting to their specific context and needs.
This means that after the implementation of Ethereum Plasma in the network, the core network may be less congested if the implementation is successful. This is because each Plasma chain will be configured to work differently to achieve the main objectives of the implementation framework. It should be noted that not all objectives will be related to those of the main network. Simply put, the plasma chains will be responsible for alleviating the overall workload of the main network.
If we look at the Ethereum Plasma whitepaper, i.e. its whitepaper, we will see how it has an interesting application on “MapReduce computations“. MapReduce is, roughly speaking, a set of functions oriented to organize and compute data from multiple databases.
MapReduce, adapted to the Plasma context, are a database on the blockchain. These present a tree structure that offers the possibility of applying MapReduce itself to achieve ease of verification of the data found within the chain tree. This mechanism greatly increases the efficiency of the network.
The communication between the child chains and the root chain is supported by what are known as fraud proofs. Thanks to this, the root chain is responsible for maintaining the security of the network. It also punishes malicious actors who attempt to corrupt the network.
Each child chain has its own block validation mechanisms. In addition, they also have a particular implementation of fraud-proof that can be developed in various consensus algorithms. The most common is to develop it in Proof of Work, Proof of Stake and Proof of Authority.
If for some reason there is malicious activity, fraud testing will allow users to report the dishonesty of the nodes, thus protecting their funds and abandoning the transaction. This implies an interaction with the main chain. After all this explanation we can understand that fraud proofs work as a mechanism that allows a Plasma child chain to impose a complaint to its root chain.
The Mass Exit problem is one of the main concerns related to Plasma. This problem reports a scenario where numerous users try to exit their Plasma chain at the same time. The consequences of this is the flooding of the root chain and the generation of heavy network congestion.
This situation can occur as a result of fraudulent activities, as well as a network attack or any other type of critical failure that a Plasma child chain, or group of chains, can pass through.
In short, Ethereum Plasma is an open source project. It is an off-chain solution that seeks to significantly increase the overall performance of the Ethereum network. All this by developing a new structure of numerous smaller chains in the form of a tree. These chains will be in charge of decreasing the workload of the main network, which will lead to the handling of a greater amount of transactions per second.
Ethereum Plasma is an open-source project whose repository is available on GitHub. In addition to Ethereum, there are other projects and repositories working on Plasma. Some examples are OmiseGO, FourthStateLab and Loom Network.