Dr. DODO is Researching

Posted on Nov 22, 2023Read on Mirror.xyz

Plasma + ZK-SNARKs: A New Path for Ethereum Scaling?

Last week, Ethereum founder Vitalik Buterin published his latest article “Exit games for EVM validiums: the return of Plasma” on Twitter. The article focuses on introducing the Plasma scaling solutions and intends to combine the increasingly marginalized Plasma with ZK-SNARKs.

After the article was published, many projects related to Plasma surged in price, bringing this technology that was replaced by Rollup and gradually fading out of sight back into the competition for Ethereum scaling solutions.

In this week’s CryptoSnap, Dr. DODO will explain Plasma in the simplest and most understandable way and elaborate on what Vitalik’s latest article is expressing!

What is Plasma?

The scaling problem has always been a focus for blockchain developers to research in order to achieve the goal of building a decentralized world computer that is cheap and fast. Therefore, various scaling solutions have emerged around the Ethereum mainnet, one of which is Plasma.

Plasma can be simply understood as building a chain on top of the Ethereum mainnet and controlling the flow of funds between the mainnet and the Plasma chain through smart contracts. Unlike sidechains (BNB Chain, Gnosis Chain), Plasma chains need to periodically relay the final state of the chain back to the Ethereum mainnet. Unlike rollup technologies, Plasma chains do not relay all transaction data of the entire chain, but only relay the root of the Merkle tree, which is the state of the Plasma chain.

Source: https://learnblockchain.cn/2018/10/20/plasma-framework

Plasma’s Security Model - “Exit Game” Mechanism

Since computation does not occur on the mainnet, Plasma chains can greatly improve the overall network's scalability and have a relatively safe verification mechanism to prevent malicious actors. Speaking of security, this brings up the "Exit Game" mechanism mentioned in Vitalik's article title, which is the security model of Plasma chains.

In the Plasma framework design, security is protected by its exit mechanism. When a user wants to return to the mainnet or believes there is an attack on the Plasma chain, the user can initiate an "exit" to the Plasma contract on the mainnet and provide proof. If there is no challenger in the seven-day challenge period to challenge this "exit", the assets can be safely withdrawn back to the mainnet. If successfully challenged, the "exit" fails and the malicious user needs to bear the corresponding fines.

Common attack behaviors include the following three types:

  1. Not latest owner: a later transaction signed by the exiter transferring the exiter's coin to someone else

  2. Double spend: a transaction that transferred the coin from the previous owner to someone else, that was included before the transaction transferring the coin to the exiter

  3. Invalid history: a transaction that transferred the coins before (within the past 7 days) that does not have a corresponding spend. The exiter can respond by providing the corresponding spend; if they do not, the exit fails.

Plasma Cash

Vitalik then introduces Plasma Cash in the article, a project using the Plasma framework. In Plasma Cash, each user’s deposited token is regarded as an NFT, and each NFT has a transaction history recorded in the form of a Merkle tree. However, due to the indivisibility of NFTs, Plasma Cash use cases are limited and can only serve specific transfer purposes. At this point, an improved version based on the UTXO model appeared. Through the UTXO ledger form, the problem of indivisibility in Plasma Cash's original NFT transfer design can be solved, which is conducive to development in the payment field, but at the same time also makes it difficult to interact with smart contracts.

Source: https://vitalik.ca/general/2023/11/14/neoplasma.html

Technical Bottlenecks of Plasma

The current technical bottleneck of Plasma is the difficulty in realizing the EVM. This is because many state objects in EVM contracts do not have a clear "owner", which contradicts Plasma's security model. Plasma's exit mechanism requires every state object to have a definite owner who is responsible for monitoring the data of that state object and exiting when necessary to protect asset security. However, many state objects in EVM contracts do not have explicit owners, such as LP in Uniswap or collateralized debt positions (CDPs) in MakerDAO. In this case, if there is a problem with the Plasma chain, the following situations may occur:

  • There is no owner to exit the state, so the status may be permanently locked on the Plasma chain.

  • Even if outsiders can initiate an exit, Exit Game attacks are easily initiated, posing great risks.

  • Complex contract states are difficult to verify.

Plasma + ZK-SNARKs

In response to the technical bottlenecks currently encountered by Plasma, Vitalik said that if mature validity proofs (zk-SNARKs) can be combined, some bottlenecks can be effectively solved. Specifically, it can be divided into the following five points:

  1. zk-SNARKs can prove the validity of Plasma blocks on the main chain, reducing reliance on exit mechanisms.

  2. Assets on the Plasma chain can be withdrawn instantly, removing the seven-day fraud proof challenge period and reducing problems with mainnet reorganizations.

  3. A parallel UTXO structure representing the EVM state can be constructed with zk-SNARKs proving its equivalence, avoiding some EVM problems.

  4. Using zk-SNARKs will greatly reduce the amount of status data users need to verify and store, optimizing user experience.

  5. For smart contracts that are difficult to define ownership, if critical sections can be split into verifiable objects, partial security guarantees can also be obtained.

Although these methods still do not cover all complex EVM contracts, as ZK technology continues to evolve, combined with continuous exploration of the Plasma design space, we look forward to finding better trade-off solutions between security, scalability and experience.

Author’s Perspective

DT @19971122:

Before reading Vitalik’s article, the author was not familiar with Plasma's technical architecture. After all, Ethereum's current mainstream scaling solutions are almost all based on Rollup technology, with various teams rushing to launch L2 networks using rollup technology, and evolving a modular architecture (Celestia, EigenLayer, Avail) that builds the data availability (DA) layer on other networks. As a result, statements emerged like “A modular blockchain that does not use ETH as the DA layer is not a rollup and not an Ethereum L2” from Dankrad Feist, an Ethereum Foundation researcher. The debate around what constitutes the orthodoxy of Ethereum’s development has always been a point of contention that people like to argue about. Just as the discussion around rollups was heating up, V’s article seems to have given Plasma a shot of adrenaline, telling the Ethereum community that Ethereum's scaling solutions are not just rollups, and that ZK + Plasma may also be an option.

The author believes that in the decentralized world, diverse development is a natural process to begin with. But when considering economies of scale, standardized and modularized development seems more economical. As a result, standardized framework products like OP Stack or Polygon zkEVM CDK have emerged for various capitals to build their own L2 networks. However, some degree of diversity is lost. V’s move is probably a reaction to the perception that Ethereum's scaling solutions have lost balance, and he is trying to provide directional guidance. Whether teams will jump out to implement this in the future is something very worth tracking. As a long-term user and supporter of Ethereum, the author also welcomes the balanced development of Ethereum's scaling technology.

NingNing @0xNing0x:

Plasma is a solution aimed at enhancing blockchain scalability by moving most data and computations from on-chain to off-chain. It first appeared in 2017 and has gone through several iterations, including Plasma Cash and Plasma Cashflow. However, due to fundamental limitations in extending Plasma beyond payment applications (issues with ownerless states and incentive flows), Plasma L2 solutions gradually became marginalized.

Meanwhile, Rollups emerged as the mainstream L2 solution, primarily due to their simplicity in design and developer-friendliness. However, with the development and maturation of ZkEVM technology, Plasma has entered a new design space, offering new possibilities for simplifying developer experience and protecting user assets.

Vitalik's recent promotion of Plasma L2 may be aimed at emphasizing the importance of diversity and innovation in L2 paradigms, rather than suggesting that the new Plasma L2 approach could challenge the mainstream status of Rollup L2 solutions. Currently, Rollup L2 solutions lead in terms of TVL size and user numbers, and this position is likely to strengthen further in the foreseeable future due to the Matthew effect.

In the last couple of days, the new paradigm L2, Blast, launched in collaboration between Paradigm and the Blur team, has demonstrated another path of exploration. Although its architecture does not conform to Vitalik's strict definition of L2, it has achieved considerable success in the market and community, quickly attracting community attention and substantial capital participation. This indicates that the market and community are eager for diversity in L2 paradigms, not satisfied with just one or two standard designs.

In summary, while Plasma L2 solutions have potential and innovation, the development of L2 should not rely on a blueprint designed by a top-level architect with supreme rationality, but should emerge from complex, non-linear market competition.

Ethereum