02 — Framework · Framework

Miden VM

zkVM (stack-based)

In one paragraph

Miden VM: zkVM (stack-based). Kind: zkVM (stack-based). Arithmetisation / backend: STARK, custom ISA. Setup: None. Maintained by: Miden (Polygon spin-out). Licence: MIT / Apache-2.0. Status: Actively developed; mainnet launch announced for 2026. Choose it when: Applications needing client-side proving and programmable privacy. Less compelling as a general-purpose off-chain proving engine.

Kind
zkVM (stack-based)
Arithmetisation / backend
STARK, custom ISA
Setup
None
Maintained by
Miden (Polygon spin-out)
Licence
MIT / Apache-2.0
Status
Actively developed; mainnet launch announced for 2026
Selection matrix · see the row in context

What it is

A STARK-based virtual machine with its own assembly language and a Rust compiler target, purpose-built for client-side proving and programmable privacy — a design point most general zkVMs do not target.

Strengths and tradeoffs

Strengths
  • Explicitly designed for client-side proving and programmable privacy
  • No trusted setup
  • Very actively developed under a permissive dual licence
Tradeoffs
  • Its own assembly and execution model, so no reuse of the RISC-V toolchain ecosystem
  • The network's mainnet launch was announced for 2026; production evidence is limited until it has been live for a while — confirm the current status
  • Smaller ecosystem and thinner third-party audit and tooling coverage than the RISC-V majors

Choose it whenApplications needing client-side proving and programmable privacy. Less compelling as a general-purpose off-chain proving engine.

Sources cited on this page · 1

  1. Miden VM — stack-based STARK VMproject
Cite this page
MarketComp (2026). Miden VM. The ZK Field Manual (Version 1.3). MarketComp. https://zkpick.com/frameworks/miden-vm/
@misc{zkfieldmanual-miden-vm,
  title        = {Miden VM — The ZK Field Manual},
  author       = {MarketComp},
  year         = {2026},
  version      = {1.3},
  howpublished = {\url{https://zkpick.com/frameworks/miden-vm/}},
  note         = {Accessed: YYYY-MM-DD}
}