← Back to FairStake

Architecture

Eligibility (World + ENS passport) is separated from execution (Arc USDC pool).

┌──────────────┐     ┌─────────────────────┐     ┌─────────────────┐
│  World ID    │────▶│ Investor Passport   │────▶│  FairStakePool  │
│ Selfie Check │     │ Registry (Sepolia)  │     │  (Arc Testnet)  │
└──────────────┘     └─────────────────────┘     └─────────────────┘
   humanity               credential                  USDC commit
   nullifier              ENS-shaped records          fail-closed

World — humanity layer

Selfie Check proves a unique live person. Nullifier hash is written on-chain so one face = one investor slot.

ENS — passport layer

Investor passport uses ENSv2-compatible text records (maxCommitUsd, expiry, round scope). Minted on Sepolia registry; portable across Round 1 and Round 2.

Arc — capital layer

USDC-native fair-launch pools with per-investor caps. Contract enforces passport limits; sybils revert.

The Sybil Test: verified wallet commits → sybil wallet reverts → same passport works on Round 2 without re-KYC.
FairStake · ETHGlobal Online · World · ENS · Arc