Note: This is a repost of a blog we shared on our previous website which is why the video presentation reflects our old brand name, OmiseGO, instead of OMG Network.
At OMG Network, we believe the blockchain is the gateway to open financial services. The technology’s ability to accommodate many parties and forms of money allows anyone to transact digital value across the globe without restrictions. Of late, however, the question around the blockchain isn’t if it’ll be a long-term success, but if the technology will be able to scale to handle real-world transactions.
At present, Ethereum can only support 12 -14 transactions per second (TPS). By contrast, most major credit card companies like VISA regularly process 2,000 transactions per second. Scalability is a major obstacle holding back crypto and blockchain from immediate mainstream adoption, which is why we built the OMG Network. A Layer-2 scaling solution that increases Ethereum’s transaction throughput to thousands per second.
OMG Network uses the Plasma Childchain architecture, which works by grouping up several payments off-chain so Ethereum (root chain) can verify transactions in batches instead of individually. This equals to faster throughput and low-cost transaction fees.
Moreover, users can withdraw funds from a Plasma Childchain whenever they wish, even if the OMG Network goes offline. This security guarantee, coupled with fast and cheap transactions makes Plasma the most appropriate Layer-2 scaling solution for payments and value transfer.
The OMG Network is built on our implementation of Plasma called MoreViable Plasma. This is an iteration of the base Plasma solution called MinimumViable Plasma. While both specifications share some similarities, we’d like to discuss the key differences that separate them from one another.
Similarities: MoreViable Plasma vs MinimumViable Plasma
Value on both versions of Plasma is considered Fungible. Fungibility is a feature of a commodity or a good, which, if possessed, means that the good or commodity is interchangeable. An example of a fungible commodity is the dollar bill. There are millions of dollars in circulation, yet every single bill has the same value, and can be exchanged for one another (interchangeable).
Fungibility is important to OMG Network because value transacted on it has to have fungibility to function properly. Without it, digital values like cryptocurrency or loyalty points cannot be easily transacted. Considering that cryptocurrency already faces resistance in the mainstream due to scaling hurdles and government regulations, a lack of fungibility is not something crypto users would like to see.
Fortunately, all cryptocurrencies are fungible. For example, one ETH is worth one ETH anywhere in the world — every single ETH’s value is the same as the other.
Both specifications of Plasma also use the UTXO-based transaction model. An Unspent Transaction Output (UTXO) is the output of a transaction that a user receives and is able to spend in the future.
Here’s an analogy that explains UTXO’s well:
Let’s say you have $25 in your wallet, you must have a combination of bills because there’s no such thing as a twenty-five dollar bill.
In this simple example, you could have any of the following combinations of fiat bills:
- Twenty-five $1 bills
- Five $5 bills
- Two $10 bills and one $5 bill
- One $20 bill and one $5 bill
- And so on.
There are many more combinations of bills that add up to $25 but you get the idea. In each case, you have exactly $25 despite the fact that you have a different number of bills in each scenario. This combination of bills is called UTXO. So even if you see $25 in your crypto wallet, you may have different UTXOs sitting in your wallet. The UTXOs vary in size, but when added together, equal the total balance of your wallet.
Since UTXOs have an order (i.e. there is a way to tell if a UTXO came before or after another UTXO) MinimumViable Plasma and MoreViable Plasma can use exit priorities, which makes exits safer.
Exit priorities enable exit-games, which ensure that all parties (The Operator, Ethereum smart contracts, and Watchers) validate transactions. This prevents bad actors from stealing user funds, and allows for the Plasma chain to be scalable while remaining secure. Since Older UTXOs are allowed to exit first, meaning that a fraudulent UTXO created after older UTXOs will not be able to steal funds.
The two flavors of Plasma share a few similarities and may seem interchangeable. However, the big difference between the two Plasma chains start with their treatment of confirmation signatures and how MoreViable Plasma exit games determine transaction authenticity.
Differences: MoreViable Plasma vs MinimumViable Plasma
Confirmation Signatures in Minimal Viable Plasma
In Minimal Viable Plasma, transactions are considered invalid until they are signed twice. Whenever a user makes a transaction, the first signature they pen includes the transaction in the block. Once the sender sees their transaction mined and reported back to the root chain, the user signs the second time. This slower reporting process is called a confirmation signature, a design that involves a concept called exit-priority.
Both signatures must be sent to the operator as part of the Proof of Authority consensus.
If a user wants to withdraw money from the root chain, he or she also has to provide the confirmation signature. If the operator includes a user’s transaction after an invalid transaction, the user simply opts out of signing the confirmation signature. Because a transaction included after an invalid transaction does not have a confirmation signature, it is thus considered invalid.
Confirmation Signatures in MoreViable Plasma
In MoreViable Plasma, there are no confirmation signatures, simply because the process through which users withdraw their funds is modified.
While transactions on Minimum Viable Plasma are considered invalid, MoreViable Plasma assumes all transactions are valid by default. Hence why users can withdraw their funds through an in-flight-exit-game. This verifies transactions by rewarding parties when they challenge an invalid output with one challenge condition. By not needing two signatures per transaction, users enjoy faster transaction speeds and a better user experience on MoreViable Plasma!