What is ZK Rollup? Advantages, limitations of Zk Rollup and prominent projects
I believe we have all heard the terms “ZK” or “ZK Rollup”. So, what are the differences between ZK Rollup and Layer-2 solutions like Optimism? What are the improvements? We will find out in this article.
I’m Neo — Admin — Community Manager of Optimus Finance and Growth Marketing of lecle_vietnam. Let’s get started!
Table of contents
1. What is ZK Rollup?
2. Why is Zk Rollup considered better than other Layer 2 solutions?
3. The basic differences between ZK Rollup projects
4. The limitations of Zk Rollup projects at the current time
5. Prominent Zk Rollup projects on the market
5.1. StarkEX & StarkNET của Starkware
5.2. zkSync (v1), zkPorter (v2), ZkEVM (v3) của Matter Labs
5.3. Loopring
6. The common development direction of Zk Rollup projects
7. Closing thoughts
1. What is ZK Rollup?
Zk Rollup is a layer 2 scaling solution for Ethereum that utilizes zero-knowledge-proof technology.
Zk Rollup enables the aggregation of a large number of transactions into a Rollup block and generates a concise proof for the off-chain block. Then, the smart contract on the Ethereum layer 1 only needs to verify that proof without having to re-execute the transactions. This can help save a lot of gas fees as verifying the proof is much cheaper than re-executing the computations.
2. Why is Zk Rollup considered better than other Layer 2 solutions?
According to Vitalik’s perspective, there are basically 5 scaling strategies for Ethereum:
- Multiple independent chains (similar to what Polkadot and Cosmos are doing).
- Extremely large blocks.
- Improvements that increase performance without changing the security model.
- Layer 2 (channels, plasma, rollup).
- Sharding.
In the Layer 2 segment, it can be said that Rollup is the leading solution. Rollup is divided into two main types: Optimistic Rollup and Zk Rollup. Generally speaking, all the advantages that Optimistic Rollup provides can also be provided by Zk Rollup in the future.
The main reason why Zk Rollup is considered superior to Optimistic Rollup is because its completion time (the process of verifying the validity of transactions) is the fastest.
Optimistic Rollup is secured through fraud-proof, which makes them subject to a “challenge game.” Meanwhile, ZK Rollups are secured through math (proving to someone else that you know the answer without telling them the answer), and you can see the difference between them through the following simple example:
Zk Rollup and Optimistic Rollup walk into an adult bar that only admits people over 18. The bouncer asks, “Can I see your ID?”
- ZK Rollup says: “I can prove to you that I am over 18 years old, but I will not show you my ID.”
- Optimistic Rollup says: “If nobody can prove that I am not over 18 years old within 7 days, that means I am over 18 years old.
From a retail user’s perspective, the “challenge game” is manifested through withdrawal waiting times on platforms such as Optimism or Arbitrum. If the withdrawal waiting time is reduced, users will have a better experience, but the security will decrease as the cost of network attacks will be lower.
Zk Rollup solutions do not suffer from this, and over time, as zero-knowledge proof technology develops, Zk Rollup will only get better, and the process of verifying and confirming the validity of Rollup blocks will become faster and cheaper.
That’s why Zk Rollup is recognized as the leading scaling solution for Ethereum in the medium and long term. (In fact, Zk Rollup technology still has many limitations at the present time, and we will explore these limitations in the following sections).
Vitalik supposed that in the medium and long term, ZK rollups would be successful in all use cases as ZK-SNARK technology improves.
3. The basic differences between ZK Rollup projects
In the current market, there are many Zk Rollup projects, each with its own approach, advantages, and limitations. Understanding these pros and cons can help us gain a more objective perspective, support the process of analyzing and evaluating the potential of those projects, and seek good investment opportunities.
In my opinion, we can classify Zk Rollup projects based on two factors:
- How data is stored (on-chain or off-chain).
- Zero-knowledge proof scheme used.
Choosing to store data on-chain or off-chain (also known as Validium) brings its own advantages and limitations. There is no optimal choice in all cases; it is a trade-off between decentralization and processing speed, operating costs, depending on the project’s development direction, they will provide appropriate choices.
The second point to note is the use of Zero-knowledge proof technology, similar to the previous case, there is no best solution in every situation, it is a balance between proof size and security assumptions. You can see the relationship between them in the image below.
4. The limitations of Zk Rollup projects at the current time
Personally, I have noticed two notable limitations of Zk Rollup projects. The first point is the general limitation of Rollup, and the second point is the specific limitation of Zk Rollup.
The first issue is the problem of transaction fees. Mostly, Rollup platforms have higher transaction fees than Ethereum’s EVM Sidechains. This is because each final roll-up block must be posted to Ethereum, linking their fees to Ethereum fees (Zk Rollup saves fees because they only post Proof). Therefore, each Rollup platform can only scale Ethereum to a certain extent.
Next, at the current time, zk-Rollup is not developer-friendly, and its application scenarios and functions are quite limited:
- Zk Rollup applications are currently limited to simple payments and transactions.
- In addition, Zk Rollup currently does not support aggregation, and different Zk Rollup applications cannot interact with each other in the same Layer 2.
- If you want to develop DApps in Zk-Rollup, you need to write all your smart contract logic in a special language, which is not only complex in syntax (as it is a new language) but also requires extremely high expertise in the field of zero-knowledge proof.
5. Prominent Zk Rollup projects on the market
5.1. StarkEX & StarkNET của Starkware
Starkware (also known as Starkware Industries) is a company founded in January 2018 by Eli Ben Sasson — Co-founder of STARK & ZCash. StarkWare improves the scalability and privacy of blockchains by using STARK technology to implement and verify zero-knowledge proofs.
StarkWare’s first product, StarkEX, can be seen as a Specific L2, with applications limited to simple trading and payment transactions such as AMM, Spot Trading, Payments, NFT minting & trading. StarkEX allows Dapps to be deployed in three modes:
- ZK Rollup mode: Data is stored on-chain.
- Validium mode: Data is stored off-chain.
- Volition mode: Combining the two.
StarkEX & StarkNET have their own programming language and virtual machine for execution, which are not compatible with Ethereum’s EVM. Therefore, developers who want to build Dapps on StarkNET in the future will need to learn a new programming language called Cairo, which is the native smart contract language for StarkEX & StarkNET.
5.2. zkSync (v1), zkPorter (v2), ZkEVM (v3) của Matter Labs
When it comes to Zk Rollup, besides Starkware, another equally famous company is Matter Labs. The Zk Rollup product provided by Matter Labs uses PLONK to implement and verify zero-knowledge proof.
The first version is called zkSync (v1), and the second version is called ZkPorter (v2). The main difference between them is whether the data is stored on-chain or off-chain. Basically:
- If you want safety, use version V1.
- If you want cheaper (but less safe), use V2.
The common purpose of both versions is only to serve payment transactions, it is not as diverse as StarkEX.
Meanwhile, Matter Labs is also working to launch a version of Zk Rollup compatible with EVM (ZkEVM), expected to be fully launched in Q1/2021. The native smart contract language for this version is Zinc, and it also has its own virtual machine for execution, which will have a high degree of compatibility with the EVM.
5.3. Loopring
Loopring was launched in late 2019, using a set of algorithms called SNARK to implement and verify zero-knowledge proofs.
Loopring has undergone several upgrades, with the first version only supporting DEX (order book) transactions. Then in the second version, Loopring added support for payments and transfers. In the third version, Loopring added support for AMM Swaps. The fourth version was launched in 9/2021, adding support for mining, transferring, and trading NFTs.
Meanwhile, Loopring is also working to launch a version of Zk Rollup compatible with EVM (ZkEVM), but the first version may take up to a year to be released.
6. The common development direction of Zk Rollup projects
A simple thesis on the development direction of Zk Rollup is that “in the long run, anything that a blockchain L1 can do, a Zk Rollup can do significantly better.”
According to this line of thinking, I believe that Zk Rollup solutions that want to be the ultimate winners must maintain all of the standout features of L1, in this case, Ethereum, such as:
- Allowing the building of arbitrary applications -> general-purpose smart contract platform.
- Permissionless, secure, and of course, lower cost than the base chain (Ethereum).
Therefore, I see StarkNET & ZkEVM as promising approaches. ZkEVM will have a significant advantage if it can maintain a similar dev experience on Ethereum L1.
For zkEVM, current design ideas actually fall into two types:
- Zk Rollup platforms with their own language and virtual machine, such as Starkware’s StarkNET, Matter Labs’ ZkEVM, Polygon ZkEVM of Polygon, will approach by using compilers to translate their native language into a language that can be executed in the ZkEVM virtual machine. This solution has the limitation of not achieving 100% compatibility.
- Another approach is full compatibility with ZkEVM without any translation needed, allowing solidity code to be executed directly. This approach is more optimal but also harder to implement.
7. Closing thoughts
ZK Rollup is an innovative solution to the scalability challenges facing blockchain networks like Ethereum. While there are some limitations to its use, it has the potential to significantly improve the performance and efficiency of decentralized applications. As more projects adopt this technology, we can expect to see even more exciting use cases and applications emerge in the coming years.
What about your thoughts? If you want to know further about it, don’t hesitate to share it with us! 😀
This post is for educational purposes only. All materials I used were the different reference sources. Hope you like and follow us and feel free to reach out to us if there is an exchange of information. Cheers! 🍻