Proof-of-humanity oracles: the tradeoffs of onchain identity checks
The problem they solve
Airdrops, governance votes, and quadratic funding all assume one person gets one share. Without identity, a single operator spins up ten thousand wallets and takes ten thousand shares. That is the sybil attack, and it is the default state of permissionless systems: creating wallets is free, so every unprotected distribution is a distribution to bots.
The naive fixes all fail. CAPTCHAs do not work onchain. Token holdings as identity just weight the distribution toward the wealthy, which is plutocracy, not humanity. Transaction history as identity rewards the oldest farmers, who are professionals. Proof of humanity is the attempt to anchor identity in something wallets cannot fake: being a person.
The main design families
Biometric systems scan a face or iris and check uniqueness against an encrypted registry. They offer strong uniqueness guarantees but concentrate sensitive data risk and exclude people unwilling or unable to scan. Social vouching systems let verified humans attest to new ones, which is beautifully decentralized until the vouching graph gets farmed by coordinated groups.
Video and liveness checks sit in the middle: harder to fake at scale than a photo, less invasive than biometrics, but expensive to verify and vulnerable to deepfakes that keep improving. ID-based systems outsource the problem to governments, which works technically but reintroduces the centralization and exclusion the system was trying to avoid.
Where attackers push
Every design has a forgery economy. Biometric systems face presentation attacks and, more importantly, insider threats at enrollment. Vouching systems face vouch-selling markets, where verified accounts attest strangers for a fee. Video systems face deepfake pipelines that get cheaper every quarter. The attack follows the money: wherever verification is valuable, verification gets sold.
The subtler attack is on the oracle layer. The onchain attestation is only as trustworthy as the offchain process that produced it. A compromised or bribed verifier can mint humanity for anyone. Decentralizing the verifier set helps, but it converts a security problem into a governance problem: who watches the watchers, and what stops them from selling attestations.
The privacy and access tradeoffs
Strong uniqueness usually means more personal data, which means bigger honeypots and harder onboarding. Every additional verification step loses real users at the margin, and the users lost are disproportionately the ones with the most to protect: activists, people in surveilled regions, anyone with reason to distrust identity databases.
Protocols have to choose their position on this curve deliberately. A DeFi airdrop optimizing for fairness wants strong checks. A governance system optimizing for participation wants light ones. There is no design that maximizes sybil resistance, privacy, and accessibility at once; the honest move is picking two and designing the protocol's economics around the gap in the third.
What good sybil resistance looks like in practice
In practice, the best systems layer: a humanity check for uniqueness plus behavioral analysis for farming patterns plus economic costs that make large-scale farming unprofitable. No single layer holds, but the combination raises the attacker's cost above the value of the distribution. Security here is economics, not cryptography.
Measure the farm rate, not the verification rate. What share of distributed tokens end up controlled by clustered wallets? Track that over time and across distributions. A humanity system with a 5 percent farm rate that keeps falling is working. One with a 40 percent farm rate is theater with extra steps. The metric that matters is the attacker's margin, and the goal is to keep it negative.