Proof of Humanity 2.0 Integration Guide
Integrate PoH V2 to verify real humans in your application
Key Features
Soulbound IDs: Persistent human identities that survive wallet changes
Multi-chain deployment: Available on Ethereum mainnet and Gnosis chain
Cross-chain transfers: Move identities between supported chains
Enhanced vouching: Support for both on-chain and off-chain (EIP-712) vouching
V1 compatibility: Seamless migration path from V1
Core Concepts
Soulbound IDs
Proof of Humanity V2 introduces soulbound IDs that represent unique human identities. Unlike V1 where each registration corresponded to a specific wallet address, V2 uses unique humanity IDs (pohID or humanityId) that persist across wallet changes.
Key principle: 1 human → 1 wallet address ↔ 1 humanity
If a user loses access to their wallet, they can request removal of the lost address and register with a new one using the same PoH ID, preserving their reputation and assets tied to the identity.
Recovery Process:
// 1. Human loses access to wallet
humanity.owner == lostAddress
isHuman(lostAddress) == true
// 2. Human requests removal of lost address
humanity.owner == address(0)
isHuman(lostAddress) == false
// 3. Human registers with new wallet address
humanity.owner == newAddress
isHuman(newAddress) == trueMulti-Chain Architecture
PoH V2 operates across multiple blockchains with a sophisticated state synchronization system:
Home Chain: The primary chain where a humanity is claimed and managed
State Updates: Humanity status synchronized across chains via bridge gateways
Universal IDs: Humanity IDs are consistent across all supported chains
Transfer Mechanism: Humanities can be transferred between chains with cooldown periods
Humanity Lifecycle
A humanity progresses through distinct states: Unclaimed → Vouching → Resolving → Claimed → Renewal → Expired/Revoked
Contract Architecture
ProofOfHumanity Contract
Core functionality similar to V1 with enhanced soulbound features
Manages humanity claims, renewals, and revocations
Handles vouching and challenge mechanisms with dispute resolution
Supports both on-chain and off-chain (EIP-712) vouching
ProofOfHumanityExtended Contract
Enhanced version deployed on Ethereum mainnet
Includes Fork Module for V1 compatibility
Allows seamless transition from V1 to V2
CrossChainProofOfHumanity Contract
Manages cross-chain state updates and transfers
Stores received state updates from other chains
Handles humanity transfers between chains with transfer cooldowns
Ensures consistency across multi-chain deployments
Bridge Gateways
AMB (Arbitrary Message Bridge) gateways for cross-chain communication
Enable secure message passing between chain instances
Support both state updates and humanity transfers
Deployment Addresses
Ethereum Mainnet
ProofOfHumanityExtended
0xbE9834097A4E97689d9B667441acafb456D0480A
CrossChainProofofHumanity
0xa478095886659168E8812154fB0DE39F103E74b2
AMB Bridge Gateway
0xddafACf8B4a5087Fc89950FF7155c76145376c1e
Fork Module
0x068a27Db9c3B8595D03be263d52c813cb2C99cCB
Gnosis Chain
ProofOfHumanity
0xa4AC94C4fa65Bb352eFa30e3408e64F72aC857bc
CrossChainProofOfHumanity
0x16044E1063C08670f8653055A786b7CC2034d2b0
AMB Bridge Gateway
0x6Ef5073d79c42531352d1bF5F584a7CBd270c6B1
Interface Definitions
Core Interface
Vouching Interface
Cross-Chain interface
Request Management Interface
Quick Start Integration
1. Install Interface
2. Basic Integration
3. Chain Selection
Choose the appropriate contract address based on your deployment chain:
Method 1: Basic Human Verification
Use case: Simple verification that an address belongs to a verified human.
Implementation Example
Method 2: Soulbound Identity Integration
Use Case: Applications requiring persistent identity across wallet changes (reputation systems, social platforms, DAOs).
Implementation
Method 3: Cross-Chain Integration
Use Case: Applications operating across multiple chains.
Multi-Chain Verification
Advanced Integration Patterns
Event Monitoring
Monitor important PoH events for real-time updates:
Detailed State Queries
For applications requiring comprehensive humanity information:
Registration Vouching Integration
Understanding PoH's Vouching System:
PoH's vouching system is exclusively for the registration process - when new people are trying to become verified humans.
How Registration Vouching Works:
Someone calls
claimHumanity()to register as a humanExisting verified humans call
addVouch()to support themOnce enough vouches are collected, the request can advance to the resolving phase
The person either becomes verified or gets challenged
Migration from V1
V1 Compatibility
The ProofOfHumanityExtended contract includes automatic V1 compatibility through the Fork Module:
✅ V1 registrations continue to work
✅ No immediate migration required
✅ Seamless transition available
✅
isHuman()checks both V1 and V2
Migration Support Implementation
Migration Benefits
Migrating from V1 to V2 provides:
Soulbound identity: Persistent across wallet changes
Cross-chain support: Use identity on multiple chains
Enhanced security: Improved dispute and vouching mechanisms
Future compatibility: Access to new features and integrations
Quick Reference
Essential Functions
Contract Addresses Quick Copy
Support Resources
Documentation: Proof of Humanity Docs
GitHub: PoH V2 Repository
Support: [email protected]
Forum: PoH Governance
Last updated
Was this helpful?