Notes from building a small, real zkVM
Each post below is grounded in the actual repo — real code, real measurements, real test names. Where a number appears, it was measured before it was published, not estimated.
-
AIR design
Why This zkVM's Soundness Doesn't Need a Lookup Argument
How branch outcomes and register accesses are asserted directly instead of derived algebraically — and exactly where that stops working.
-
AIR design
A Register File Without an Algebraic Mux
How a one-hot selector proves which register a LOAD/STORE touched, and the negative test that checks lying about it fails.
-
Investigation
We Investigated Adding an SP1 Backend. Here's Why We Didn't.
518 dependencies, a Go FFI requirement, and a fundamental ISA mismatch — the real numbers behind a real "no."
-
Winterfell
A Winterfell Debug-Mode Assertion That Isn't a Soundness Bug
The exact expected-vs-actual degree numbers from a real reproduction, and why release mode is correct here.
-
Scoping
Why Forward-Only Jumps, and What Loops Would Actually Require
The specific reason JZ/JNZ can't jump backward yet, and what changes when trace length depends on runtime behavior.
-
On-chain
An Honest On-Chain Verifier: What AttestedVerifier Actually Guarantees
Why the contract is named AttestedVerifier and not StarkVerifier, and what a real one would require instead.
-
Security
Hardening a STARK Proving Service: Real Benchmarks, Not Guesses
An initial instruction-count limit turned out to be wildly wrong. Here's the measurement that fixed it.
-
API design
A Code Review Caught a Real API Footgun. Here's the Fix.
A function that took a program and silently ignored it — verified, fixed, and confirmed through real CI.
-
MCP
Connecting Claude to a Real STARK Prover via MCP
Two real MCP tools, verified against an actual client handshake — and why they run on their own port.
-
Benchmarks
What Sub-10ms STARK Verification Actually Requires
The precise methodology behind a benchmark claim, and the trace size where it stops holding.
-
Positioning
What zkvm.host Actually Is vs. the Open-Source Repo It's Built On
A line-by-line breakdown of what's built, what's architecturally real but single-backend, and what's pure pitch.
-
Security
The Trust Boundary, Written Down: What's Trustless Here and What Isn't
The proof is trustless STARK cryptography. The payment for it is not. Exactly where that line sits.
-
CI / DevOps
Proof as a CI Check: What zk-ci.yml Actually Verifies on Every PR
The real workflow that boots a live prover and proves plus verifies every example program before a PR can merge.
-
Contracts / Testing
Testing an On-Chain Task/Reward Orchestrator with Foundry
Eight tests, each named for the specific thing it refuses to let happen to a paid attestation flow.
-
AIR design
Reading a Winterfell AIR: One Degree-4 Constraint, Two Kinds of Check
A line-by-line walk through the real transition and boundary constraints behind this VM's proof.