Skip to main content
Jolt Hero Light

Just One Lookup Table

Jolt is a zkVM (zero-knowledge virtual machine) for RISC-V, built to be the simplest, fastest, and most extensible general-purpose zkVM. It implements the RV64IMAC instruction set (64-bit Base Integer + Multiplication/Division + Atomic Operations + Compressed Instructions).
Jolt is in alpha and is not suitable for production use at this time.

What is a zkVM?

A zero-knowledge virtual machine allows you to:
  • Prove program execution: Generate cryptographic proofs that a program executed correctly
  • Verify efficiently: Anyone can verify the proof quickly, without re-executing the program
  • Preserve privacy: The proof reveals nothing about private inputs or intermediate states
Jolt achieves this using sumcheck-based protocols, multilinear polynomial commitments (Dory), and the Twist/Shout lookup argument.

Getting Started

Installation

Install Rust and the Jolt CLI to start building

Quickstart

Create your first provable function in minutes

Examples

Explore real-world examples including SHA2, Fibonacci, and more

The Jolt Book

Deep dive into Jolt’s architecture and theory

Key Features

Write guest programs in Rust and compile them to RISC-V. Jolt supports the RV64IMAC instruction set, giving you access to:
  • 64-bit integer operations
  • Hardware multiplication and division
  • Atomic memory operations
  • Compressed instructions for smaller binaries
Jolt uses cutting-edge cryptographic techniques for fast proving:
  • Sumcheck-based protocols for efficient constraint verification
  • Dory polynomial commitment scheme
  • Twist and Shout memory checking with 6x performance improvements
  • Parallel proving via rayon
Simple macro-based API for creating provable functions:
#[jolt::provable]
fn fibonacci(n: u32) -> u128 {
    let mut a = 0;
    let mut b = 1;
    for _ in 1..n {
        let sum = a + b;
        a = b;
        b = sum;
    }
    b
}
Jolt’s modular design supports:
  • Custom cryptographic primitives via jolt-inlines
  • Multiple polynomial commitment schemes
  • Pluggable transcript protocols
  • Both standard and zero-knowledge modes

Research Papers

Jolt: SNARKs for Virtual Machines via Lookups

The original Jolt paper by Arun, Setty, and Thaler

Twist and Shout

Faster memory checking arguments via one-hot addressing

Unlocking the Lookup Singularity with Lasso

The lookup argument underlying Jolt

Proofs, Arguments, and Zero-Knowledge

Background reading on zero-knowledge proofs

Community

Jolt is open source and welcomes contributors! Check out the GitHub repository to get involved.

Build docs developers (and LLMs) love