zkSync: Ethereum expansion solution based on zkRollup
Editor's note: This article is from Bihu Live.
Editor's note: This article is from Bihu Live.
Recently, the DeFi projects on Ethereum have been booming, the demand for network usage has increased significantly, and the handling fees have skyrocketed and remain high. In the past 3 days, the average unit price of Ethereum’s handling fee is 6 times that of 3 months ago, and an ordinary transfer needs to pay a handling fee of more than 2 yuan. Such operating costs have seriously affected the user experience, and it is difficult for ordinary users to bear such high transaction fee friction.
Phase 0 of Ethereum 2.0 is expected to go live by the end of this year, but it may take years to complete the goal of increasing network throughput. During this long waiting period, the solution of the second-layer network on Ethereum has once again entered people's field of vision. The traditional two-layer scheme introduces additional security assumptions, so complex economic models and exit mechanisms are required. The zero-knowledge proof-based two-layer scheme zkRollup has gradually attracted the attention of the Ethereum community.
zkSync is Matter Labs’ layer-2 Ethereum solution based on zkRollup technology, and it is currently undergoing public testing on the Ethereum mainnet. It does not need to trust any third party. Ideally, the network throughput can be increased hundreds of times, and the single transaction fee can be reduced to 1 cent. How is it achieved, what are the next plans, and whether it can improve the congestion status of Ethereum?
In this Bihu live broadcast, we had the honor to invite Alex Gluchowski, CEO and co-founder of Matter Labs, to share "zkSync: Ethereum Scalability Solution Based on zkRollup". Alex is an active participant in the Ethereum community. He is not only an excellent technical developer, but also has a keen grasp of business.
Alex: Matter Labs was founded a year and a half ago as a research institute, aiming to solve the scaling problem of decentralized blockchains. At that time, especially after CryptoKitties, everyone realized that without sacrificing core attributes, Ethereum would not be able to scale to meet mass adoption.
In other words: we strongly believe that the greatest value of a decentralized, permissionless blockchain lies in its ability to withstand powerful adversaries. And TON and Libra also let us realize that without true decentralization, the blockchain platform will not be valuable.
However, it is very difficult to realize the technical expansion of the public chain, because the core of decentralization is the principle of "do not trust, but verify".
Therefore, every full node should be able to verify every transaction. If the throughput is increased to the million level, ordinary hardware (such as laptops) cannot support full nodes, then the number of full nodes will decrease, and decentralization will be lost.
Fortunately, in the past 2 years, we have seen a huge development in the field of zero-knowledge proofs. The most interesting property of these zero-knowledge proof protocols is that they allow a large number of computations to be verified with very few resources.
This means we can pack thousands of transactions into a block, which will be verified by full nodes for only the cost of verifying a single transaction.
We exploited this property to develop zkSync - a trustless scaling protocol for Ethereum.
zkSync is based on zkRollup, an architecture that combines zero-knowledge proofs and on-chain data availability patterns. In this way, zkSync has an unsurpassable security guarantee: the security of accounts on zkSync is extremely high, reaching a layer (L1) of security.
More information about zkSync can be found at zkSync.io.
Q&A:
1. Why is zkRollup the most likely technology to help Ethereum solve the expansion problem at this stage?
Answer: zkRollup is currently the only expansion solution that combines high data availability and layer 1 (L1) security. This article is a good example of how it compares to other scaling solutions:
2. How to combine zkRollup and Eth 2.0's sharding technology?
A: We will publish an article about the relationship between zkRollup and Ethereum sharding in 2 weeks.
Roughly speaking: Eth 2.0 will directly increase the TPS of zkRollup and reduce its overhead. Currently, zkRollup can handle up to 2000TPS.
3. Will zkSync have its own token?
A: We will have a staking/governance token in the future to manage the participation of multiple validators.
4. There is a lack of trust in using zkRollup, because it relies on centralized participants, how can it avoid the risk of being manipulated?
Answer: zkSync itself does not have a trust mechanism for validators. However, different ZK-protocols in zkSync have different mechanisms and trade-offs.
zkRollup has two major ZK protocol families: SNARKS and STARKS, where SNARKS has a trusted configuration.
SNARKS requires trusted configuration to be done all at once. In zkSync1.0, the protocol we use is PLONK. It holds the global trusted configuration. Last fall, there was a big ceremony, more than 200 people participated, including us, V God and other big names, as long as one of the participants is honest, then this setting is safe.
https://eprint.iacr.org/2019/1400.pdf
Whereas STARKS is transparent: no trusted configuration is required. In zkSync 2.0, we plan to use the STARKS protocol called RedShift. The following is the protocol technical white paper:
5. When is the token announcement expected?
A: At present, we focus on core technology, which is the most important. We will have an announcement about the token in a few months.
6. What is the market strategy of zkSync? How to attract more users?
A: As far as market strategy is concerned, we are committed to the integration of zkSync and to C-side apps and protocols.
7. Does zkSync have plans to integrate with wallets and exchanges?
Answer: We are doing wallet integration and exchange docking, which can greatly reduce transaction fees. Currently transaction fees have become very high (recently reached 100Gwei).
8. What is the difference between ZkRollup and Optimistic Rollup?
Answer: In zkRollup, the validity of each transaction is verified before the transaction occurs. Validators cannot do evil.
However, in Optimistic Rollup, the behavior of validators is not restricted, so users must monitor invalid transactions by themselves. Once invalid transactions are found, they need to submit fraud proofs to the main network. These fraud proofs will rollback the invalid transaction, as well as all valid transactions that occurred after that.
This actually means a few things:
1. The security of Optimistic Rollup is lower, because the fraudulent proof has the risk of not being executed. The entire value locked in Optimistic Rollup is stolen.
2. The scalability of Optimistic Rollup is worse, because users (or their agents) must monitor and execute every transaction.
3. The withdrawal time from Optimistic Rollup is longer (at least 1 week, so that users have enough time to submit fraud proof).
4. The architecture of Optimistic Rollup means that implementing privacy is very expensive (1000 times higher than in ZkRollup).
For more on the comparison between the two, see the following articles:
9. What is the difference between ZkRollup and Validum?
Answer: ZkRollup is similar to Validum in terms of ensuring the correctness of transactions, but the way they handle data availability is different.
In ZkRollup, a small amount of data about each transaction is published through the Ethereum network, while in Validum, the data is managed through many data notaries. As a result, transaction fees in Validum are lower, but it requires trust in the data notary.
To learn more about the differences between the two, see:
10. How to become a zkSync node?
A: You just need to buy and stake some zkSync tokens.
11. The zkSync protocol is designed to solve the transaction problem of the second layer, so is it capable of dealing with the problem of smart contracts?
Answer: Yes. We are developing Zinc - a smart contract language, plus a virtual machine for zero-knowledge proofs to provide security guarantees. To learn more, refer to the following websites:
12. How is it different from Loopring’s solution?
A: Loopring focuses on decentralized exchanges, while we focus on core architecture. So our technology is more advanced, and I think we will cooperate with Loopring in the future.
13. I noticed that zkSync recently completed a contract upgrade, can you briefly introduce it?
http://zksync.io/zksync-1.0-audit.pdf
A: We hired ABDK Consulting to conduct a comprehensive audit of the system, including: protocol, cryptography, ZK circuits program, and smart contracts. The following are the audit results:
This round of audits has helped us a lot! ABDK Consulting is run by experienced cryptography experts whose work includes Poseidon hashing.
14. How much is each transaction fee now? how much time is required?
Answer: If the Gas price remains at 100Gwei, then each transaction fee will be about $0.01. In terms of time, the proof of a full block takes about 20 minutes. But these numbers are not absolute and depend on the load of the network.
15. Are there plans to develop Chinese communities?
A: So far, we haven't invested heavily in growing any communities, instead focusing most of our energy on technology. The community has always been a natural growth. Of course, we have plans to develop the community in the future, especially the Chinese community is very important to us.
16. Can zkSync support Defi?
Answer: Of course. Once we implement Zinc to write smart contracts, the composability of Defi will be possible on the platform.
17. We understand that the processing power of zkSync is better than Optimistic Rollup, but does zySync currently have technical difficulties in generating ZK proofs for random calculations? Where are the limitations?
Answer: In theory, it should be easier for Optimistic Rollup to support random calculations, and it can even support port's existing EVM bytecode. But ZK proofs are also possible, and we're working on that.
The main restriction for the developer is that the program must be written in a non-Turing-complete manner, i.e. without variable loops and recursion.
18. Can I use Zinc to create accounts for others?
Answer: Yes. Anyone can create an account on zkSync for any address - just send some ETH or other tokens to the address.
19. When will Zksync support NFT?
Answer: We are researching to support NFT. We can't give the exact time yet, but it will definitely be realized in the future.
20. Can you share a case of zksync and wallet integration?


