Bitcoin · Zero Knowledge
Starknet Sepolia · Live

Bitcoin
ownership,
zero knowledge.

Prove you hold Bitcoin — without revealing your address.
ZK proofs generated entirely in your browser. Verified on Starknet.

3Proof circuits
0Address revealed
100%In-browser
L2On-chain verify

The Problem

Proving Bitcoin ownership
costs you your privacy.

Every time you prove you hold Bitcoin — for KYC, DeFi collateral, DAO voting, or trust — you hand over your address. That means your entire transaction history, your balance, and every wallet you've ever touched.

🔍

Your address reveals everything

A Bitcoin address is a permanent public record. Share it once and anyone can trace every transaction you've ever made — past, present, and future.

Status quo
🔒

Prove the fact, not the address

With Privex you prove "I hold ≥ 0.5 BTC since block 850,000" using a ZK proof. The verifier learns only that — nothing else about you.

With Privex
📊

Balance exposed on explorers

Traditional proof requires a signed message from your address — permanently linking your identity to your exact holdings on every public explorer.

Status quo

Only the threshold hits the chain

The on-chain record shows threshold, ZK commitment, and your chosen username. Actual balance, address, and history stay entirely off-chain.

With Privex

How It Works

Four steps.
Fully in your browser.

No backend. No server. No private key transmission. Everything from proof generation to on-chain settlement happens client-side using Noir circuits compiled to WASM.

01 Bitcoin

Fetch UTXOs

Your Bitcoin address fetches UTXO data from mempool.space locally. Block headers are retrieved to anchor timestamps on-chain.

02 Noir

Generate ZK Proof

A Noir circuit runs in your browser via bb.js WASM. It proves balance ≥ threshold and historical ownership — exposing no private inputs.

03 Garaga

Encode Calldata

Garaga transforms the UltraKeccakZKHonk proof into Starknet calldata — the exact format the on-chain verifier contract expects.

04 Starknet

Verify On-Chain

Your wallet submits the proof to the router. The Garaga verifier confirms it. The result is permanent, public, and trustless.

$ circuit    : balance_threshold
threshold : 0.20000000 BTC
commitment: 0x2bf71c003dcd0df46f9ecf4f...
username : "zaid.btc"
address : [ withheld — zero-knowledge ]
verified : ✓ on-chain · Starknet Sepolia

Who Uses Privex

Built for anyone who needs
to prove without exposing.

From DeFi protocols to private individuals, the ability to prove Bitcoin ownership without disclosure has wide and growing applications across the ecosystem.

🏦

DeFi Collateral

Unlock lending, borrowing, or yield positions on Starknet by proving BTC holdings — without bridging assets or revealing your wallet address.

DeFi protocols · Lenders
🗳️

DAO Governance

Gate voting rights by Bitcoin holdings. Members prove their stake without doxxing their address to the DAO or any public record.

DAOs · Governance systems
🤝

OTC Trust

Establish credibility in peer-to-peer deals. Share a signed ZK certificate — not your address — to prove you have the funds.

OTC traders · P2P markets
🎟️

Token-Gated Access

Restrict access to communities or content to verified Bitcoin holders — without storing any wallet address on record.

Communities · Platforms
📋

Compliance

Satisfy proof-of-funds requirements without full financial disclosure. Demonstrate sufficiency to a threshold — nothing beyond that.

Exchanges · Institutions
🔐

Personal Privacy

Prove long-term holding. Establish credibility anywhere. Your history is yours — Privex lets you decide exactly what to reveal.

Individuals · HODLers

The Stack

Production-grade cryptography,
assembled carefully.

Every component was chosen for correctness and composability. The proof system is fully open — circuits, contracts, and calldata encoding are all auditable.

Noir
1.0.0-beta.16

ZK circuit language. Three circuits: balance threshold, multi-address combined balance, and historical ownership with 8-header Bitcoin chain verification.

bb.js
3.0.0-nightly

Barretenberg WASM backend. Runs UltraKeccakZKHonk proving entirely in the browser. No server-side computation required at any step.

Garaga
1.0.1

Proof encoding library for Starknet. Converts UltraKeccakZKHonk proofs into the calldata format expected by deployed Cairo verifier contracts.

Starknet
Sepolia · Cairo 2.14

L2 settlement. The router contract dispatches proofs to Garaga-generated type-specific verifiers. Results are permanent and publicly auditable.

Get Started

Your proof,
your terms.

Generate a ZK proof of your Bitcoin holdings in minutes. Nothing leaves your browser until you choose to submit.