SPP2: ZK Email Application

Hey everyone!

In Q4, we completed the server-side proving work initiated in Q3 and focused on making ZK email verification fully usable on mobile devices.

This marks the transition from desktop-constrained local proving to a mobile-friendly, production-ready verification flow.


1. Server-Side Noir Proving (Q3 Initiative Completed)

In Q3, we identified WebAssembly memory limitations that prevented certain email types (e.g., Discord) from being proven in-browser.

In Q4, we completed and deployed server-side Noir proving, which:

  • Removes browser memory constraints
  • Enables Discord and other complex email formats
  • Provides consistent performance across devices
  • Unlocks full mobile support

All proofs continue to be verified on-chain, preserving the same trust assumptions as local proving.

Server-side proving is significantly faster than local proving, and makes Discord proofs feasible - previously impossible in-browser due to WebAssembly memory constraints.

Status: Completed and live


2. Mobile-First Verification Flow

To make verification practical on mobile devices, we:

  • Integrated Google Sign-In for secure mailbox scanning
  • Eliminated manual .eml file handling
  • Enabled end-to-end verification directly in mobile browsers

Users can now complete the entire ZK email verification flow - from email authentication to on-chain proof submission - on any device.

Status: Completed and live


3. Generalized Verification Framework – Production Ready

With both server-side and local proving supported, the verification framework is now:

  • Platform-agnostic
  • Device-agnostic
  • Extensible to additional verifiable platforms

The architecture introduced in Q3 has been validated in production with both X (Twitter) and Discord verification live on Sepolia.


4. Future Work

Platform expansion via 1024-bit RSA key support

Expanding the set of verifiable platforms: Reddit and GitHub are natural next candidates. These platforms use 1024-bit RSA DKIM keys, while our current circuits only support 2048-bit keys. Adding 1024-bit key compatibility would be a prerequisite. Combined with server-side proving, this would allow us to support virtually any email-based platform verification.

Pay-to-handle platform

We’ve been exploring the pay-to-handle concept enabling payments to social media handles that haven’t yet created ENS records, claimable upon ZK-verified identity proof. With the verification infrastructure now production-ready across multiple platforms and devices, and server-side proving enabling support for complex email types, this is a natural next step that reuses the circuits and infrastructure we’ve built for the verification platform.

These are directions we’d be excited to pursue in a potential follow-up grant.