"Old enough? YES or NO. That's all. Nothing stored."
CryptoAge is a privacy-first age verification system that checks if someone is old enough (e.g., 18+) for age-restricted content — without asking for their full ID or storing any sensitive information.
- ✅ No passport, no ID upload required
- ✅ No biometric data stored — ever
- ✅ Zero-Knowledge Proof ensures mathematical privacy
- ✅ Short-lived 60-second tokens — nothing to steal
- ✅ GDPR, COPPA & DSA compliant by design
ageverify/
├── index.html # Interactive 7-slide pitch deck (open in any browser)
├── code.js # Core code: on-device ML + ZKP + JWT token system
├── docs.md # Project documentation one-pager
├── research.md # Research notes, statistics, legal analysis
└── README.md # You are here
User Device ZKP Engine Server
│ │ │
│── Blurred camera frame ──▶│ │
│ (image discarded) │ │
│◀── Age estimate (local) ──│ │
│ │ │
│── Private: age=23 ────────▶ Generate ZKP proof │
│ │── Encrypted proof ──▶│
│ │ ("age ≥ 18") │── Verify proof
│ │ │── Issue 60s JWT
│◀─────────────────────────────────────────────────│
│ ✅ YES / 🚫 NO (token expires, nothing stored)
| Component | Technology |
|---|---|
| On-Device ML | AgeNet (ONNX.js), TensorFlow.js |
| Zero-Knowledge Proof | Groth16 via snarkjs + Circom |
| Ephemeral Token | HS256 JWT (60-second TTL) |
| Backend | Node.js + Express |
| Frontend | Vanilla JS + HTML5 |
Open index.html in any browser to view the full 7-slide interactive pitch deck.
Slides:
- 🛡️ Title — CryptoAge branding & core promise
- 😰 Problem — Why current age gates are broken & invasive
- 💡 Solution — Anonymous ML + ZKP approach
- ⚙️ How It Works — 5-step technical flow diagram
- 💻 Code — Syntax-highlighted ZKP + JWT snippet
- 🌍 Impact — 6 industries + comparison table
- 🚀 CTA — Roadmap, vision, what's built
Navigation: Arrow keys ← →, click Prev/Next, or swipe on mobile.
| Metric | Value |
|---|---|
| Identity records breached (2023) | 3.2 billion |
| Users who abandon ID-upload age gates | 67% |
| Users comfortable with ZKP verification | 72% |
| Average data breach cost | $4.9 million |
| Data stored per user by CryptoAge | 0 bytes |
| Regulation | Status |
|---|---|
| GDPR (EU) | ✅ Compliant — no personal data |
| COPPA (US) | ✅ Compliant — no child data collected |
| DSA (EU Digital Services Act) | ✅ Model approach |
| UK Age Appropriate Design Code | ✅ Privacy by default |
- Browser extension for one-click site integration
- Open-source SDK for developers
- Mobile app (iOS/Android)
- Decentralized verification (blockchain credentials)
- Government ID ZKP alternative
|
kainturasourav0-star 🛡️ Creator & Lead Developer |
Contributions include:
- 🎨 Full UI/UX design — 5-screen interactive SPA
- 🤖 On-device age estimation integration (face-api.js)
- 🔐 Zero-Knowledge Proof architecture & simulation
- ⚙️ Node.js / Express backend with JWT token system
- 📊 Research, legal analysis & privacy compliance review
- 🎞️ 7-slide interactive pitch deck
- 📄 Project documentation & research notes
Want to contribute? Fork the repo, open a PR, or raise an issue!
MIT License — free to use, modify, and distribute.
🛡️ CryptoAge — Privacy is not a feature. It's the foundation. Built with ❤️ by @kainturasourav0-star