Plasma white paper (page 19):

"The fraud proofs ensure that a coalition of participants are not able to create fraudulent blocks without getting penalized. In the event a fraudulent block is detected and proven on the root blockchain (or parent Plasma chains), the invalid block is rolled back."

How can a block in an independent chain (Plasma chain) be reverted? If I'm a Plasma operator, how can Ethereum main chain make me revert a block, how is that enforced?

And what if there are valid blocks already built on top of the invalid one?


The smart contract on the parent chain can have a function dispute that gives a merkle proof of the false data in the block. For example, if the Plasma operator changed ownership of a utxo from A to B, the person A could submit a proof that they didn't include a transaction sending from A to B.

Reversion of a Plasma block is basically marking in the smart contract on the parent chain that the block is invalid, and the Plasma operator would have to start back from the last valid block

There is no such thing as a valid block being built on top of an invalid block. If a block is invalid, all of its descendants are inherently invalid.

  • Thanks for the answer. So basically, if an operator creates a block which contains an invalid transaction from A to B at height n, and than at block n+500 A sees that (she wasn't online over the weekend) and submits a proof, then all 500 block which were built after the invalid block automatically become invalid? – Mihailo Bjelic Aug 9 '18 at 14:13
  • Generally, yes. Plasma is less of a strict implementation and more of a concept though, but in a way it's an incentive for users of the Plasma chain to watch each others back. You could develop a Plasma contract such that, if the invalidity within a block is quantifiable and reversible, then only the invalid changes could be reversed without reversing all blocks. But if later blocks depend on past invalidity (e.g. Plasma operator falsely changed ownership from A to B, and in a later block moved from B to C), then things get much more complicated. – flygoing Aug 9 '18 at 14:19
  • I guess that would be hard to implement. After all, the main benefit of the blockchain is that blocks refer to past block hashes, so the history becomes immutable. If you're occasionally excluding blocks from the "middle" of the chain, the whole security model is in danger, I guess. Also, an invalid block should trigger a mass exit, according to the paper? Combine the mass exit triggered after block n with 500 valid blocks after it... :O Like you said, I guess the best way is to take the paper strictly as a general concept/idea, and iterate on it to build something that can actually work. – Mihailo Bjelic Aug 9 '18 at 14:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.