Joseph Poon, the author of the Lightning Network, a micropayments solution for Bitcoin, and Vitalik Buterin, the co-founder of Ethereum, have introduced Plasma, a scaling framework for Ethereum which has the potential to drastically optimize smart contracts and streamline the process of settling financial activities on the Ethereum Blockchain.
The official whitepaper of Plasma, co-written by Poon and Buterin reads:
“We propose a method for decentralized autonomous applications to scale to process not only financial activity, but also construct economic incentives for globally persistent data services, which may produce an alternative to centralized server farms.”
What is Plasma?
Conceptually, Plasma is very similar to the Bitcoin Core development team’s scaling solution Segregated Witness (SegWit) in the sense that it eliminates unnecessary data in smart contracts and only broadcast merkelized commitments to the public Ethereum Blockchain.
By decreasing the amount of information and the size of transactions passed on to the root blockchain of Ethereum, Buterin and Poon explained that the Ethereum Blockchain will be able to process smart contracts and transactions with lower costs and computation.
The paper further noted:
“As only merkleized commitments are broadcast periodically to the root blockchain (i.e. Ethereum) during non-faulty states, this can allow for incredibly scalable, low cost transactions and computation. Plasma enables persistently operating decentralized applications at high scale.”
zk-SNARKs proof of state transitions
Although the paper by Poon and Buterin presents many mechanisms that can achieve the aforementioned segregation of data and optimization of information sent to the Ethereum blockchain, one of the most promising mechanisms involves zk-SNARKs, a cryptographic system used by ZCash to prevent double spending without revealing the amounts of ZCash held on an account.
According to the paper, zk-SNARKS can also be used to easily provide verification and authentication of complex problems. Similar to how ZCash utilizes the cryptographic system to enhance its security measures anonymously, the Ethereum network can, in theory, construct state transitions (transactions) with zk-SNARKs.
“It is also possible to construct a zk-SNARKs proof of state transitions. For some computational constructions, a bitmap on state transitions may also be necessary in the reduce step (therefore more than one bit can be used per UTXO/account for these use cases). Withdrawals from Plasma chains could be secured by zk-SNARKs which gives the benefit of optionally not requiring the bitmap, which may allow for very small balances to be transferred,” the paper noted.
Importance of Ethereum Blockchain optimization and scaling
Previously, Coinbase co-founder Fred Ehrsam noted that Ethereum will have to scale by 100-fold in order to serve a decentralized application with one to 10 mln users. To scale the Ethereum blockchain effectively, Ehrsam emphasized that off-chain scaling solutions as well as on-chain solutions will need to be implemented.
“These are hard computer science and game theory problems. Most of them have never been solved before. Estimating completion can be hard and can be far off. Large apps can’t run solely on-chain and likely never will. They need off-chain scaling solutions. While it’s tricky to make accurate estimates when combining scaling improvements, it’s conceivable we could see a 100x improvement by the end of 2018, which would allow a 1–10m user app.”
Plasma is an on-chain scaling solution that scales the Ethereum blockchain by optimizing data passed onto the root blockchain. By doing so, it can reduce gas costs or transaction fees handled by smart contracts and decentralized applications, making the Ethereum ecosystem more flexible for developers and users.
Ethereum has an incredibly active and cooperative open source development community and one advantage of such a community is the ability to develop solutions like Plasma that are needed to scale Ethereum and decrease the sizes of smart contracts and transactions.