Plasma.io – Scaling and Securing Ethereum Network
This blog post is little different. I am reviewing a very early white paper by Joseph Poon and Vitalik Buterin. Joseph is co-founder of Lightening Network and Vitalk is co-founder of Ethereum. The white paper was published on August 11, 2017. Link to whitepaper is here.This blog post assumes the knowledge of how Blocks in blockchain are mined and constructed, Lightning network. and Multisignature transaction (Multi Sig)
Plasma is a proposed framework on top of Ethereum Blockchain.In short Plasma is bringing Lightening Network to Ethereum Smart contracts. Plasma plans to bring scalability and fraud proof transactions on Ethereum Blockchain and network. This is done by performing side chain operations with map reduce for highly scalable transactions. Plasma block chain is proof of stake approach which incentives miners for transactions and penalizing fraud blocks that are generated on Plasma Blockchain.Incredibly high amount of transactions can be committed on this Plasma chain with minimal data hitting the root blockchain. Plasma will be part of Ethereum metropolis release.
The Plasma blockchain does not disclose the contents of the blockchain on the root chain (e.g. Ethereum). Instead, blockheader hashes are submitted on the root chain and if there is proof of fraud submitted on the root chain, then the block is rolled back and the block creator is penalized. This is very efficient, as many state updates are represented by a single hash (plus some small associated data).The nodes themselves are incentivized to operate the chain.
The greatest complexity around global enforcement of non-global data revolves around data availability and block withholding attacks, Plasma has mitigations for this issue by allowing for exiting faulty chains while also creating mechanisms to incentivize and enforce continued correct execution of data.
Plasma plans to help decentralized applications on Ethereum , to be able to perform highly scalable transactions (potentially billions per seconds),using its new proof of stake mechanism on top of the existing Ethereum blockchain.
Reframing all blockchain computation into a set of MapReduce functions, and an optional method to do Proof-of-Stake token bonding on top of existing blockchains with the understanding that the Nakamoto Consensus incentives discourage block withholding.
Plasma framework has 2 major parts:
- Reframing all blockchain computation into a set of MapReduce functions.
- Optional method to do Proof-of-Stake token bonding on top of existing blockchains.
As we know, Blocks inside a blockchain consists of multiple transactions, which are stored as a single hash using markle tree algorithm.
Bitcoin Markle Tree Diagram
Ethereum Markle Tree Diagram :(Ethereum has 3 merkle trees per block : state , tx. receipt).
Understanding the application of merkle trees is important here, because Plasma framework plans to use MapReducable computations to generate the merkle proofs for the state root calculations (please check state merkle tree).
State root is the one which provides answers like What is the current balance of my account? or Does this account exist? etc.
Plasma Block Tree Structure:
The good:
- Plasma has great team working on upgrading Ethereum.
- Plasma will significantly enhance scalability of Ethereum network.
- Plasma will bring proof of stake and increase security over Ethereum network.
- Plasma will help provide new incentives for miners to run a side chain Plasma block chain.
The bad:
- Side chains are not the ultimate solution for Ethereum scalability, Ethereum itself need to be fixed for scalability.
- Side chains can compromise security and also make the side chains be controlled by limited miners or centralization because of proof of stake.
- Plasma will delay an important transaction to be added to Ethereum main network.
- How will Plasma Proof of Stake and proposed Ethereum Proof of Stake co-exist? It can be complimentary but, the ecosystem is still uncertain.
- How expensive will it be to run a transaction on Plasma? Will this increase the cumulative gas price?
- What type of infrastructure would miners need to setup for executing Plasma blockchain is not certain yet.
- The cost of running plasma blockchain (with mapreduce) might be expensive to maintain by the miners.
- It is not clear how Plasma blockchain transactions will operate with current EVM with existing direct transactions.
- It is not clear on the execution and deployment plan for bringing Plasma to to Ethereum Network.
- It might be additional complications in building MapReduce of blockchains. And hopefully MapReduce does not bring in additional factor for point of failure.
- It is not clear who needs to make the change. Is is the decentralized autonomous application or the Ethereum blockchain.
Reference:
[1] Plasma White Paper: https://www.plasma.io/plasma.pdf