Piyora

Prove regulatory compliance without revealing your identity. ZK-powered MiCA compliance for DeFi.

View on GitHub

The Problem

MiCA (EU crypto regulation) is live. Every DeFi protocol must either KYC every user (killing privacy), geo-block the EU (losing a massive market), or find a better way.

Piyora is the better way.

How It Works

  1. User completes KYC once — with any approved provider (Sumsub, Onfido)
  2. Gets a signed credential — stored encrypted on their device
  3. Generates a ZK proof in-browser — proves "I'm compliant" in 3-5 seconds
  4. Proof verified on-chain — costs ~$0.02 on L2
  5. DeFi protocol checks compliance — one function call: isCompliant(user)

What's Proven vs Hidden

✓ Proven On-Chain

Valid KYC exists. Jurisdiction is allowed. Not sanctioned. Not expired.

🔒 Stays Private

User's identity. Specific country. KYC provider. Actual expiry date.

Integrate in 5 Lines

import {ComplianceGated} from "@piyora/contracts";

contract MyDEX is ComplianceGated {
    function swap(address tokenIn, address tokenOut, uint256 amount)
        external requiresCompliance
    {
        // existing logic unchanged
    }
}

25K gas overhead per transaction (~$0.002 on Base L2).

Key Metrics

~30K constraints

Lean ZK circuit built in Noir

3-5 seconds

Proof generation on consumer hardware

$0.02

One-time attestation cost on L2

25K gas

Per-transaction compliance check