Getting Started
Welcome to ZK Email! Let's help you get started with email verification using zero-knowledge proofs.
What is ZK Email?
ZK Email is a powerful system that lets you verify emails using zero-knowledge proofs, based on the DKIM (DomainKeys Identified Mail) protocol. Here's how it works:
- When an email is sent from a domain, it's signed with the domain's private key
- The corresponding public key is published in the domain's DNS records
- The receiver verifies the DKIM signature to authenticate the email
- ZK Email adds privacy by proving the verification without revealing the email contents
Learn More
For a deeper dive into the cryptography and architecture behind ZK Email, check out our Architecture section.
Quick Start Guide
1. Choose Your Starting Point
Based on your needs, start with one of these components:
🌟 For New Developers
Start here if you want to:
- Build ZK Email proofs with minimal code
- Use auto-deployed infrastructure
- Get up and running quickly
⚡ For Advanced Users
Choose this if you need to:
- Create custom verification circuits
- Build specialized smart contracts
- Implement custom frontend utilities
2. Explore Our Solutions
🔐 Authentication
- OAuth LoginPrivacy-preserving email authentication
- Account RecoverySecure wallet recovery via email
💼 Smart Contracts
- Email WalletControl smart contracts via email
- Transaction BuilderEmail-driven blockchain actions
🛠️ Developer Tools
- ZK RegexPattern matching in ZK circuits
Implementation Guide
1. Set Up Your Environment
- Clone the repository for your chosen component
- Follow the installation instructions in the component's README
- Install required dependencies
2. Learn Through Examples
- Try our Proof of Twitter Example
- Explore more examples in our Github repositories
- Check component-specific documentation for detailed APIs
3. Build Your Application
- Start with basic email verification
- Add custom logic for your use case
- Integrate with your existing systems
4. Best Practices
- Keep dependencies up-to-date for security
- Follow our coding standards
- Implement proper error handling
- Test thoroughly before deployment
Popular Use Cases
Here's what developers are building with ZK Email:
Use Case | Description | Key Components | Examples |
---|---|---|---|
Private Authentication | Use your email for secure and private authentication. Prove ownership of your email address without revealing it or its contents to the service. | OAuth API, ZK Email SDK | - Logging into a healthcare portal - Accessing a private club |
Smart Contract Control | Manage your blockchain wallets using your email. Perform transactions securely by proving email ownership, making it user-friendly and eliminating the need for managing private keys. | Email Wallet, Transaction Builder | - Transferring cryptocurrency - Executing smart contract functions |
Account Recovery | Safely recover access to your blockchain wallet if you lose your credentials. Use your email to prove your identity and regain control over your assets. | Account Recovery, Email Wallet | - Forgetting your wallet password - Losing your private key |
Identity Verification | Verify personal details or qualifications privately. Prove attributes like age, membership, or event attendance based on email receipts without exposing sensitive information. | ZK Email Verifier, ZK Regex | - Confirming membership in an organization - Verifying attendance at a conference |
Join Our Community
We're here to help you succeed with ZK Email:
- 💬 Join our Telegram for support
- 📚 Check the FAQ for quick answers
- 🤝 Contribute through our contributing guide
- 🔍 Browse example implementations
Stay Updated
Watch our Github repositories for the latest updates and features!