What Are Zero-Knowledge Proofs?
The Problem
Imagine you need to prove to a bank that your income exceeds $100,000 — but you don't want to reveal your exact salary. Or you need to prove to an auditor that your carbon emissions are below a regulatory threshold — without handing over your raw operational data.
Today, verification requires disclosure. You prove things by showing everything. Zero-knowledge proofs change that equation.
What Is a Zero-Knowledge Proof?
A zero-knowledge proof (ZKP) lets you prove a statement is true without revealing any information beyond the truth of the statement itself.
Three properties define a ZKP:
How Minerva Uses ZK Proofs
Minerva implements ZK-STARKs (Zero-Knowledge Scalable Transparent Arguments of Knowledge) using the Winterfell proving library. Here's the flow:
A Concrete Example
Claim: "My quarterly revenue exceeds $1,000,000"
Circuit:
Input: revenue (private), threshold (public = 1000000)
Gate: gt(revenue, threshold) → result
Output: result must equal 1 (true)What the verifier sees: A proof blob + the public threshold ($1M) + confirmation that the proof is valid.
What the verifier does NOT see: Your actual revenue figure.
Why STARKs?
Minerva uses STARKs over SNARKs for three reasons: