DCS / Standards / R+4 ZK Verification
spec v0.1 live · prover Q3 2026 · PQ-direction

R+4 — prove without revealing.

Zero-knowledge proofs over R+2 receipt chains. Prove an agent ran a workflow, charged a price, or processed a record — without revealing the inputs, outputs, or other private details. Spec v0.1 live. Reference prover lands Q3 2026. PQ-ready migration path baked in.

SECRET INPUTS tenant_id: ●●●●●●●●●● balance: ●●●●●●●●●● threshold: $10,000 (public) ZK PROVER groth16 PROOF (PUBLIC) π = (a,b,c) 0x4f9a…3b7c 0xc12e…d4a8 0x892f…5e1b VERIFIED balance ≥ $10k without revealing it R+4 ZK VERIFICATION — prove without revealing
Why ZK

Proof without disclosure.

Some use cases need receipts but can't expose what's inside them. R+4 closes that gap.

🏥

"My doctor's agent processed my data correctly — prove it"

Hospital proves agent ran within consent + protocol bounds. Doesn't reveal the actual medical record. Patient satisfied; PHI stays sealed.

💰

"My bank's fraud agent didn't see my account balance — prove it"

Bank proves fraud-check ran on tx pattern only, never read balance. Customer satisfied without bank exposing balance to a regulator.

🏛️

"This vendor's agent meets your trust threshold — prove it without doxxing"

Vendor proves trust score ≥ 80 without revealing exact score, customer list, or transaction volume. Procurement satisfied.

Proof system

SNARK over commitments to receipt fields.

Commit

Each receipt field commits via Pedersen — content hidden, position fixed.

Statement

Public statement: "there exists a receipt in chain X with field Y satisfying predicate P."

Prove

Prover uses Groth16 (current) / PLONK (next) to generate a ~200-byte proof.

Verify

Anyone with the public statement + proof + chain root verifies in <5ms. No prover trust needed.

Benchmarks

Performance targets (prover Q3 2026 ship).

Statement complexityProof sizeProve timeVerify time
Single receipt field equals X192 B~0.8s3ms
Range proof over 1K receipts320 B~4s8ms
Aggregate sum over 10K receipts384 B~22s12ms
Trust-score-threshold proof256 B~1.4s5ms

Measured on H100 GPU prover. CPU prover ~10× slower. PLONK migration targets ~50% reduction in prove time.

Roadmap

From spec to mainnet.

✓ May 2026

v0.1 spec published. Groth16 proof system selected. Pedersen commitment scheme locked.

○ Aug 2026

Reference prover ships. CLI + JS library. Sample circuits for common statements (range, equality, threshold).

○ Q3 2026

Public verifier endpoint at /v1/zk/verify. ZK proofs from any DCS receipt history.

○ Q4 2026

PLONK migration. PQ-direction signature integration. Spec v1.0 — first stable freeze.

FAQ

Common questions.

Why Groth16 first?
Smallest proof size + fastest verification. Trade-off: trusted setup per circuit. We accept that for v0.1; PLONK migration removes it in v1.0.
Trusted setup security?
Multi-party ceremony with ≥7 independent participants. Toxic waste discarded. Setup transcript public. Same model as Zcash + Tornado. Spec § 6 details.
Compatible with R+2?
Yes — R+4 proves statements about R+2 receipts. R+2 chain stays the source of truth; R+4 is a verification layer on top.
Post-quantum readiness?
Groth16/PLONK are not PQ-safe. R+4 v1.0 introduces hybrid mode — classical proof + STARK proof, parallel verification. Migration path defined in spec § 8.
Can a regulator force me to reveal what's inside?
If subpoenaed for the underlying receipts, yes. ZK doesn't prevent legal disclosure of source data. But routine verification doesn't require revealing the source — that's the whole point.

Prove what happened without showing what happened.

R+4 spec is live. Reference prover ships Q3 2026. Adopt early.

GitHub repo →All standards