The Road to Layer 2 Expansion of Ethereum: The Decline of Plasma and the Rise of Rollup
Editor's Note: This article comes fromChain news (ID: chainnewscom), Author: Ashwin Ramachandran and Haseeb Qureshi, the former is the junior partner of Dragonfly Capital, a blockchain venture capital institution, and the latter is the managing partner of Dragonfly Capital, compiled by: Zhan Juan, reprinted with authorization by Odaily.
Chain news (ID: chainnewscom)
Chain news (ID: chainnewscom)
, Author: Ashwin Ramachandran and Haseeb Qureshi, the former is the junior partner of Dragonfly Capital, a blockchain venture capital institution, and the latter is the managing partner of Dragonfly Capital, compiled by: Zhan Juan, reprinted with authorization by Odaily.
image description
TechCrunch's coverage of Plasma
Let's fast forward to 2020 again. Ethereum is as slow as ever, but it beats all the so-called "Ethereum killers". The release date of Ethereum 2.0 keeps getting pushed back, and with many development teams dying, Plasma seems to have disappeared entirely.
secondary title
So, who killed Plasma?
Let's turn the time back to early 2017. Ethereum has gone mainstream for the first time, and there is boundless optimism about the near future. Some claim that all assets of value will soon be tokenized. There are standing only places at various meetups in San Francisco, and whenever Ethereum is mentioned, crowds gather. But Ethereum did not achieve scalability.
image description
Vitalik Buterin and Joseph Poon present Plasma at a conference in San Francisco
But what exactly is Plasma, and why hasn't it ultimately lived up to its promise?
secondary title
How does plasma work?
image description
Plasma "Blockchain Tree"
MVP proposes a simplified version of Plasma: a simple UTXO-based sidechain that maintains security in the event of data unavailability. But what are sidechains? What does data not available mean? Before delving into Plasma, let's take a look at what these terms mean.
A sidechain is a blockchain connected to another blockchain. Sidechains can be operated in many different ways, such as by a trusted third party, a consortium, or a consensus algorithm. For example, Blockstream participates in a consortium sidechain on the Bitcoin network called Liquid. Liquid makes trade-offs in its trust model, thus ensuring higher transaction throughput. Users must trust the alliance not to collude and steal funds. In this case, the blockchain operators are various members of the Liquid consortium, such as Blockstream.
image description
Visualization of Liquid peg-in and peg-out mechanisms
A sidechain is connected to a larger blockchain (such as Bitcoin) via a two-way peg. Users can deposit funds on the sidechain by sending funds to specific addresses or smart contracts on the main chain. This is known as a "peg-in" transaction. To withdraw funds, users can perform the same operation on the sidechain to get their funds back on the main chain. This is known as a "peg-out" transaction.
But what does this have to do with Plasma?
As we’ve seen in the examples above, moving funds off a sidechain requires a key component: trust. Users must trust the sidechain operator not to abscond with their money.
But isn’t the main feature of the blockchain trust-free? What if a user wants to interact with a sidechain without trusting its operator?
This is exactly the problem that Plasma aims to solve.
Plasma is designed to minimize trust requirements for sidechain operators. That is, Plasma prevents funds from being stolen even if the operator (or majority in consensus) misbehaves.
But even if operators can't steal funds directly, sidechains have another problem. What if the sidechain operator publishes a block header but refuses to publish the underlying transaction data? This will prevent anyone from verifying the correctness of the sidechain.
This concept is called data unavailability. Plasma tries to keep users safe even if the operator refuses to provide transaction data - in case the operator refuses to release the data, all users can still get their funds back and exit the sidechain.
Plasma has given people hope with its big promises of security and scalability. So it’s no surprise that during the bull run of 2017, it was widely believed that Plasma could solve Ethereum’s scalability problems. But as the market woke up in 2018 and the blockchain hype crashed, a more realistic picture of Plasma began to emerge.
The first problem is that each user must monitor and verify all transactions on the Plasma MVP chain to detect the behavior of malicious operators and exit in time. However, transaction verification is costly, and this need for monitoring adds significant overhead to participating in a Plasma chain.
The researchers also realized that it would be difficult for users to exit a Plasma chain. When a user attempts to withdraw funds from a Plasma MVP chain, they must submit an exit transaction request and then wait for a period of time. This is the so-called challenge period. At any time during the challenge period, any user can challenge another user's withdrawal by providing proof that the withdrawal is invalid (e.g. they are minting fake tokens or stealing someone else's tokens). Therefore, all withdrawals can only be processed after the end of the challenge period, some of which can be as long as 1 week.
But things got worse.
image description
The Growth of Ethereum Storage
In the worst case, if all users need to exit a Plasma chain, the entire valid state of the chain must be published to the Ethereum mainnet within a challenge period. Considering that the Plasma chain can grow arbitrarily, and Ethereum blocks are already close to their capacity, it is almost impossible to dump the entire Plasma chain onto the Ethereum mainnet. Therefore, it is almost certain that a large number of exits will crowd out Ethereum. This is the so-called batch exit problem.
As prices began to plummet in 2018, followers of Ethereum began to realize that Plasma MVP was not the one-size-fits-all scalability solution they had hoped for. There is simply no way to overcome its weakness. Plasma MVP is a dead end. Ethereum will still struggle under its transaction load, and Ethereum 2.0 is still many years away.
secondary title
Next Generation Plasma
In mid-2018, as the price continued to fall, the research community of Ethereum continued to try to improve Plasma, repeatedly studying the design of Plasma MVP. Their new version is called Plasma Cash.
According to its lead designer, Vitalik Buterin, Plasma Cash will allow arbitrarily high transaction volumes per second and solve the problems that plagued its predecessor. Some even claim that the new design can reach hundreds of thousands of transactions per second.
First, let's remember the Plasma MVP problem.
In case of operator misbehavior, there is a batch exit problem
Users have to wait for the entire challenge period to end before withdrawing money
Users must monitor all transactions on the Plasma chain
Compared with MVP, Plasma Cash has one major advantage: by using a different data model, Plasma Cash can completely avoid the batch exit problem. In Plasma Cash, all tokens are represented as non-fungible tokens (NFTs), which makes it easier to prove ownership of a set of tokens. Simply put, it is the user's responsibility to prove that they own the tokens and not others. Therefore, users only need to monitor their own tokens, not the entire Plasma chain.
Plasma Cash also proposes a new interactive challenge system that allows users to easily withdraw funds in the event of operator misbehavior. Utilizing a new Merkle tree structure known as a "sparse Merkle tree," users can easily verify a token's history and ownership using proofs of inclusion. In the case of operator misbehavior, users only need to issue on-chain proofs of the tokens they currently own (including the 2 most recent transactions and corresponding proofs of inclusion).
However, Plasma Cash brings a new set of problems.
Furthermore, in order to prove ownership of a token, users must maintain the entire history of that token and the corresponding proofs of inclusion/exclusion, resulting in ever-increasing storage requirements.
By the end of 2018, the price of ETH had bottomed out, and the utopian optimism was gone. Although Plasma Cash is an improvement over MVP, it is not the Visa-scale solution that Ethereum promised back then. Its MapReduce "blockchain tree" is now just a pipe dream. Most companies developing clients for Plasma Cash have put their work on hold, and their implementations are half-finished.
Plasma appears to be dead.
This SNARK ensures that it is impossible for operators to issue malicious or invalid transactions and ensures that all sidechain blocks are valid.
secondary title
Just when confidence in Layer 2 was bottoming out, a user under the alias Barry Whitehat disclosed a proposal called "roll_up" on GitHub. The report describes a new type of layer-2 scaling solution: a Plasma-like architecture that "packages" transactions without relying on trust in the operator, and the correctness of the package can be verified by using a SNARK's On-chain evidence to prove.
This SNARK ensures that it is impossible for operators to issue malicious or invalid transactions and ensures that all sidechain blocks are valid.
Not long after, Vitalik Buterin released an improved version of Barry's scheme, which he called zk-Rollup. zk-Rollup became one of the most viewed threads on the Ethereum forum. Vitalik suggested introducing a solution to avoid the data availability issues that plagued Plasma: publishing sidechain transaction data on the Ethereum blockchain.
image description
Vitalik's zk-Rollup post
Additionally, it is currently not possible to deploy general-purpose smart contracts on zk-Rollup sidechains. Specialized zero-knowledge virtual machines, such as zkVM and ZEXE, are currently being developed, but still require significant expertise when interacting with them. In most cases, zk-Rollups limit general programmability.
image description
zk-Rollup Visualization, Mapping by Georgios Konstantopoulos
By mid-2019, these new developments had reinvigorated Ethereum's research community. zk-Rollup seems to solve many of the problems that plague layer 2. Companies like Matter Labs (one of our portfolio companies) and LoopRing started actively developing zk-Rollup, both of which now have testnets for implementation. With optimizations, Matter Labs believes it can reach 2,000 TPS on a ZK sync network.
secondary title
Optimism is a good medicine
But not everyone is pinning their hopes on zk-Rollup. A year after the first zk-Rollup specification was published, John Adler and Mikerah introduced a design they called Merged Consensus. Merged Consensus enables an off-chain consensus system that is fully verifiable on Ethereum without any fancy zero-knowledge cryptography. The Plasma team later published an extended version of the merged consensus design, adding the now somewhat infamous name: Optimistic Rollup.
Whereas zk-Rollup relies on zk-SNARKs to verify and finalize each block, Optimistic Rollup takes a different approach: why don't you assume each block is valid?
This works well in Happy Paths when everyone is being honest, but we know operators can get it wrong. So how will Optimistic Rollup deal with the operator's wrong behavior?
The "optimistic" answer is to use fraud proofs. A fraud proof is a computational proof that an operator performed an invalid operation. If the operator issues an invalid state transition, anyone can submit a proof that the transition is invalid and revert those transactions (approximately 1 week time). Since these proofs are non-interactive, they can be sent by anyone: there is no need for users to monitor the security of their tokens.
Optimistic Rollup offers a very different set of tradeoffs than zk-Rollup. They are less expensive (assuming the challenge of fraud is extremely rare), but they are less secure, in other words, there is always the possibility of incorrectly applying a transaction and then recovering it later. This safety window can be as long as a week. Therefore, users cannot exit during this safe window (otherwise, they may run away with other people's funds).
However, these exit problems can be improved by introducing secondary markets. Users can sell their exit rights to third-party liquidity providers in exchange for a small fee. (Liquidity providers will be rewarded for remaining illiquid for a week). This will allow the user to exit the rollup chain immediately.
While zk-Rollup requires programmers to understand complex constraint systems and advanced cryptography, Optimistic Rollup allows general-purpose smart contract deployment (such as Solidity). This means that smart contract-based protocols like Uniswap can be built on Optimistic Rollup sidechains.
The Rollup family of solutions offers similar approaches to solving Plasma's data availability problems and exit complexities, but all have the potential to greatly expand Plasma's structure. For example, IDEX has built and deployed their own version of an Optimistic Rollup and runs a decentralized exchange (DEX) on top of this structure. Likewise, Fuel Labs built a version of Optimistic Rollup that allows UTXO-style payments and ERC-20 token swaps. The Plasma Group (now Ethereum Optimism), recently announced that they are focusing on Optimistic Rollup and aiming to provide general smart contract performance on their platform (via their Optimistic Virtual Machine build).
secondary title


