zkSync — An introduction and how it solves the Ethereum scaling problem?
The ETH scaling problem
Ethereum blockchain has a gas problem. Any transaction on the Ethereum blockchain requires a gas fee to be paid. With the increasing adoption of the ETH network and the growing number of new DeFi projects, the network congestion is at its all-time-high. The current design of the layer-1 ETH network incentivizes miners to include transactions with high gas fee in the next block.
Efforts of scaling Ethereum at layer-1 have reached a saturation point and this has resulted in the rise of layer-2 scaling solutions which aim to solve the high gas fee problem. This problem is critical to solve in order to bring mass adoption to ETH network as well as open the possibility of deployment of many new real-world decentralised applications (DAPPs).
zkSync is a blockchain scaling solution which aims to solve the ETH scalability problem by using a class of layer-2 scaling solution called “zk-rollup”. It achieves high scalability while inheriting the security of Ethereum blockchain at the same time. It uses succinct zero-knowledge proof (ZKP) based scaling solutions which rely on mathematical proofs to ensure the computational integrity.
Team background
Matter Labs is the team behind development of zkSync. It was co-founded by Alex Gluchowski who is also the current CEO of the organisation.
Their team consists of many talented engineers and cryptographers responsible for the first implementation of zero-knowledge proof (ZKP) technology based scaling solution on Ethereum. They are a strong believer that ZKP is the only technology which can scale Ethereum to billions of users while retaining the decentralization and security properties.
The pace of innovation in Matter Labs is evident from their multiple achievements in the past 2 years with delivery of products such as zkSync 1.0 mainnet, zkSync 2.0 testnet, zkEVM, and zkPorter.
Rollup technologies
Projects such as zkSync leverage rollup technology as a scaling solution. This technology separates the data availability and computation tasks of the blockchain. At present, all the transaction data as well as execution takes place on layer-1 ETH which has resulted in network congestion. To solve this, the rollup technologies offload the task of transaction execution and computation to layer-2 while retaining the necessary data on layer-1. The word “rollup” here refers to a “batch of transactions” which are processed together by layer-2.
The rollup technologies are designed in such a way that layer-2 focuses on speed with very low gas fee while layer-1 focuses on security. The funds are always secure on layer-1 and can be withdrawn at any time even in the event of a layer-2 compromise.
There are two main types of rollup technologies:
- Optimistic rollups
- Zk-rollups
zkSync uses the class of rollup technology called zk-rollup which is based on zero-knowledge proofs. The specific type of zero-knowledge proof used in zkSync is called PLONK.
Architecture of zkSync
At a high-level, the architecture of zkSync can be represented by a system that involves a server, a prover and a verifier. The server and prover run on L2 while the verifier exists on L1 as shown below.
Figure 1: Architecture of zkSync
Server monitors for new transactions, creates a block and sends it to the prover.
The purpose of the prover is to generate a mathematical proof of a batch of transactions which proves that the new state of the system is a result of execution of transactions in a batch. This proof is also called a validity proof.
The validity proof is submitted by the prover to the server. Now, the server submits this validity proof along with transaction data to the verifier smart contract on L1.
Once the verifier accepts the proof, the new state is committed to the blockchain and finality is achieved.
zkSync mainnet
zkSync 1.0 mainnet has been live for 1.5 years and it is already possible to deposit crypto assets such as ETH and ERC-20 tokens to the zkSync L2 network. Once the tokens are deposited on zkSync, they can be transferred on the network with a very low gas fee.
An interesting feature called “gasless meta-transactions” is used in zkSync which allows the gas fee to be paid in any ERC-20 token or ETH instead of using only ETH to pay gas fee as is the case on ETH network.
The gas fee reduction on zkSync for transfer of ERC-20 tokens is more than 50x as compared to ETH layer-1.
The crypto assets can also be withdrawn from zkSync L2 to L1 ETH. This withdrawal process takes a few hours which is a major advantage as compared to competing rollup technologies such as Optimistic rollups where the withdrawal period can be as long as 2 weeks.
Adoption in ETH ecosystem
There has been a sharp increase in adoption of zkSync by the crypto community since June 2021. We can look at a few metrics to gain insights into the adoption. The number of unique ETH wallet addresses which have transacted from ETH Mainnet (L1) to zkSync (L2) has sharply been increasing every month in 2021 as illustrated by the visualisation below.
Figure 2: Cumulative transactions from ETH to zkSync (Source: Dune analytics)
The total value locked (TVL) in USD on zkSync L2 has also been steadily increasing in 2021. A total of more than 15800 ETH and almost 80 million USD (worth of all ERC-20 tokens and ETH) is locked on the zkSync smart contract as of Jan 9th 2022.
Figure 3: Total assets locked on the zkSync smart contract (Source: etherscan)
According to the latest data reported by the block explorer of zkSync, it has secured more than 5.9 million transactions on L2.
Figure 4: zkSync network statistics (Source: zkscan)
Decentralised exchanges (DEX) support
At present, the popular decentralised exchanges such as Uniswap and Sushiswap do not support zkSync. However, there is a new and upcoming layer-2 decentralised exchange called ZigZag DEX which supports zkSync mainnet.
zkSync 1.0 does not have EVM compatibility which has prevented quick adoption by existing EVM compatible decentralised exchanges.
The support for EVM-compatibility will be available in zkSync 2.0 which uses zkEVM. This will allow smart contracts written in Solidity language to be quickly ported to zkSync 2.0 with little to no modification.
Unisync, which is a port of Uniswap v2 by zkSync, was available on the zkSync 2.0 testnet in 2021. The demo is not live at the time of writing and the team is preparing their public testnet release.
Tokenomics
There is no native token of zkSync at the moment however the official documentation of the project indicates plans to issue a native token in the future. The utility of this token will be tied to the role of validators in keeping the layer-2 network functional. Validators would be required to stake tokens to ensure fair operation.
The team has not yet commented on any specific timeline about the issuance of this token.
Roadmap of zkSync
zkSync 2.0 launch
The launch of zkSync 2.0 will include many new critical features such as availability of zkEVM which brings EVM-compatibility to zkSync and opens new possibilities of porting many existing DAPPs from ETH L1 network to zkSync network.
Decentralisation
The zkSync team plans to make this L2 network completely decentralised and permissionless with time.
Exchange integration
Once EVM-compatibility support is available on zkSync 2.0, we can begin to see integration with more decentralised exchanges.
In terms of integration with centralised exchanges, zkSync partnered with Huobi in Nov 2021 to plan direct onramp and offramp to zkSync. This will allow users of Huobi exchange to pay a low gas fee to move assets between the zkSync L2 network and Huobi without going through the expensive L1 network.
Wallets integration
Argent and Numio wallets have added native support for zkSync.
Conclusion
zkSync is one of the most promising blockchain scaling solutions leveraging zero-knowledge proofs in the Ethereum ecosystem. They have made great progress in achieving the ambitious goal of solving scalability while not compromising on decentralisation and security.
This project plans to achieve many critical milestones in 2022 with the release of zkSync 2.0 and move a step towards full decentralisation.