World ID is a protocol built to enable anonymous proof of human (PoH) at global scale and to complement existing identity systems. World ID allows individuals to prove things about themselves — like they are a real and unique human, not a bot — without revealing any personal information. Read more about World ID.
This repository contains the core components of the World ID Protocol, including the smart contracts, Rust libraries, and services that power the protocol.
- Learn more about World ID: To learn more about World ID in general, see the World ID Website.
- Integrating World ID: The best place to start for integrating World ID is the Developer Docs.
- Protocol Specs: For an a high level overview of the latest major version of the Protocol (World ID 4.0), see the World ID 4.0 Product & Technical Specs.
- In-depth technical documentation: The primary source of technical documentation for the Protocol is directly in the codebase, particularly the foundational crates. See the
world-id-primitivesandworld-id-coredocumentation for more details. - Contributing: If you're interested in contributing to the Protocol, see the Contributing Guide for more information on how to get involved.
Deployments are tracked in contracts/deployments/
| Environment | Chain | Config |
|---|---|---|
| Production | World Chain (480) |
contracts/deployments/core/production.json |
| Staging | World Chain (480) |
contracts/deployments/core/staging.json |
| Environment | Chain | Config |
|---|---|---|
| Production | World Chain (480) |
contracts/deployments/oprf-key-registry/production.json |
| Staging | World Chain (480) |
contracts/deployments/oprf-key-registry/staging.json |
The World Foundation maintains a set of reference services (indexer & gateway) for interacting with the World ID Protocol. Use of these services is not required to work with World ID. You may choose to do direct on-chain interactions, host your own services or use third-party services as you see fit.
| Service | Environment | URL |
|---|---|---|
world-id-indexer |
Production | https://indexer.us.id-infra.worldcoin.devhttps://indexer.eu.id-infra.worldcoin.devhttps://indexer.ap.id-infra.worldcoin.dev |
world-id-gateway |
Staging | https://gateway.id-infra.worldcoin.dev |
This repo is organized into the following top-level components:
circom/: Circom circuits for zero-knowledge proofscontracts/: Solidity smart contracts (see contracts/README.md)crates/: Rust libraries providing protocol functionalityservices/: Deployable services (gateway, indexer, oprf-node)docs/: Protocol documentation (see docs/README.md)
The Protocol undergoes continuous audits and security reviews to the different components, especially the core infrastructure which includes smart contracts and zero-knowledge circuits. Information about audits can be found in the audits folder.
