Here we’ll quickly breakdown what plasma is and the system’s consensus protocol, potential vulnerabilities, and projected future state — all straight from the whitepaper in a way we call can understand!
Here’s my annotated version of the white paper with notes.
What is Plasma?
Plasma is a way to do scalable computation on the blockchain. Plasma is a series of smart contracts which runs on top of an existing blockchain that focuses on batch transaction enforcement and settlement to better scale load on parent chain (E.g. Ethereum). The purpose of Plasma is to make blockchain transaction throughput and settlement much more scalable, while introducing additional features of cross-chain transaction interoperability. Plasma is a “chain within a blockchain.” Incredibly high amount of transactions can be committed on this Plasma chain with minimal data hitting the root blockchain given that only the block hashes of the Plasma chain are submitted to the root chain to check for fraudulent blocks (blocks with fraudulent transactions within them)
Plasma makes blockchain transactions P2P efficient, while maintaining consensus validity across all transactions.
More importantly, Plasma makes it so that not everyone has to validate your transaction (like in PoW). Rather, the root chain can still attest to any potential fraud by analyzing the submitted Plasma block. Plasma makes blockchain transactions P2P efficient, while maintaining consensus validity across all transactions.
Plasma Consensus Protocol
- The consensus mechanism for this proof of stake system, is again, enforced in an on- blockchain smart contract.
- Instead of enforcement of an incrementing nonce state (via revocations), we construct a system of fraud proofs to enforce balances and state transitions of these chain hierarchies. In effect, we are able to create state transitions which are only periodically committed to parent chains (which then flows to the root blockchain).
- Constructs computation in a MapReduce format to more easily design computation and state transitions in a hierarchical tree. This creates economically enforceable computation at scale, with only one block header/hash committed on the root chain to encompass very high amount of data and work. It is only if a block is faulty that proof of invalidity is published, otherwise extremely minimal amounts of data is submitted on the root chain periodically.
- You can assert computations with down the line consensus
where faults are caught by block (not tx)
- The role of the token is to ensure there is costs localized to the validators if they act faulty via value declines in the token.
- Plasma uses a merkleized proof to enforce child chains. The fraud proofs ensure that all state transitions are validated.
- The Plasma chain publishes its block header on the root chain and its header is enforced by the fraud proofs. In the event a fraudulent header is published with data availability for others’, any other participant can publish a fraud proof and the commitment and block is rolled back, with penalties to the publisher.
- A series of map and reduce functions allow for the blockchain to operate in such a way whereby there is obligation to process data. This requires the parent and children to create obligation of processing. Children must include the parent passing in data else the chain will halt.
- If no one is watching/enforcing the computation, it’s presumed to be correct, or it simply doesn’t matter what the result may be. This could be a big assumption —as it would mean that whichever network you
create using Plasma, all nodes must be invested in whatever transactional network is operating
- Free Problem Option — In smart contracts, there is an issue of the ”free option problem” whereby the receiver (second or last signer) of a smart contract offer is needed to sign and broadcast the contract in order to enforce it
- Inability to immediately verify state until next block confirmation by root blockchain
- Can nodes DDOs network with opposing bonded proofs to hold up withdraws?
Potential Future State and Application Stack
- Exponential increase in scalability when transacting over ethereum network with decreased fees
- Modularize blockchain transactions into multiple, hierarchal Plasma chains for increased Dapp scalability