Practical overview
When it fits
Use Distaff to explore or demonstrate proof-producing computation when a separate verifier needs to check execution without access to the program or secret inputs.
Who it is for
- Rust developers prototyping zero-knowledge program execution and verification
- Developers creating demonstrations of computation that can be verified without disclosing the program or secret inputs
Documented uses
- Compile Distaff assembly into a program for the virtual machine.
- Execute a program with public and secret inputs and generate outputs and a STARK proof.
- Verify a proof against a program hash, public inputs and outputs without rerunning the program.
Requirements & limits
The repository is public and lists an MIT license.
- Distaff is a Rust library with execute() and verify() functions, rather than a hosted app described in the documentation.
- Programs can be compiled from Distaff assembly; the project recommends this over manually building execution graphs from low-level instructions.
- Inputs support public values and two lists of secret values; the documented caps are eight public inputs and eight outputs.
- The maintainers label the project alpha, note incomplete functionality and known and unknown bugs and security flaws, and explicitly advise against production use.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Execute a program and verify its proof
Compile a Distaff assembly program, generate its execution proof, and verify the result using the program hash, public inputs and outputs.
Before you start
- Rust project using the Distaff crate
- A program written in Distaff assembly
- Program inputs and proof options
Steps
Compile the assembly source into a Distaff Program.
Call execute() with the program, ProgramInputs, desired output count and ProofOptions; retain the returned outputs and StarkProof.
Call verify() with the program hash, public inputs, outputs and proof.
Expected outcome
A proof of execution and outputs, followed by a verification result that indicates whether the proof passes.
Guide limitations
- Distaff is alpha software and its maintainers warn against production use because functionality is incomplete and bugs and security flaws are known and unknown.
- At most eight public inputs and eight outputs are supported.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 18 October 2026
- Original website title
- GuildOfWeavers/distaff · Official homepage title · retained in its source language

