"In general, my own view is that in the short term, optimistic rollups are likely to win out for general-purpose EVM computation and ZK rollups are likely to win out for simple payments, exchange and other application-specific use cases, but in the medium to long term ZK rollups will win out in all use cases as ZK-SNARK technology improves." -- very important to hear :)
Hes pretty much saying that. Plasma will be extremely niche. I expect the masses will all gravitate towards one L2 (Zk rollups) to avoid fragmentation. Id be very surprised if tether is still going to use OMG. Someone said it best jn the comments below, plasma is designed to solve 2017 issues while zk rollup is designed to solve todays issues.
Essentially yes. The preferred L2 scaling solutions for Ethereum have been rollups (zk and Optimistic) for some time. So much so that rollups are being written into Ethereum 2.0. Uniswap and Chainlink have already been trialing on a testnet Optimism has which uses Optimistic Rollups requiring little change to a project's smart contract code.
Plasma's use case is extremely limited to simple value transfers and that's not what is consuming the most gas and driving up fees on Ethereum. DeFi and NFT games are. Even for value transfers Vitalik thinks zk Rollups are better suited for that than Plasma, State Channels or Optimistic rollups: "In general, my own view is that in the short term, optimistic rollups are likely to win out for general-purpose EVM computation and ZK rollups are likely to win out for simple payments, exchange and other application-specific use cases, but in the medium to long term ZK rollups will win out in all use cases as ZK-SNARK technology improves." - Vitalik Buterin
Plasma is pretty much old tech which doesn't solve the scaling problems of today's Ethereum network. In 2017 the biggest gas usage was token transfers, today it's computation, DeFi etc.
To put it another way. OMG was built to solve the problems of the past bull run in 2017 ICO token transfers. Loopring and Optimism are built to solve the problems of the present bull run, Uniswap and other DeFi dApps.
That is a great write up and I hope that the OMG holders understand that this project has lost it’s scope and relevance. Many bag holders did not do their research on the ongoing inventions in the cryptosphere properly, it was easy to play them. Instead of asking “Where is Karl?”, they should have looked where Karl actually is. ;)
Vitalik disagrees: " In general, my own view is that in the short term, optimistic rollups are likely to win out for general-purpose EVM computation and **ZK rollups are likely to win out for simple payments, exchange and other application-specific use cases**, but in the medium to long term ZK rollups will win out in all use cases as ZK-SNARK technology improves. "
That comment was regarding ZK versus optimistic rollups, it was not trying to say ZK rollups are better than every other category out there. For payments and DEX plasma definitely has the advantage of even greater scale (and hence lower fees) than rollups.
I think your argument is a very good one. I am being downvoted hard in the daily for a similar one. "A theoretical greater throughput when we have millions of transactions" means 0 when the network is not ready and there are no transactions.
I disagree with Vitalik because I think that plasma has virtually unlimited TPS whereas zkrollups are limited. Even with zksnark improvements it'll be limited albeit at a much higher level especially with data availability in shards. But then why can't OMG implement zksnarks once the technology matures? I think the future looks like it'll be comprised of multiple layer 2 solutions that interact with one another. The real question is whether inter layer 2 transactions need to be settled on layer 1 or will it be bypassed. I think people will most likely end up doing mapping to bypass layer 1. Because exits to layer 1 could be very costly.
At best zksnarks will provide scalability of 500x, which is 7.5k TPS.
One thing you may not realize is that what VB is saying is predicated on data shards being functional and that's not going to occur until late 2021 in an audited stable state. Even then, well designed audit incentives for rollups may be necessary. Also, you've missed his point about plasma rollup hybrids being possible.
>Exploring the design space in between plasma and rollups - are there techniques that put some state-update-relevant data on chain but not all of it, and is there anything useful that could come out of that?
The thing is, ZK roll ups still have some stuff they need to solve and it’s not ready to integrate today. If any entity is looking for ways to decongest transactions on ethereum TODAY, omg is one of very few that is ready to be integrated.
Getting on the ZK roll up hype train is like getting on the plasma hypetrain back in 2017
> Getting on the ZK roll up hype train is like getting on the plasma hypetrain back in 2017
Simply untrue. In 2017 all anyone had were whitepapers. There was not one working Plasma implementation. Today we have two working Plasma implementations (OMG and Matic) as well as two working rollups (Loopring and Optimism). The community, market and Vitalik have decided rollups are the preferred scaling solution.
>This is entirely false. Loopring is fully functioning zk rollup and has just hit $4m in daily volume
Auditing incentives - how to maximize the chance that at least one honest node actually will be fully verifying an optimistic rollup so they can publish a fraud proof if something goes wrong? For small-scale rollups (up to a few hundred TPS) this is not a significant issue and one can simply rely on altruism, but for larger-scale rollups more explicit reasoning about this is needed.
One thing I don't fully understand: he says that when Ethereum gets data sharding, rollups can use that instead of the eth1 chain, but don't you also need execution (i.e. smart contracts) for deposit and withdrawal? IIUC, in the first sharding step there is no execution/no EVM. So, if you want to withdraw from the rollup, how will the eth1 chain learn about this? I just feel like I'm missing something here.
The deposit and withdrawal logic would be on the eth1 chain. Use of eth2 data space _does_ depend on either the merge or an eth2 light client inside eth1 to allow eth1 contracts to be able to read eth2 data.
As someone who's active in the Blockchain space since 2015, I found rollups to be a really cool invention. The idea of simply compressing data with a zero knowledge proof is quite simple and beautiful.
A year ago, I've worked at a company that tried making Plasma work (https://leapdao.org). We even had shipped a Plasma chain to the mainnet. As Vitalic points out correctly, a major problem (apart from not having guaranteed data availability for the Plasma's chain data) was that in order to transact "off-chain", a user had to transfer some money into a bridge. Only then, the Plasma chain credited this money to the user.
That was a major usability problem, as it took a really long time and since the user was then anyways subjected to really high transaction costs at least once. Hence, we had really low liquidity and the project never took off.
With rollups, I imagine this could become less of a burden as there's no double accounting. The single source of truth is the smart contract checking the "batches". I can imagine having a contract interface that's the equivalent of "depositing into a rollup and immediately send it to person X". I could even imagine an ERC-20 V2 standard that makes any token a rollup. Then you simply never leave L2, meaning the "on-boarding problem" would be solved.
I'm not a cryptographic expert, but to me zkp are still somewhat scary and opaque. They're really hard core concepts that still seem to be in development and have not proven themselves. As an engineer with 5 yrs of experience in the field of blockchain, I'd still be really hesitant to build something with zkps without having a sort of cryptography consultant by my side.
Optimistic rollups seem to be a better fit here. Still, I have the feeling that much of this can still be significantly simplified once a well-matching use case comes into sight. But that's just a feeling for now...
Great write-up, concise and very clear. I just started learning dapp development and was able to easily grasp the different forms of L2-scaling.
I am especially excited about recursive ZK-Rollup smart contracts even though they are complex and computationally expensive. They seem to be more trustworthy than Optimistic Rollups and I can see them becoming the standard eventually.
It is great to follow this dapp tech at its frontier, so much potential and new breakthroughs every few months it seems!