A measured client-side ZK proof-of-personhood running in 477 ms on budget Android hardware without registries

Hi everyone,

I am sharing an empirical research paper and open-source implementation for Sybil Wedge, a client-side zero-knowledge proof-of-personhood construction designed to achieve one-human-one-action rate limiting without biometric databases, hardware orbs, or centralized identity registries.

Core Architecture & Primitives

  • Attester-blinded Secret Commitments: Users enroll via an identity attester (e.g., OIDC or credentials) without the attester ever learning the secret key or seeing generated nullifiers.
  • RLN-style Shamir Nullifiers: Double-actions within the same rate-limit window reveal two points on a line, automatically recovering the secret and slashing the membership stake.
  • Arity-8 Merkle Tree: Reduces tree depth from 20 to 9, bringing constraints down to 4,309 over BN254.
  • Decoupled Epochs: Decouples epoch_action (rate-limit window) from epoch_tree (Merkle cadence) to maintain constant state transitions.
  • Dual Revocation: Implements both in-circuit non-membership checks (+R constraints) and bulk incremental tombstone rebuilds.

Empirical Benchmarks on Physical Hardware

Rather than theoretical estimates, we benchmarked on entry-level ARM64 hardware (Samsung Galaxy A12, Helio P35, 8x Cortex-A53, 3,751 MB RAM):

  • Phase-2 Proving Latency: 477 ms (native Rapidsnark) / ~3,300 ms (C++/WASM).
  • Peak RAM (RSS): 361 MB (9.6% of device RAM).
  • Formal Verification: 6 deployed circuits verified as properly constrained via Picus (Veridise SMT solver), zero findings on circomspect entrypoints, and 24/24 pass rate on adversarial witness tests.

The paper also documents the four optimization paths that failed under empirical measurement (including compressed binary trees and full client-side tree rebuilds) to save other researchers time.

Resources & Open Source

I would appreciate feedback, critique on the security assumptions, and discussion on potential standardization or integration!