Zero-Knowledge Proofs (Midnight)
This shows how the Fairway Cloud Agent transforms off-chain KYC data into a Midnight ZK-proof, records it on Midnight, and enables cross-chain eligibility checks on Cardano and EVM.
Last updated
Was this helpful?
This shows how the Fairway Cloud Agent transforms off-chain KYC data into a Midnight ZK-proof, records it on Midnight, and enables cross-chain eligibility checks on Cardano and EVM.

The user’s KYC data satisfies required rules (e.g., KYC2_OK, jurisdiction).
The proof is bound to a specific wallet address.
The proof is linked to a timestamp of KYC verification (kyc_verified_at).
The proof is anchored on Midnight as an immutable reference (midnight_ref).
Cross-chain (Cardano/EVM) contracts only verify Merkle membership, Fairway sig, sanctions_epoch, and KYC recency — no raw PII.
✅ Verify Merkle membership for address.
✅ Verify Fairway signature over (root, sanctions_epoch, midnight_ref).
✅ Enforce KYC recency → now - kyc_verified_at ≤ max_age.
✅ Enforce sanctions freshness → sanctions_epoch == latestEpochRoot.
⬜ Optional audit: resolve midnight_ref on Midnight for regulator review.
Fairway signature uses chain-appropriate keys:
secp256k1 for EVM chains.
Cardano-compatible key for UTXO scripts.
Midnight Compact supports Schnorr signatures inside circuits.
On-chain verifiers don’t recompute the ZK — they only check Fairway’s signature + Merkle inclusion.
See Build on Cardano → validator checks for Merkle, timestamp, and sanctions epoch.
See Build on EVM → attestation schema with kyc_verified_at + sanctions_epoch.
Review Revocation Epochs & Freshness → how long-term KYC vs short-term sanctions are combined.
Last updated
Was this helpful?
Was this helpful?

