Age verification that reveals nothing except yes or no
Our flagship product. Zero knowledge proofs for private age verification. No face scan, no ID upload, no name. Coming to iOS and Android.
The problem
Governments are mandating age verification. The systems being deployed collect face scans, identity documents, build centralised databases of who visited which sites, and create honeypots for breaches. The Australian Centre to Counter Child Exploitation received more than 82,000 online child exploitation reports in 2024/25.
You cannot protect children by collecting their data. The verification itself becomes the target.
Our approach
Provii uses zero knowledge proofs so the verifier learns one bit: pass or fail. No name, no date of birth, no ID. Works in both directions: "over 18" for restricted content, "under 13" for children's platforms.
Credentials age with the holder. A twelve-year-old's credential stops proving "under 13" when they turn thirteen. The maths handles it.
Get a credential. Prove your age. Reveal nothing.
1. Issuance
A trusted Issuer (bank, government office, retailer) seals the holder's date of birth into a cryptographic credential on their phone. The Issuer never learns where it gets used.
2. Storage
Hardware-backed secure storage on-device. No cloud. No account. AES-256 at rest. Biometric or passcode to access.
3. Verification
A zero knowledge proof is generated on-device. The verifier receives pass/fail and a one-time session ID. Nothing else.
4. Unlinkability
Fresh randomness per session. Two Relying Parties comparing records cannot determine it was the same person. Each credential includes a nullifier for abuse prevention: Provii can see the same opaque number across sessions, but has no name, no date of birth, no device ID. An activity signal with no identity anchor.
Four-party architecture
No single party holds enough to both identify someone and track their activity.
| Party | Knows | Never knows |
|---|---|---|
| Issuing Party | Identity, date of birth | Where verified, the result |
| Wallet (user's phone) | Credential (including DOB), where it is used | Holder's name, government ID, verification outcomes elsewhere |
| Provii (verification infrastructure) | Nullifier (opaque, per-credential), pass/fail, which Relying Party requested it | Identity, date of birth, device |
| Relying Party (website or app) | Pass/fail, threshold checked | Identity, date of birth, nullifier |
The nullifier exists so that credentials can be banned if abuse is detected. Provii can see that the same credential was used across multiple Relying Parties, but has zero knowledge of who that credential belongs to. Activity correlation without an identity anchor. Connection metadata such as IP addresses is processed at the edge for abuse prevention and stored only as salted one-way hashes in short-lived audit logs, never linked to an identity.
Cryptographic stack
| Component | Primitive |
|---|---|
| Proof system | Groth16 (192-byte proofs) |
| Curve | BLS12-381 (128-bit security) |
| Commitments | Pedersen (information-theoretic hiding) |
| API auth | HMAC-SHA256 + nonce + PKCE |
| Attestation | Ed25519 |
All built on well-studied, widely deployed primitives. Nothing novel or experimental. Rust cryptographic core with zeroisation and constant-time guarantees. A single arithmetic circuit handles both over-age and under-age verification.
Date of birth is sealed inside a Pedersen commitment at issuance. During verification, the phone constructs a ZKP from the commitment and the threshold. At no point does the DOB leave the device.
For businesses
Straightforward integration. No personal data passes through your infrastructure.
- Free sandbox, no account or sales call needed
- Website-to-app via QR code or accessibility code
- App-to-app via deep link (iOS + Android)
- Server SDKs for Node.js, Go, Python, Cloudflare Workers
- Royalty model for credential Issuers
For end users
- No account. No email, no password
- Free forever
- Parents can hold a child's credential
- Works on any supporting site or app
- Deleting the app removes all data permanently
Coming to iOS and Android
Provii is being prepared for the Apple App Store and Google Play Store. The entire codebase is open source. Sandbox access is available now for businesses and developers.