zkLink Nova Documentation
  • 😃Welcome
    • Introduction
    • Connecting to Nova
  • 💰Aggregation Parade
    • Nova Points
  • 📚key concepts
    • Total Value Locked(TVL)
    • Zero-Knowledge Rollup
    • zkEVM
    • Layer 3
    • Modular Blockchain
    • Token Merge
  • 💡Chain Abstraction
    • Vision
    • Implementation
  • 🏗️architecture
    • Overview
    • Transaction Life Cycle
    • Sequencing Layer
    • Execution Layer
    • Settlement Layer
      • In-Detail: Multi-Chain State Synchronization
      • In-Detail: Contract System on Primary Chain
    • DA Layer
  • ✈️Roadmap
    • Keep Evolving
  • 🧑‍💻developer
    • Quick Start
    • Contract Verification
    • Migrating Your Project to Nova
    • EVM Compatibility
    • Useful Addresses
    • Run a Node
    • Tools
      • Bridges
      • Blockchain Explorer
      • Oracles
      • MultiSig Wallet
      • Node Providers
      • Actions & magicLink SDK
  • ❓Additional resources
    • Help
    • Github
    • Audits
    • Bug Bounty
    • Official Links
Powered by GitBook
On this page
  1. key concepts

zkEVM

PreviousZero-Knowledge RollupNextLayer 3

Last updated 10 months ago

zkLink Nova is powered by the zkEVM of , a modular, open-source framework that is both free and designed to build custom ZK-powered L2s and L3s, based on the code of zkSync.

A zkEVM (zero-knowledge Ethereum Virtual Machine) is a virtual machine that executes smart contract transactions in a way that’s compatible with both zero-knowledge-proof computations and existing Ethereum infrastructure.

Being EVM compatible enables zkLink Nova to run programs created for Ethereum environments without modifying the underlying smart contract logic. Developers familiar with Ethereum’s Solidity programming language can build highly scalable applications using the same battle-tested tools they’re used to.

According to Vitalik Buterin, EVM compatibility can be segmented into four types. The zkEVM of ZK Stack used by zkLink Nova is categorized as a Type 4 system in the taxonomy of zkEVMs. Its EVM compatibility works by taking smart contract source code written in high-level languages and compiling it to a language designed to be zk-SNARK-friendly.

For more details, we recommend reading:

📚
ZK Stack
The different types of ZK-EVMs