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) == true

Multi-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

Important: A humanity can only have one active home chain at a time, but its state can be reflected on multiple chains.

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

Contract
Address

ProofOfHumanityExtended

0xbE9834097A4E97689d9B667441acafb456D0480A

CrossChainProofofHumanity

0xa478095886659168E8812154fB0DE39F103E74b2

AMB Bridge Gateway

0xddafACf8B4a5087Fc89950FF7155c76145376c1e

Fork Module

0x068a27Db9c3B8595D03be263d52c813cb2C99cCB

Gnosis Chain

Contract
Address

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:

  1. Someone calls claimHumanity() to register as a human

  2. Existing verified humans call addVouch() to support them

  3. Once enough vouches are collected, the request can advance to the resolving phase

  4. 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

Last updated

Was this helpful?