Author: 0XNATALIE Source: Chainfeeds
Zero-knowledge proof (ZKP) technology is particularly important in finding solutions for the scalability and computational efficiency of blockchain. zkVM (Zero-Knowledge Virtual Machine) is one of the specific applications of this technology. As a general computing platform based on ZKP, zkVM can verify the correctness of calculations without revealing the execution details. It also supports processing tasks with large computational workloads outside the chain, and only submits the verification results to the blockchain, which greatly improves the scalability of the blockchain. At present, many projects in the market, such as a16z, Taiko, and ZKM, are developing zkVM solutions.
About zkVM
zkVM is a general computing platform based on zero-knowledge proof that can perform various computing tasks, including executing smart contracts, data processing, and complex algorithm operations. Its core function is to generate zero-knowledge proofs, which can verify the correctness of calculations without revealing the execution details. Through SNARKs technology, these proofs can be verified off-chain, and the verifier does not need to re-execute the entire calculation process on the blockchain, which is expensive.
In addition, the design of zkVM is not limited to cryptocurrency transactions. Its versatility allows it to be deployed in a variety of application scenarios, such as medical data processing, supply chain management, secret voting systems, etc. These applications need to verify the correctness of processing logic while ensuring data security.
zkVM vs. Other Virtual Machines
Traditional virtual machines (VMs) usually refer to a complete set of virtual computing environments on physical hardware. The core function is to simulate the hardware environment, allowing multiple operating systems or applications to run on the same physical hardware. These virtual machines mainly implement their functions through hardware virtualization technology and operating system-level isolation. They usually do not involve the process of cryptographic verification of applications or data running in them.
Zero-knowledge virtual machine (zkVM) uses zero-knowledge proof technology to ensure the correctness of program execution, which is applicable to any program that can be compiled and run on a virtual machine. The design of zkVM focuses on providing a general computing verification platform that is suitable for various application scenarios and supports multiple programming languages, such as Rust, C/C++ and Go, so that developers can use their familiar languages to build applications. The calculation and verification process is often more time-consuming than traditional VMs because generating zero-knowledge proofs is a computationally intensive process that requires a large amount of computing resources, which greatly limits the transaction processing speed (TPS). Although current zk technology has made significant progress in the generation of a single proof, its ability to handle large-scale transactions under high load conditions is still limited. The generation of each proof may take from seconds to minutes, which poses a limitation for applications that require high throughput (such as large-scale payment processing systems).
zkEVM is a specific implementation of zkVM, designed for the Ethereum ecosystem, and aims to enhance the scalability of Ethereum through zero-knowledge proofs. It is fully compatible with Ethereum's smart contracts and development tools, such as Solidity and Vyper, and existing Ethereum applications can be seamlessly migrated to zkEVM without any modification. Therefore, zkEVM is more like a specific optimized version of Ethereum.
zkVM-related projects
Despite the challenges of zk technology, there are still some project parties in the market that have demonstrated technical strength in developing zkVM solutions.
Jolt: Excellent performance
On April 9, a16z released the initial implementation of the zkVM solution Jolt, which is a new type of zkVM, with the main features of fast operation and easier expansion and code auditing for developers.
Unlike other zkVMs based on the STARK framework, Jolt leverages Lasso parameter lookup and sumcheck-based techniques. This innovative approach not only simplifies the implementation of new virtual machine instructions, but also improves the overall speed of the system. Jolt is designed with an emphasis on ease of use and efficiency, and its code base is very lean, with each CPU instruction in Jolt being implemented in just 50 lines of Rust code. In addition, Jolt's performance is also excellent, with a preliminary benchmark that performs zero-knowledge proofs more than 5 times faster than RISC Zero and 2 times faster than SP1.
RISC Zero: Efficiently handles complex calculations
RISC Zero is a zkVM with a recursive SNARK structure, characterized by a recursive method that supports nested proofs. In SNARKs technology, recursion can decompose complex proofs into smaller, more manageable proofs. These small proofs can be verified independently and eventually merged into a complete large proof without affecting the validity of the proof. RISC Zero is unique in its approach to implementing recursion, seamlessly integrating multiple layers of proofs into a single proof chain, which not only reduces the computational load and the amount of data that needs to be processed, but also maintains the security and integrity of the verification process across multiple computational steps.
Another unique feature of RISC Zero is that it uses the RISC-V instruction set, an open standard ISA (instruction set architecture) designed for scalability and extensibility. This choice ensures that RISC Zero can take advantage of a wide range of tools and support ecosystems, making it easier to access and integrate into existing systems than other zkVMs that may use proprietary or less common architectures.
Last year they successfully completed a $40 million Series A round of financing. This round of financing was led by Blockchain Capital, and other well-known investors include Bain Capital Crypto, Galaxy Digital, IOSG Ventures, RockawayX, Maven 11, Fenbushi Capital, Delphi Digital, etc.
Succinct: Developer-friendly
Succinct developed zkVM SP1, which is tailored for executing code written in Rust or any other language that can be compiled by LLVM, with greater flexibility and ease of use. SP1 supports a modular architecture, allowing developers to customize and extend its functionality through "pre-compilation". Pre-compilation refers to specific modules that can be added or modified by developers, which enhance the functionality of the core virtual machine so that it can handle specific tasks or operations more efficiently.
In addition, SP1 builds a decentralized network of provers, simplifying the deployment and execution of proofs, thereby lowering the threshold for using advanced cryptographic methods. The network enables developers to efficiently generate proofs with just one click, providing a simplified approach.
In March, Succinct completed a $55 million financing. The financing was led by Paradigm, and investors included Robot Ventures, Bankless Ventures, Geometry, and angel investors Sreeram Kannan of Eigenlayer and Sandeep Nailwal, co-founder of Polygon. On May 13, Succinct announced the launch of the SP1 testnet.
Taiko: Multi-proof system
Taiko has begun to transition from using zkEVM to using zkVM. The uniqueness of its zkVM lies in its use of multi-proof systems. The concept of multi-proof was proposed by Vitalik, and Taiko claims to be the first project to implement this concept, and will directly support this multi-proof system when the mainnet is launched at the end of May. This system allows Taiko's zkVM to generate multiple types of proofs, thereby improving the security and robustness of the system. Even if one type of proof has a problem, other types of proofs can continue to ensure the normal operation of the system and detect any erroneous state transitions in a timely manner. In addition, the Halo2-KZG proof system is also adopted, which enables efficient and low-cost processing of complex calculations and large-scale transactions.
In March, Taiko completed a $15 million Series A financing round, led by Lightspeed Faction, Hashed, Generative Ventures and Token Bay Capital, with participation from Wintermute Ventures, Flow Traders, Amber Group, OKX Ventures and GSR.
ZKM: MIPS architecture is simple and stable
ZKM is a zkVM project incubated by the Metis Foundation. It adopts the MIPS architecture and combines it with zero-knowledge proof technology to create a zk virtual machine. This design makes ZKP more consistent with the computing processing method inside the system, speeding up operations and reducing the computing overhead associated with implementing the ZKP protocol alone. And most of the current zkVMs use the Rust language, while ZKM provides native support for Golang.
MIPS (Microprocessor without Interlocked Pipeline Stages) is the first generation of reduced instruction set computer architecture. The MIPS instruction set is relatively simple and stable, and can be widely used in various computing devices and embedded systems. It has good versatility and adaptability. ZKM systems based on the MIPS architecture can be more easily developed and deployed.
zkMIPS divides the entire MIPS program into multiple segments. The instructions of each segment are then divided into four types and classified into four corresponding module tables. zkMIPS uses the STARK proof method to independently verify the instructions in each module table to ensure that each operation in the table is correct and that each instruction in the program segment is included in its corresponding module table. Then verify that the execution sequence of each program segment matches the execution of the entire program. In this way, even programs executed off-chain can be verified on-chain, enhancing the transparency and trust of program execution.
ZKM recently launched a new trust-minimized multi-chain interoperability infrastructure, Entangled Rollups, which uses zkMIPS to build a trustless, decentralized multi-chain interoperability framework. Unlike third-party zk bridges that only verify asset transfers through snapshots, all calculations can be verified, so it is very secure. The key to this interoperability is the existence of a universal proof mechanism that can generate proofs on one blockchain and then verify them on another blockchain. One of the differences between ZKM and other zkVMs is that it can generate a zero-knowledge proof that applies to all operations. ZKM embeds security into the underlying CPU/MIPS architecture, so that all software on top of the architecture can enjoy the same security without the need for each software to go through the zero-knowledge proof process separately.
In addition, ZKM has the following features:
Compatible with all virtual machines: ZKM is located underneath each virtual machine, making it compatible with various blockchain smart contract engine VMs, such as MoveVM (zkMVM), WASM (zkWASM), and RustVM (zkRVM).
Plug and Play: Developers can adopt ZKM without changing the existing code base. Provides low-cost adoption and allows the use of different smart contract languages and even traditional programming languages.
Long-term stability: The MIPS instruction set is stable and does not need to change the instruction set with the ever-changing EVM, providing a more stable environment for development.
Future Outlook of zkVM
With the continuous maturity of blockchain technology and the continuous exploration of cutting-edge companies, the performance of zkVM is constantly improving. We can foresee that zkVM will play an increasingly important role in the crypto world and become part of the key technology. Especially at a time when data sensitivity and demand for cross-chain security are increasing, the capabilities provided by zkVM are adapted to market demand. We look forward to overcoming various technical difficulties, such as circuit optimization and optimization of the proof system itself, launching zkVM that is perfectly adapted to various programming languages, and bringing more developers to the new era of Web3.