The Nexus zkVM 3.0

Introducing a full, ground-up rewrite of the previous generations of our virtual machine, accompanied by a rigorous formal specification.

The verifiable machine

At the heart of our design is a formally-specified set of Arithmetic Intermediate Representation (AIR) constraints for the RISC-V machine architecture, as well as a lookup-based memory checking argument.

Use the machine and review the implementation on Github.

Built for performance

Based around a revamped guest runtime, fast memory checking, and backended by the Stwo prover from StarkWare, this version of the zkVM is more usable, more extensible, and ~1000x faster than previous releases. As the engine of our supercomputer network, it helped our Testnet II achieve 112 quadrillion FLOPS of power and a peak speed of 60.4 million verifiable Hz.

zkVM specification

The Nexus zkVM 3.0 is described by a formal specification of its functionality and constraints used to guarantee execution according to the specified functionality. Developed according to the principles of open science, the goal is to advance zero-knowledge research at Nexus, and contribute to the field of advanced cryptography more broadly.

how it's built

zkVM components

The Nexus zkVM starts with the user providing a normal Rust program. After compiling, it runs the program, generating a trace of its execution. The zkVM then produces a succinct, efficiently verifiable proof that the output of the program was correctly generated by its execution.

Stwo Prover

A transparent, highly efficient Circle STARK (a type of cryptographic proof system), Stwo provides excellent performance on top of a secure, strong, and formal mathematical foundation.

Any RISC-V program

The zkVM can prove RISC-V programs compiled from any high-level language. A Rust runtime and SDK make developing for the zkVM as simple as writing code for any other application.

Extensible with precompiles

The Nexus zkVM machine architecture supports extensibility through custom precompile instructions. Precompiles are domain-specific constraints that can speed up the proving of critical computations like those used in cryptography and machine learning. Developers can write their own custom precompiles, as well as draw from — and contribute back to — an open ecosystem.

Verifiable proofs

The zkVM is designed for succinct and easily verifiable proofs with the goal of both native and onchain verification in support of true general purpose computation.

Open science

The zkVM implementation is accompanied by a full, rigorous specification of the machine, delivering confidence in its soundness.

Memory checking

With a modern offline memory checking design the zkVM can prove operations over even large program memories quickly and efficiently in an “only prove what you use” model.

The Nexus zkVM 3.0

Introducing a full, ground-up rewrite of the previous generations of our virtual machine, accompanied by a rigorous formal specification.

The verifiable machine

At the heart of our design is a formally-specified set of Arithmetic Intermediate Representation (AIR) constraints for the RISC-V machine architecture, as well as a lookup-based memory checking argument.

Use the machine and review the implementation on Github.

Built for performance

Based around a revamped guest runtime, fast memory checking, and backended by the Stwo prover from StarkWare, this version of the zkVM is more usable, more extensible, and ~1000x faster than previous releases. As the engine of our supercomputer network, it helped our Testnet II achieve 112 quadrillion FLOPS of power and a peak speed of 60.4 million verifiable Hz.

zkVM specification

The Nexus zkVM 3.0 is described by a formal specification of its functionality and constraints used to guarantee execution according to the specified functionality. Developed according to the principles of open science, the goal is to advance zero-knowledge research at Nexus, and contribute to the field of advanced cryptography more broadly.

how it's built

zkVM components

The Nexus zkVM starts with the user providing a normal Rust program. After compiling, it runs the program, generating a trace of its execution. The zkVM then produces a succinct, efficiently verifiable proof that the output of the program was correctly generated by its execution.

Stwo Prover

A transparent, highly efficient Circle STARK (a type of cryptographic proof system), Stwo provides excellent performance on top of a secure, strong, and formal mathematical foundation.

Any RISC-V program

The zkVM can prove RISC-V programs compiled from any high-level language. A Rust runtime and SDK make developing for the zkVM as simple as writing code for any other application.

Extensible with precompiles

The Nexus zkVM machine architecture supports extensibility through custom precompile instructions. Precompiles are domain-specific constraints that can speed up the proving of critical computations like those used in cryptography and machine learning. Developers can write their own custom precompiles, as well as draw from — and contribute back to — an open ecosystem.

Verifiable proofs

The zkVM is designed for succinct and easily verifiable proofs with the goal of both native and onchain verification in support of true general purpose computation.

Open science

The zkVM implementation is accompanied by a full, rigorous specification of the machine, delivering confidence in its soundness.

Memory checking

With a modern offline memory checking design the zkVM can prove operations over even large program memories quickly and efficiently in an “only prove what you use” model.

The Nexus zkVM 3.0

Introducing a full, ground-up rewrite of the previous generations of our virtual machine, accompanied by a rigorous formal specification.

The verifiable machine

At the heart of our design is a formally-specified set of Arithmetic Intermediate Representation (AIR) constraints for the RISC-V machine architecture, as well as a lookup-based memory checking argument.

Use the machine and review the implementation on Github.

Built for performance

Based around a revamped guest runtime, fast memory checking, and backended by the Stwo prover from StarkWare, this version of the zkVM is more usable, more extensible, and ~1000x faster than previous releases. As the engine of our supercomputer network, it helped our Testnet II achieve 112 quadrillion FLOPS of power and a peak speed of 60.4 million verifiable Hz.

zkVM specification

The Nexus zkVM 3.0 is described by a formal specification of its functionality and constraints used to guarantee execution according to the specified functionality. Developed according to the principles of open science, the goal is to advance zero-knowledge research at Nexus, and contribute to the field of advanced cryptography more broadly.

how it's built

zkVM components

The Nexus zkVM starts with the user providing a normal Rust program. After compiling, it runs the program, generating a trace of its execution. The zkVM then produces a succinct, efficiently verifiable proof that the output of the program was correctly generated by its execution.

Stwo Prover

A transparent, highly efficient Circle STARK (a type of cryptographic proof system), Stwo provides excellent performance on top of a secure, strong, and formal mathematical foundation.

Any RISC-V program

The zkVM can prove RISC-V programs compiled from any high-level language. A Rust runtime and SDK make developing for the zkVM as simple as writing code for any other application.

Extensible with precompiles

The Nexus zkVM machine architecture supports extensibility through custom precompile instructions. Precompiles are domain-specific constraints that can speed up the proving of critical computations like those used in cryptography and machine learning. Developers can write their own custom precompiles, as well as draw from — and contribute back to — an open ecosystem.

Verifiable proofs

The zkVM is designed for succinct and easily verifiable proofs with the goal of both native and onchain verification in support of true general purpose computation.

Open science

The zkVM implementation is accompanied by a full, rigorous specification of the machine, delivering confidence in its soundness.

Memory checking

With a modern offline memory checking design the zkVM can prove operations over even large program memories quickly and efficiently in an “only prove what you use” model.