Solution Overview

The Agora Solution — Six Pillars

Semaphore for anonymous voting, RLN for spam-resistant posts, UniRep for pseudonymous reputation, a planned token economy for incentives, Canton Network settlement for private fees and vote anchoring, and cross-platform accessibility.

A New Paradigm for Anonymous Participation

The six failure modes described in the Problem section share a common root cause: they are each treated in isolation. Agora rejects that framing. Our solution is a single integrated stack where Semaphore, RLN, UniRep, Canton Network settlement, and cross-platform accessibility all reinforce each other.

This is not a voting app bolted onto a blockchain. It is a production-grade anonymous social ecosystem — 48 backend modules, 22 extracted core packages, 6 custom circom circuits, and private settlement on the Canton Network — built and shipped over a compressed series of milestones (v1.0 through v9.0) between March 1 and March 22, 2026.

Each of the six pillars below corresponds to a specific failure mode from the Problem section, with specific code, contracts, and circuits backing the claim. Together they deliver what was previously thought impossible: anonymity + integrity + spam resistance + pseudonymous reputation + sustainable economics + cross-platform reach — all simultaneously, all cryptographically enforced.

Semaphore v4 — Anonymous Voting

Semaphore v4 lets users prove group membership and cast votes without revealing which leaf of the Merkle tree they occupy. Client-side proof generation keeps all secrets local; the server only ever sees anonymous commitments.

Complete voter anonymity via ZK group membership
Nullifiers prevent double-voting while preserving privacy
Identity secrets never leave the client
Poseidon2-based identity on mobile (SecureStore-persisted)

RLN — Spam-Resistant Anonymous Posts

Rate-Limiting Nullifier (RLN) solves the impossible tradeoff: it lets anonymous users post and comment while automatically rate-limiting them. Exceeding the quota reveals the user's secret, so spam becomes self-incriminating — without ever linking honest users to their content.

Per-epoch rate limits enforced cryptographically
Spammers self-identify; honest users remain anonymous
Offline quota tracking on mobile (AsyncStorage + server sync)
Custom rln.circom circuit integrated with the proving pipeline

UniRep — Pseudonymous Reputation

UniRep provides epoch-based reputation that can be proved without revealing the user's identity. Users can boost/squash content, prove reputation ≥ threshold, and transition state across epochs — all without exposing who they are.

Anonymous boost/squash voting on content
Reputation-gated communities without identity disclosure
Epoch key circuits: epoch_key, reputation_proof, state_transition
Sybil resistance through reputation cost

Planned Token Economy — Dynamic Incentives

A planned incentive economy, still in design, intended to self-balance across growth stages (10K → 10M+ users). Reward rates, poll costs, and registration bonuses would rescale automatically, with settlement health informing reward multipliers. Not yet deployed.

Planned: capped supply with burn-on-poll-creation for deflationary pressure
Planned: tiered staking with governance multipliers
Planned: risk-aware reward multipliers tied to settlement health
Planned: tiered treasury controls for settlement funds

Canton Network Settlement

Agora runs its own live Canton Network mainnet validator. A DAML attribution ledger records token operations, vote receipts, and poll-created events, while Canton Coin settlement handles poll-activation fees and rewards privately through a shielded fee pool.

Live Canton Network mainnet validator run by Agora
DAML attribution ledger records token operations and vote receipts
Canton Coin settlement with a shielded fee pool for private amounts
Canton validator integration for private enterprise settlement

Cross-Platform Accessibility

Next.js 15 web (40+ routes) plus React Native 0.81.5 / Expo 54 mobile (18 feature modules). Identity management, ZK proof generation, and offline quota tracking all work seamlessly across web and mobile.

40+ web routes, 18 mobile feature modules
Three theme variants: Modern neon, Classic Light, Classic Dark
Offline identity + quota tracking, background sync
Accessibility (a11y) hardened across all components

How It Works

1

Identity Generation

Users generate a Semaphore v4 identity. On mobile the identity is Poseidon2-derived and persisted in SecureStore. The secret never leaves the client — the server only sees the commitment.

2

Group Registration

The identity commitment is added to the target Merkle tree (poll, community, or global group). For reputation-gated actions, a UniRep epoch key is also registered.

3

Anonymous Action (Vote, Post, Comment, Boost)

The client generates a bundled ZK proof: Semaphore membership + RLN nullifier (for anti-spam) + optional UniRep reputation + action-specific statement. The bundle proves everything without revealing who.

4

Verification & Canton Anchoring

ZK proofs are verified and vote receipts anchored on Agora's live Canton mainnet validator through a DAML attribution ledger. Poll-activation fees and rewards settle privately in Canton Coin through a shielded fee pool.

Key Advantages Over Traditional Systems

Cryptographic Security

Votes are protected by mathematical proofs, not trust in centralized authorities.

True Anonymity

Zero-knowledge proofs ensure voter identity can never be linked to vote choice.

Public Verifiability

Anyone can verify vote counts and integrity without compromising privacy.

Decentralized Trust

No single point of failure. Trust is distributed across the Canton Network.

Global Accessibility

Vote from anywhere, anytime, using web or mobile interfaces.

Cost Efficiency

Reduced infrastructure costs compared to physical polling stations.