💡 What inspired us Digital age verification today is broken. Every time you prove you're old enough for a service, you surrender your entire identity – birth date, full name, government ID numbers. This creates massive privacy risks and data honeypots for hackers.

We asked: What if you could prove you're 18+ without revealing you're actually 23, 35, or 67?

The inspiration struck when we realized zero-knowledge proofs could solve this elegantly. Using cutting-edge cryptography, we can mathematically prove age requirements while keeping personal data completely private.

🧠 What we learned Building AgeProofZK taught us incredible lessons about:

Zero-Knowledge Cryptography Circuit Design: Writing Noir circuits that prove $$age \geq threshold$$ without revealing $$age$$

Commitment Schemes: Using Pedersen hashes for cryptographic commitments: $$C = H(age, salt)$$

Proof Verification: Integrating Garaga SDK for efficient ZK proof verification on Starknet

Blockchain Development Cairo Language: Advanced smart contract patterns for access control and event logging

Starknet Scalability: Leveraging STARKs for cost-effective proof verification

Multi-network Deployment: Managing deployments across devnet, testnet, and mainnet

Privacy Engineering Data Minimization: Designing systems that never collect unnecessary information

Cryptographic Security: Implementing secure random salt generation and replay attack prevention

User Experience: Making complex cryptography accessible through intuitive interfaces

Built With

  • 14
  • 18
  • backend
  • barretenberg
  • blockchain
  • cairo
  • connect
  • contracts:
  • css
  • deployment
  • foundry
  • framer
  • frontend:
  • functions
  • garaga
  • hash
  • integration:
  • language
  • motion
  • multi-network
  • next.js
  • noir
  • pedersen
  • react
  • sats
  • scarb
  • sdk
  • smart
  • starknet
  • starknet.js
  • tailwind
  • typescript
  • xverse)
  • zero-knowledge:
  • zustand
Share this project:

Updates

Submission history