Skip to content
Merged
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 50 additions & 34 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,39 +21,51 @@ A curated list of zkVM, zero-knowledge virtual machine.

# contents

- [projects repositories](#projects-repositories)
- [bench](#bench)
- [papers](#papers)
- [resources](#resources)
- [tutorials](#tutorials)
- [architecture](#architecture)
- [precompiles](#precompiles)
- [recursion](#recursion)
- [lookup arguments](#lookup-arguments)
- [hardware](#hardware)
- [related awesome lists](#related-awesome-lists)

## projects repositories

- [cairo](https://github.com/lambdaclass/cairo-vm)
- [ceno](https://github.com/scroll-tech/ceno)
- [eigen zkvm](https://github.com/0xEigenLabs/eigen-zkvm)
- [jolt](https://github.com/a16z/jolt)
- [miden](https://github.com/0xPolygonMiden/miden-vm)
- [mozak vm](https://github.com/0xmozak/mozak-vm)
- [nexus](https://github.com/nexus-xyz/nexus-zkvm)
- [o1vm](https://github.com/o1-labs/proof-systems/tree/master/o1vm)
- [olavm](https://github.com/Sin7Y/olavm)
- [powdr](https://github.com/powdr-labs/powdr)
- [risc0](https://github.com/risc0/risc0)
- [sp1](https://github.com/succinctlabs/sp1)
- [sphinx](https://github.com/argumentcomputer/sphinx)
- [triton vm](https://github.com/TritonVM/triton-vm)
- [valida](https://github.com/valida-xyz/valida)
- [zisk](https://github.com/0xPolygonHermez/zisk)
- [zkLLVM](https://github.com/NilFoundation/zkLLVM)
- [zkWasm](https://github.com/DelphinusLab/zkWasm)
- [zkm](https://github.com/zkMIPS/zkm)
- [contents](#contents)
- [projects](#projects)
- [bench](#bench)
- [papers](#papers)
- [Cairo](#cairo)
- [Ceno](#ceno)
- [Jolt](#jolt)
- [SP1](#sp1)
- [Risc Zero](#risc-zero)
- [EDEN](#eden)
- [resources](#resources)
- [tutorials](#tutorials)
- [related awesome lists](#related-awesome-lists)

## projects

> [!NOTE]
> Maintained by [@piapark_eth](https://x.com/piapark_eth) and [@alexanderlhicks](https://x.com/alexanderlhicks). Some details may be outdated; feel free to open an issue or PR. For discussions on fair tracking methods, see the [open issues](https://github.com/rkdud007/awesome-zkvm/issues).

- ISA (Instruction Set Architecture): The fundamental “language” of the VM, defining all its basic operations and how they interact with data.
- Continuations (Sharding): A technique to break oversized computations — too big for a single run — into smaller parts that can be processed in parallel, paused, and resumed later.
- Precompiles (Built-ins, Chiplets, Syscalls): Specialized, pre-built functions for complex tasks (like cryptography) that boost efficiency and reduce proof overhead.
- Proving Frontend: A user-friendly language for writing provable programs, which then get compiled down into the VM’s supported ISA for zero-knowledge execution.
- GPU: Indicates if proving on GPU is supported (based on publicly exposed Metal/CUDA code)

| zkVM | ISA | Continuations & <br> Parallel Proving | Precompiles | GPU | Proving Frontend |
| :---------------------------------------------------------------: | :------------------: | :-----------------------------------: | :------------: | :------------: | :---------------------------------: |
| [cairo](https://github.com/lambdaclass/cairo-vm) | Cairo | :red_circle: | :green_circle: | | Cairo |
| [ceno](https://github.com/scroll-tech/ceno) | RISC-V | :red_circle: | :red_circle: | | Rust |
| [eigen zkvm](https://github.com/0xEigenLabs/eigen-zkvm) | RISC-V | :green_circle: | :green_circle: | | Rust |
| [jolt](https://github.com/a16z/jolt) | RISC-V | :red_circle: | :red_circle: | | Rust |
| [miden](https://github.com/0xPolygonMiden/miden-vm) | MASM(Miden Assembly) | :red_circle: | :green_circle: | :green_circle: | Rust, Wasm |
| [mozak vm](https://github.com/0xmozak/mozak-vm) | RISC-V | :red_circle: | :red_circle: | | Rust |
| [nexus](https://github.com/nexus-xyz/nexus-zkvm) | RISC-V | :green_circle: | :green_circle: | | Rust |
| [o1vm](https://github.com/o1-labs/proof-systems/tree/master/o1vm) | MIPS | :red_circle: | :red_circle: | | Go |
| [olavm](https://github.com/Sin7Y/olavm) | Ola Assembly | :red_circle: | :green_circle: | | Ola Assembly |
| [powdrVM](https://github.com/powdr-labs/powdr) | RISC-V | :green_circle: | :green_circle: | | Rust, Powdr, PIL |
| [risc0](https://github.com/risc0/risc0) | RISC-V | :green_circle: | :green_circle: | :green_circle: | Rust |
| [sp1](https://github.com/succinctlabs/sp1) | RISC-V | :green_circle: | :green_circle: | :green_circle: | Rust |
| [sphinx](https://github.com/argumentcomputer/sphinx) | RISC-V | :green_circle: | :green_circle: | | Rust |
| [triton vm](https://github.com/TritonVM/triton-vm) | Triton Assembly | :red_circle: | :red_circle: | | Triton Assembly |
| [valida](https://github.com/valida-xyz/valida) | Valida | :red_circle: | :red_circle: | | Rust, C |
| [zisk](https://github.com/0xPolygonHermez/zisk) | RISC-V | :red_circle: | :red_circle: | | PIL |
| [zkm](https://github.com/zkMIPS/zkm) | MIPS | :green_circle: | :green_circle: | | Rust, Go |
| [zkWasm](https://github.com/DelphinusLab/zkWasm) | Wasm | :green_circle: | :green_circle: | | C, C++, rust, etc (wasm compilable) |

## bench

Expand All @@ -70,6 +82,10 @@ A curated list of zkVM, zero-knowledge virtual machine.
- [A Verified Algebraic Representation of Cairo Program Execution](https://dl.acm.org/doi/pdf/10.1145/3497775.3503675)
- [A Proof-Producing Compiler for Blockchain Applications](https://drops.dagstuhl.de/storage/00lipics/lipics-vol268-itp2023/LIPIcs.ITP.2023.7/LIPIcs.ITP.2023.7.pdf)

### Ceno

- [Ceno: Non-uniform, Segment and Parallel Zero-knowledge Virtual Machine](https://eprint.iacr.org/2024/387.pdf)

### Jolt

- [Jolt: SNARKs for Virtual Machines via Lookups](https://eprint.iacr.org/2023/1217.pdf)
Expand Down Expand Up @@ -123,4 +139,4 @@ A curated list of zkVM, zero-knowledge virtual machine.
- [awesome risc0](https://github.com/inversebrah/awesome-risc0)
- [awesome sp1](https://github.com/gakonst/awesome-sp1)
- [awesome starknet #cryptography-and-maths](https://github.com/keep-starknet-strange/awesome-starknet?tab=readme-ov-file#cryptography-and-maths)
- [awesome zkp](https://github.com/matter-labs/awesome-zero-knowledge-proofs)
- [awesome zkp](https://github.com/matter-labs/awesome-zero-knowledge-proofs)