Vitalik's new article proposes a new direction of "ZK+Plasma," will the L2 landscape change again?

Haotian
2023-11-15 12:15:28
Collection
Another political rally concerning Layer 2.

Author: Haotian


Editor's Note: On November 14, Vitalik Buterin delivered a speech titled "Exit games for EVM validiums: the return of Plasma" at L2DAYS in Istanbul, followed by an update to his blog post of the same name. In August 2017, Vitalik Buterin and Joseph Poon published "Plasma: Scalable Autonomous Smart Contracts," announcing Plasma as a new scalability solution for Ethereum. However, there has been little progress in the technology since then, and Plasma is very complex regarding issues like fund withdrawal, making it difficult to become a truly viable scalability solution. Nevertheless, the failure of Plasma was not in vain; the emergence of zk-Rollup has shown a possible direction for layer-2 scalability, addressing Plasma's data availability and withdrawal complexity issues. As the L2 landscape becomes increasingly centralized, Vitalik has reintroduced the Plasma solution and explored more possibilities for Ethereum scalability in conjunction with zk-SNARK proofs. Crypto researcher Haotian has written an article interpreting Vitalik's new post from the perspectives of Plasma application scenarios, ZK+Plasma, and more.

After reading Vitalik Buterin's new work on the return of Plasma, I was deeply attracted by the "exit game" mechanism based on UTXO-like ledgers, and it seems that Vitalik intends to guide the market towards exploring ZK+Plasma, avoiding the market's stagnation in the Rollup phase. Next, I will provide a detailed explanation.

In my previous interpretation of Vitalik's article, I mentioned that Ethereum's layer-2 scalability solutions originally included various options: Plasma, Rollup, Validium, Parallel, etc. Vitalik's expected direction for scalability should be balanced development, adapting to various application scenarios for diversified layer-2 construction. However, the current market landscape is dominated by Rollup solutions, which are increasingly competitive.

Although Rollup solutions are highly secure, they are overly dependent on Data Availability, while pure Ethereum DA is limited by performance and cost issues. As a result, the market has produced a solution that positions itself within the Rollup camp but relies on third-party DA, which is distorting the nature of Rollup and is certainly not the situation Vitalik wants to see.

Thus, Vitalik's new article reintroduces Plasma and guides a ZK+Plasma scalability solution, clearly signaling a political stance regarding layer-2.

Why is Plasma currently limited to payment scenarios?

Plasma is essentially a sidechain solution that periodically synchronizes Merkle state data with the mainnet, relying on the mainnet for data and computation. In this way, layer-2 can efficiently scale using a very centralized approach and a complex ledger model while reusing the capabilities of mainnet validators.

Overall, using Plasma in payment scenarios can ensure that the ledger state is effectively tracked and recorded. Why is that?

1) In payment scenarios, users only need to retain balance states. If other scenarios require retaining all off-chain state data, it would create storage pressure.

2) Plasma's security relies on the "exit game" mechanism. If the operator acts maliciously, users can challenge and claim their assets. If the asset state is complex, it can become troublesome.

3) Currently, Plasma has difficulty accommodating many unowned states of EVM, making it hard for users to correspond many non-transactional states, such as LPs and CDPs, with Plasma's Merkle state tree ledger.

How does Plasma operate in payment scenarios?

As mentioned in Vitalik's article, simply put:

Plasma Cash treats each token as an NFT with a unique identifier. When a user makes a transfer, the operator records an update on the Merkle tree leaf. Each user can save their global Merkle tree state, ensuring that the ledger can be traced without confusion.

If the tokens are homogeneous, users may encounter multiple splits and merges during consumption. For example, if Xiao Wang has 1 ETH, he might split it into three parts and then merge two of them back. Each part could be irregular, such as 0.001, 0.1, 0.3, etc. If there are a large number of splits, it could lead to Merkle data redundancy, causing issues when initiating the exit game mechanism (the challenge and verification costs could be high), such as discrepancies when tracing the ledger from the past week. How to solve this? A UTXO-like ID can be matched to each asset split or merge state, allowing immediate location of the corresponding transaction leaf regardless of how it is split.

How to ensure a secure "exit game" mechanism?

Since Plasma does not have its own independent chain system like Rollups, it must constantly ensure that its sidechain bookkeeping remains synchronized with the mainnet. This allows it to avoid deliberately pursuing decentralization, as long as there is an efficient bookkeeping operator.

But here comes the problem: what if the operator publishes invalid blocks and keeps false accounts, stealing user assets? Users need to initiate the "exit game" mechanism at any time to withdraw their layer-2 assets back to layer-1, similar to the escape pod safety mechanism of Rollups.

How does this work? Users can present their Merkle tree state proof to demonstrate the asset transfer process and initiate a 7-day challenge period. Mainnet verification nodes will check whether the user is the final asset owner and whether there are issues like double spending. (Because mainnet nodes store more Merkle tree states, they can verify whether the user's proof has malicious exit intentions).

By using the "exit game" to constrain the layer-2 operator's malicious behavior, and the existence of the challenge period prevents users from maliciously exiting, this ensures the normal operation of the Plasma chain.

The difficulty of accommodating EVM "unowned states"?

As mentioned earlier, Plasma is currently more of a layer-2 solution designed for payment transaction scenarios, comparable to a UTXO model of bookkeeping, while EVM itself is an account model. UTXO can record each balance state refresh, but many "unowned" scenarios in the EVM state machine are difficult to implement with Plasma's solution.

For example, assets deposited in Uniswap pools or those in MakerDAO's CDP are similar; users find it hard to prove which asset belongs to them. Thus, if the operator experiences downtime and the contract gets locked, users cannot properly "exit the game."

Because they cannot prove they have funds in the contract. Due to Plasma's data characteristics, the mainnet can only monitor the contract's balance. If the operator issues additional funds to the contract, how can users prove which funds are theirs and which are maliciously issued?

Moreover, if a layer-2 sidechain can only facilitate payment transfer transactions, how can applications and ecosystems be built? Clearly, this greatly limits the use cases for Plasma.

The imaginative space released by ZK+Plasma

If the underlying Plasma is completely ZK-ified, user operations would exist in the form of zk-SNARK proofs, which could release many EVM state machine scenarios:

If a user deposits an asset into a Plasma contract, they can construct a zkSNARKs proof that can initiate an "exit game" on the mainnet. Thus, even if the pool is frozen due to security threats, users can withdraw their legitimate assets.

Or in privacy DEX trading scenarios, users can use zkSNARKs to prove ownership of certain assets without exposing their privacy. Additionally, Plasma's smart contracts can prove the correctness of their state upgrades in zkSNARKs form during complex upgrades, without revealing details, thereby increasing the difficulty of contract malfeasance.

In summary, Vitalik clearly describes the current state of Plasma and the existing problems, including the potential for future ZK-ification. In my view, Plasma is not novel; it has already found its place in payment scenarios over the past few years. At this moment, Vitalik's proposal of ZK+Plasma as a new direction is both a directional guide and a political stance. As for whether the market will follow Vitalik's lead, I am not very optimistic:

1) Rollup is the optimal solution derived from the market's investment costs, development difficulties, and ecosystem compatibility. While ZK+Plasma is indeed a more advanced form of ZK-Rollup, the current development of ZK-Rollups is also not optimistic, making a direct leap to Plasma too hasty.

2) Validium, as an independent chain scalability solution, is relatively more advanced in its application of ZK, but it completely relies on off-chain DA. In contrast, ZK+Plasma seems to have a higher stickiness to the Ethereum mainnet. However, Vitalik's call can be understood; the motivation for mature ZK developers to abandon Validium in favor of ZK+Plasma may be insufficient.

ChainCatcher reminds readers to view blockchain rationally, enhance risk awareness, and be cautious of various virtual token issuances and speculations. All content on this site is solely market information or related party opinions, and does not constitute any form of investment advice. If you find sensitive information in the content, please click "Report", and we will handle it promptly.
banner
ChainCatcher Building the Web3 world with innovators