Inspiration
Everyone loves going to events, but, have you ever wondered why do we have to expose our entire identity just to prove we're adults? Maybe it was at a concert venue, or something happened at a movie theatre that made me think, or I just got tired of handing over my ID like I'm applying for government clearance. The inspiration struck when I realized that proving you're over 18 shouldn't require revealing your life story. Zero-knowledge proofs seemed like the perfect solution—you can prove the fact without spilling the beans about everything else.
What it does
So what does this thing actually do? I built a system where users generate cryptographic proofs of their age using their birthdate, which gets verified on the Midnight blockchain. Venues can instantly verify these proofs without seeing any personal information. It's like having a bouncer who can tell you're old enough without needing to see your ID.
How we built it
Building this was like assembling a privacy-preserving puzzle. I started with a Compact smart contract, though the project is still a WIP as I'm learning more about compact and midnight platform. It handles the age verification logic without ever seeing actual birthdates. The Midnight proof server runs locally to generate zk-SNARK proofs, and I wrapped it all in a sleek web interface. The frontend connects to Lace Wallet, generates proofs when users input their birthdate, and creates QR codes for venues to scan. Pretty neat, right?
Challenges we ran into
There are many other headaches, but the biggest one is getting familiar with Compact, Midnight platform, API usage, and all the new stuff. As I mentioned before that this project is a WIP so I still trying way around these challenges.
Accomplishments that we're proud of
The biggest win? I actually made zero-knowledge proofs wireframe for something people might actually use in future! Creating a system where privacy and verification coexist without compromising either side.
What we learned
- Compact
- Midnight platform
- Midnight's ecosystem
- How to make Dapps ## What's next for zk-age-verifier Well this project is not the sole solution that makes privacy problems disappear, there are many other use cases, but it's a solid start. Next up: expanding beyond age verification to other privacy-preserving identity checks and integrating with more stuff like banks, getting a new phone number, dating apps etc.
Log in or sign up for Devpost to join the conversation.