What is OmiseGO & The Plasma Protocol?
OmiseGO is one of the most exciting projects being built on top of Ethereum. Their goal is to become the world’s biggest peer-to-peer cryptocurrency exchange platform. OmiseGO describes itself as: “The answer to a fundamental coordination problem amongst payment processors, gateways, and financial institutions”.
One of the main reasons why the community is waiting for it with bated breath is because of their implementation of Plasma
The Team Behind OmiseGO
The company behind OmiseGO is , a “payment gateway for Southeast Asia, based in Thailand, providing a secure and white label solution to merchants and enterprise businesses.”
The team is helmed by CEO Jun Hasegawa.
What is even more impressive, however, is their team of advisors. Their advisors are the “Who’s Who” of the crypto-world. Just look at some of the names here:
- Vitalik Buterin.
- Joseph Poon.
- Dr. Gavin Wood.
- Vlad Zamfir.
- Roger Ver.
With such a strong team behind them, you can see why people are excited about this project.
Before we get to know about anything else let’s get into the one thing that the OmiseGO project has become synonymous with, Plasma.
Why is Scaling Required?
Scaling is the name of the game. With the increased acceptance of cryptocurrencies, the strain on the blockchain has grown immensely. The reason behind that is the design of the blockchain itself.
A blockchain network is made of several nodes. A node is essentially a user connected to the network. The nodes are the lifeblood of the blockchain, not only are they responsible for the overall functioning of the chain, they are responsible for governance as well. Whenever the network needs to come to a decision, every node (or a supermajority of them) must consent and then and only then is the decision taken.
The reason why that is done so is simple:
- It helps give decentralization.
- It increases the security and the resilience of the network.
However, what the network gains in security, it loses out inefficiency.
Ideally we would want the blockchain system to be able to parallelize all its tasks to save up on time and increase efficiency, however, that is not something that can be achieved. There are certain tasks in the blockchain which are parallelizable while there are some which are not.
A good example of “parallelizable” task is digital signature verification. All that you need for signature verification is the key, transaction and the signature. With just three data you can conduct verifications in a parallelized manner.
However, not all the functions on a blockchain should be done that way. Think of transaction execution itself. Multiple transactions can’t be executed in parallel; it needs to be done one at a time to avoid errors like double spends.
While all this sounds good in theory, it sort of falls apart when you use it in real life implementation. The plain and simple fact is that no system, which depends on every single solitary node to consent on every single decision is ever going to scale up efficiently. Nowhere was this more apparent than during the cryptokitty fiasco.
Cryptokitties is a blockchain-based virtual game that allows players to adopt, raise, and trade virtual cats. The game was made by Vancouver based blockchain company Axiom Zen. However, what is truly important to remember is that this is the first known application of DAPP for leisure and recreation.
Sales of Cryptokitties have been through the roof. People have
Let’s try to get a layman’s understanding of what Plasma means.
Plasma is, in essence, blockchains built on top of blockchains. It is a series of contracts that run on top of the root chain (eg. the main ethereum blockchain).
If one were to envision the architecture and the structure, then think of the main blockchain and the plasma blockchains as a tree. The main blockchain is the root while the plasma chain aka child blockchains are the branches.
Image credit: Hackernoon
The root chain is like the universal absolute ground truth, while the child chains work around it doing their own computations and periodically feeding state information to the root chain.
The root chain comes into play only when there is a dispute that needs to be settled in the child chain, otherwise, it doesn’t involve itself with anything going on in the child chain and this point is the core underlying philosophy behind it. If the root chain is going to be the ground truth, then it must remain as devoid of activity and calculations as possible.
The root chains and the child chains will form a set of “nested blockchains.” To understand how a “nested” system works, it may be useful to take the example of nested loops. The reader maybe familiar with the concept.
This is how nested loops work:
Instead of using just one loop to execute the entire condition, we used another loop inside the main loop and split up the condition. The inner loop does a calculation and returns a value to the main loop. This makes computation a lot less complicated.
That is in essence how the nested blockchains operate. Another interesting way to understand this and especially to know how dispute resolution in plasma works, it may make sense to think of the court system.
Correlation with the court system
Let’s look at the court hierarchy in the UK.