Are you curious about Ethereum plasma and why it’s key to blockchain technology? Great! You’ve come to the right place. To learn blockchain development and be certified I recommend visiting Ivan on Tech Academy.
Blockchain is currently #1 ranked skill by LinkedIn. Because of that, you should definitely learn more about Ethereum to get a full-time position in crypto during 2020.
In my first and second pieces, I’ve discussed Ethereum 2.0 and the best tools for developers. In my third and fourth articles, I’ve discussed quadratic voting and open governance models. Then, in my fifth piece, I’ve looked into Swarm’s infrastructure.
In my sixth and seventh and eight ones, I’ve dove-deep into consensus algorithms and the blockchain trilemma. Lastly, in my last two releases, I’ve looked into blockchain sharding technology adn which projects are making it thrive.
Today I’ll analyse what is Ethereum plasma and how does it work. Should Ethereum developers pay attention to plasma technology and to its advantages in terms of scalability?
Intro to Plasma
The main goal of cryptocurrency and its underlying technology, like Ethereum’s Plasma, is to promote decentralization – be it money, infrastructure, data, or resources. However, decentralisation comes with a huge flaw.
If we wish to keep a network properly decentralized, we must forego either scalability or security. Bitcoin and Ethereum, for instance, have chosen to renounce scalability in order to maintain the network security. Because the Ethereum Foundation wants to create a fully-working world computer, scalability must be a key feature of the system. Plasma’s mission is to improve scalability while maintaining security.
Ethereum Plasma introduced a novel scaling solution that could enable Ethereum to reach many more transactions per second than currently possible. Like payment channels in the Bitcoin Lightning Network, Plasma is a technique for conducting off-chain transactions while relying on the underlying Ethereum blockchain to ground its security. Therefore, we can see how the major components of Plasma interact, courtesy of Plasma.io
Although it seems impossible because payment channels work off-chain, it means the main blockchain isn’t overloaded with small transactions. These transactions go through an alternative channel, which in Plasma’s terms are called child-chains.
Think of it as a hierarchical tree of side chains that periodically transfers information back to the main-chain. Ethereum will continue to handle smart contracts in a similar way to how they are handled currently, except it will only broadcast completed transactions to the public Ethereum chain. Plasma takes the concept of off-chain payment channels to the next level by allowing for the creation of child blockchains attached to the main Ethereum blockchain. These child-chains can even spawn their own child-chains, which can themselves have another set of child-chains – and so on.
How does Plasma work?
Plasma is basically many branching blockchains linked to one root blockchain.The Plasma-chain can operate at faster speeds and lower fees than the main chain as they don’t need to be replicated across the entire Ethereum blockchain – just between the interacting agents, like private databases!
As a result, more complex operations can be performed on the child-chain than on the main chain. This allows developers to run entire applications with thousands of users.
Plasma is composed of five key components, according to the original whitepaper:
- An incentive layer for persistently computing contracts in an economically efficient manner
- An efficient computing framework for constructing fraud proofs-of-state transitions within these nested chains
- A consensus mechanism which is dependent upon the root blockchain
- A bitmap-UTXO commitment structure for ensuring accurate state transitions off the root blockchain, while minimising mass-exit costs
- Plasma must fall respect Byzantine fault tolerance (BFT).
Plasma uses multiple systems to guarantee users cheap, scalable payments while ensuring high availability and flexibility for those transactions. This is achieved through three main updates and features.
This feature is perceived to act similarly to cash that can’t be divided or cut up to represent different values. Each deposit into the Plasma Cash smart contract will be treated like a bill and indivisible. Plasma Cash utilises unique identifiers when depositing ETH into a Plasma contract that allows users to only store information about their coin. However, by using this model, the storage requirements from a user standpoint can be excessive as one is required to store and maintain an ever-growing history of transactions, inclusion proofs, and non-inclusion proofs.
A method to reduce the storage requirements and maintain finality. Successful checkpoints allow users to discard the history prior to the checkpoint and significantly reduce the storage requirements from a user standpoint. The checkpoint is viewed as final and transactions prior to it can’t be reversed or challenged.
This mechanism is similar to paying with your debit card, therefore named appropriately after that. Each Plasma Debit coin is essentially equivalent to a bidirectional payment channel (similar to the multisig-based payment channels used in the Lightning Network) between the current coin owner and the operator. This allows the operator to record micro-transactions in the payment channel of arbitrary amounts. This method currently only works with single-operator run Plasma chains.
There are two projects leading the way in developing successful Plasma implementations. The first and foremost is OmiseGo. OmiseGO is building out Plasma to enable a Decentralised Exchange (DEX) in order to exchange tokens in their future payment network. The second project is Loom Network that released their version of Plasma Cash to enhance their non-functional testing (NFT) capabilities. Plasma Cash is a great use case for NFT’s as they provide unique identifiers on the Plasma chain and don’t require divisible amounts to operate. Loom has built PlasmaChain, a layer 2 hub that bridges multiple sidechains to Ethereum, allowing for faster and cheaper token transactions and a more performant chain for developers to deploy their Dapps.
Plasma is continuously evolving. The beautiful and exciting part is that developers can implement it in various ways. Plasma is not a product itself. It’s an idea, a specification, and a framework for developers on how to think about layer 2 technologies. Many implementations have come a long way, particularly with Plasma Cash via Loom Network and OmiseGO. There is much work that still needs to be done, especially in the user experience area as many of these implementations rely heavily on the user to actively participate to eliminate fraud.
- Ivan On Tech Academy,
- Ivan On Tech ETH 2.0 code review,
- Build a blockchain in SECONDS,
- Functional programming in blockchain,
- ETH 2.0 discussion,
- Ethereum projects analysis,
- Role of consensus algorithms.
This article is not financial advisement. Changes may happen that the author is unaware of. Always check the resources provided!