• Hacken
  • Blog
  • Discover
  • zkEVM: Unlocking Scalability for Ethereum with Zero-Knowledge Proofs

zkEVM: Unlocking Scalability for Ethereum with Zero-Knowledge Proofs

7 minutes

The blockchain industry has been grappling with scalability issues, which have hindered widespread adoption due to its technical constraints. As the demand for blockchain, decentralized applications (dApps), and transactions increases, the limitations of existing networks become increasingly apparent. High transaction fees and network congestion have plagued platforms like Ethereum, hampering their ability to support large-scale applications. 

However, a promising solution has emerged: zkEVM (Zero-Knowledge Ethereum Virtual Machine), a groundbreaking technology that combines the power of zero-knowledge proofs with Ethereum’s ecosystem.

What Is zkEVM?

A zkEVM is an Ethereum Virtual Machine (EVM) compatible with zero-knowledge proof computations. It executes smart contract transactions in a way that enables them to be fully compatible with zero-knowledge rollups, which are layer-2 scaling solutions designed to increase transaction throughput while lowering costs. By leveraging zero-knowledge proofs, zkEVMs can enhance the scalability and security of Ethereum-based applications and, subsequently, the Ethereum ecosystem. 

How does zkEVM Work?

The mechanism behind zkEVM

The core mechanism of a zkEVM involves taking an initial blockchain state, processing transactions, and outputting an updated state along with a zero-knowledge proof (which is the cryptographic proof that the transactions were computed correctly and that the new state is accurate without actually revealing that data).

The execution environment of zkEVM

A zkEVM replicates the Ethereum environment as a zero-knowledge rollup, allowing developers to seamlessly port their existing Ethereum decentralized applications (dApps) and smart contracts to the more scalable and secure Layer 2 (L2). This compatibility makes the L2 an extension of Ethereum (the L1) so developers can leverage their existing knowledge and tools.

Proving Circuit

At the heart of the zkEVM lies the proving circuit, a critical component ensuring transaction security and privacy. But what exactly is a proving circuit?

Zero-knowledge is a cryptographic technique allowing one party (the prover) to convince another (the verifier) that they possess certain information without revealing the information itself. ZK circuits are mathematical constructs that apply this technique to programs, enabling the operation of ZK proofs as cryptographic protocols.

Proving circuits use advanced mathematical techniques such as Elliptic Curve Cryptography (ECC), Polynomial Commitments, Merkle Trees, SNARKs, and Homomorphic Encryption to check transaction integrity. When a transaction is processed, the proving circuit creates a proof to confirm its validity, updating the blockchain without exposing sensitive data.

The proving circuit makes zero-knowledge proofs possible, ensuring transactions are secure and private. This technology provides a robust foundation for zkEVM, enabling high levels of security and privacy for blockchain networks.

zkEVM vs. Traditional ZK Rollups

While traditional zero-knowledge (ZK) rollups offer scalability as L2 solutions, unlike optimistic rollups or StarkNet, they aren’t readily compatible with the EVM. The EVM has a complex architecture with specific opcodes, storage mechanisms, and execution logic that can be challenging to translate into a zero-knowledge-friendly format. The limitation has restricted their ability to support all existing Ethereum dApps and smart contracts. Take zkSync Era, which is EVM-compatible and supports many of Ethereum’s EVM opcodes. However, it is not EVM equivalent, as it doesn’t support every opcode down to the bytecode level.

In contrast, zkEVMs are designed to be EVM-equivalent from the outset, allowing them to execute any Ethereum smart contract without modifications. zkEVMs aim to bridge the gap, combining the scalability and privacy benefits of ZK rollups with full EVM equivalence. 

Types of zkEVMs

Vitalik Buterin, the co-founder of Ethereum, has categorized zkEVMs into four main types, ranging from fully Ethereum-equivalent to high-level language-equivalent systems. This categorization helps understand the trade-offs between compatibility and performance among different zkEVM implementations.

  1. Type 1 (Fully Ethereum-equivalent): Type 1 zkEVMs aim to be fully compatible with the Ethereum protocol, maintaining all its existing features and functionalities. While offering complete compatibility, these zkEVMs may face longer proving times due to the complexity of replicating the entire Ethereum system.
  2. Type 2 (Fully EVM-equivalent): Type 2 zkEVMs prioritize compatibility with the Ethereum Virtual Machine (EVM) while making minor modifications to improve proof generation times and development ease. These systems may sacrifice some application compatibility to achieve better performance.
  3. Type 3 (Almost EVM-equivalent): Type 3 zkEVMs depart from strict EVM compatibility to facilitate easier application development and proof generation. While most Ethereum applications may work in this environment, some may require rewriting or modifications.
  4. Type 4 (High-Level-Language Equivalent): Type 4 zkEVMs focus on compatibility with high-level languages like Solidity or Vyper rather than the EVM itself. By compiling these languages directly to a zero-knowledge-friendly format, Type 4 systems can achieve faster proving times but may sacrifice some application compatibility.

Advantages of zkEVMs

  1. Scalability: One of the primary advantages of zkEVMs is their ability to enhance scalability. By leveraging zero-knowledge rollups, zkEVMs can process a large number of transactions off-chain and then submit a condensed proof to the main Ethereum chain. This approach significantly increases transaction throughput while reducing network congestion and gas fees.
  2. Security: Zero-knowledge proofs provide a robust security mechanism for zkEVMs. By cryptographically verifying the validity of transactions and state changes, zkEVMs ensure the system’s integrity without revealing all transaction data.
  3. Finality: Unlike optimistic rollups, which have a challenge period before transactions are finalized, zkEVMs submit cryptographically verified blocks to the mainchain. This means that once a transaction is included in a block and the corresponding zero-knowledge proof is verified on Ethereum, the transaction achieves instant finality. There’s no need for a dispute resolution mechanism or a waiting period, which enhances security and enables faster withdrawal times for users moving assets back to the main chain.
  4. Compatibility: By replicating the Ethereum environment and maintaining EVM compatibility (depending on the zkEVM type), developers can easily migrate their existing Ethereum dApps and smart contracts to the zkEVM ecosystem. This compatibility facilitates a smoother transition and leverages the existing Ethereum developer community and tooling.

Challenges in Building zkEVMs

While zkEVMs offer numerous advantages, developing and implementing them presents several challenges:

  1. Computational Complexity: Generating zero-knowledge proofs is a computationally intensive process that requires specialized hardware and significant computational resources. Improving the efficiency of proof generation is an ongoing area of research and development.
  2. Compatibility Trade-offs: Achieving full compatibility with the Ethereum protocol while maintaining efficient proof generation can be challenging. Different zkEVM implementations make trade-offs between compatibility and performance, as outlined in the zkEVM types discussed earlier.
  3. Integration Challenges: Integrating zero-knowledge proofs with the Ethereum Virtual Machine (EVM) requires overcoming various technical hurdles, such as handling opcodes, storage overhead, and stack-based architecture.
  4. Decentralization Considerations: As zkEVMs rely on specialized hardware for proof generation, ensuring decentralization and preventing centralization of this process is crucial for maintaining the system’s security and integrity.

Top zkEVM Projects

Developing zkEVMs has been challenging, but several projects such as zkSync Era, Polygon zkEVM, Scroll, and Taiko are successful zkEVMs already on mainnet, each with its unique approach and trade-offs. Here is a description of some of these zkEVM projects:

  1. zkSync Era: Developed by Matter Labs, zkSync Era (formerly known as zkSync 2.0) is a Type 4 zkEVM that aims for compatibility with Solidity and Vyper, Ethereum’s coding languages. By compiling these languages directly to a zero-knowledge-friendly format, zkSync Era achieves faster proving times while sacrificing some application compatibility.
  2. Polygon zkEVM: Polygon’s zkEVM (previously known as Polygon Hermez) is a Type 2 zkEVM that aims for EVM equivalence while making minor modifications to improve proof generation times. It is an open-source project that promises to cut transaction costs by up to 90% while maintaining security and efficiency. Learn more here.
  3. Scroll: Scroll is a collaborative project between the Ethereum Foundation’s Privacy and Scaling Explorations group and various developers. It aims to build a Type 2 zkEVM focusing on security, transparency, and high composability. Scroll is currently in its pre-alpha stage and is inviting developers and testers to participate.

4 of the top 10 Ethereum L2s are ZK-based, already live with thousands of users and multiple millions in TVL. 

Follow @hackenclub on 𝕏 (Twitter)

Conclusion and Future Outlook

The emergence of zkEVMs represents a significant milestone in the quest for scalable and secure blockchain solutions. By combining the power of zero-knowledge proofs with the familiarity of the Ethereum ecosystem, zkEVMs offer a promising path toward overcoming the scalability challenges that have hindered the widespread adoption of blockchain. 

As the development of zkEVMs continues, we expect to see increased adoption and integration of these solutions across various industries and use cases. However, it’s important to note that zkEVMs are still an evolving technology, and ongoing research is constantly being done to address challenges such as computational complexity. While the solutions are some of the best in the industry, the zkEVMs will undoubtedly evolve as we see efforts to scale blockchains further.

to our newsletter

Be the first to receive our latest company updates, Web3 security insights, and exclusive content curated for the blockchain enthusiasts.

Speaker Img

Table of contents

  • What Is zkEVM?
  • How does zkEVM Work?
  • Types of zkEVMs
  • Advantages of zkEVMs

Tell us about your project

Follow Us

Read next:

More related

Trusted Web3 Security Partner