ZKPerks
A privacy-preserving marketplace where users claim verified rewards using zero-knowledge proofs of email authenticity without revealing personal information.
Live Demo: https://zkperks.vercel.app
Project Description
ZKPerks is a privacy-first marketplace where merchants post exclusive offers and users claim them using cryptographic proofs instead of sharing personal data. The platform transforms existing emails into zero-knowledge proofs that merchants can verify without ever seeing the actual email content or personal information.
The current system is broken. When companies offer discounts to specific groups, customers typically share screenshots or forward entire emails, exposing sensitive personal details in the process. This creates privacy risks and friction for both parties.
ZKPerks creates a better way. Merchants post offers with specific eligibility requirements, users browse the marketplace to find relevant deals, then generate cryptographic proofs from their qualifying emails to claim rewards. These proofs work across multiple compatible offers, so one email verification can unlock several discounts while maintaining complete privacy.
The Problem
Traditional digital reward systems require users to:
- Share screenshots or forward emails containing private information
- Trust third parties with sensitive data
- Lose privacy when proving eligibility for offers
- Deal with fraud and fake claims from users
The Solution
ZKPerks leverages zero-knowledge email proofs to create a trustless, privacy-preserving marketplace where:
For Users:
- Complete Privacy: Email content never leaves your device except for remote proving
- Universal Compatibility: Works with any email provider (Gmail, Outlook, Yahoo, etc.)
- Easy Verification: Simply upload .eml files to generate cryptographic proofs
- One Proof, Multiple Uses: Generated proofs can be used across different compatible offers
- Anti-Fraud Protection: Each proof can only be used once per offer
For Merchants:
- Fraud Prevention: Cryptographically verified proofs prevent fake claims
- Privacy Compliance: Never see user's personal data, only verification status
- Flexible Requirements: Accept multiple proof types for the same offer
- Transparent Process: All verification happens via cryptographic proofs
Key Features
Privacy-First: Customers keep their personal information and identity private throughout the entire process.
Fraud-Resistant: Proofs are cryptographically reliable for verification and prevent reuse of the same email for multiple claims.
Web2 Simplicity: A Web3 service delivered with Web2 simplicity - no crypto wallets or blockchain knowledge required.
Example Use Cases
Developer Tools: ZK proof of a "Pull Request Merged" email from GitHub can unlock developer tooling offers from software companies.
Creator Equipment: ZK proof of YouTube Partner Program email provides access to influencer and creator discounts from camera and audio equipment companies.
Professional Software: ZK proof of email from medical association domains enables software discounts for healthcare professionals.
Technologies Used
Frontend Framework & Core
- Vue 3 - Modern reactive JavaScript framework with Composition API
- Vue Router 4 - Official routing solution for single-page application
- Vite - Next-generation build tool with hot module replacement
- JavaScript ES6+ - Modern JavaScript with async/await and modules
Zero-Knowledge Technology
- @zk-email/sdk v2.0.1 - Zero-knowledge email verification SDK
- ZK Email Remote Proving - Browser-compatible proof generation
- DKIM Signature Verification - Cryptographic email authenticity
- Groth16 Proofs - Efficient zero-knowledge proof system
Styling & UI/UX
- Tailwind CSS v3.4.17 - Utility-first CSS framework
- Custom Cyberpunk Theme - Neon effects and matrix-style design
- Lucide Vue Next - Beautiful icon library for Vue 3
- PostCSS & Autoprefixer - CSS processing and browser compatibility
Web3 Integration (Ready for Extension)
- @wagmi/vue v0.2.5 - Vue composables for Ethereum
- viem v2.21.0 - TypeScript Ethereum library
- @tanstack/vue-query v5.0.0 - Powerful data synchronization
Development & Build Tools
- @vitejs/plugin-vue - Vue 3 support for Vite
- vite-plugin-node-polyfills - Node.js polyfills for browser compatibility
- ESLint - Code linting and quality assurance
- NPM - Package management and dependency resolution
Browser APIs & Utilities
- FileReader API - Client-side file processing
- Clipboard API - Copy/paste functionality
- localStorage - Client-side data persistence
- Web Workers (via ZK SDK) - Background processing
Cryptographic Libraries (via ZK Email SDK)
- WebAssembly (WASM) - High-performance cryptographic operations
- Circom Circuits - Zero-knowledge circuit compilation
- snarkjs - JavaScript implementation of zkSNARKs
- DKIM Parsing - Email signature verification
Source Code
Repository: https://github.com/labsterx/zkperks
Deliverables
Live Demo
https://zkperks.vercel.app
Demo Instructions
- Visit: https://zkperks.vercel.app
- Browse Offers: Click "Browse Offers" to see available rewards
- Select an Offer: Click "View Offer" on any reward (recommended: ETHTokyo 2025 Exclusive Perks)
- Prepare Verification Email: Download the ETHTokyo 2025 email with the subject line “Your ticket for ETHTokyo 2025” as an .eml file to your computer
- Generate Proof: Click "Generate Proof" on the offer page to visit the offer page → Upload test .eml file -> Generate Proof Code -> Copy the proof Code
- Claim Reward: Return to offer page → Paste proof → Click "Claim Reward"