Introduction
World ID
The protocol to bring global proof of personhood to the internet.
Introduction
World ID is a digital passport that lets a user prove they are a unique and real person while remaining anonymous. This happens through zero-knowledge proofs (ZKP) and other privacy-preserving cryptographic mechanisms.
You can easily integrate World ID in your app and smart contract or backend. World ID holders can easily and anonymously verify they are a unique human through a compatible identity wallet, like the World App.
How it works
In broad strokes, this is how World ID works.
-
User gets their World ID in a compatible wallet (e.g. the World App).
-
User receives credentials in their World ID. The flagship credential is biometric verification, currently available by using the Orb. The user can also verify their phone number to obtain the respective credential.
-
Project integrates with World ID.
-
User connects their World ID to authenticate, and optionally prove they are a unique human doing something only once. The user's wallet will generate a ZKP to accomplish this.
-
Project verifies the ZKP, either by using the API or by verifying it on-chain.
The Protocol
The in-depth technical details of the protocol are coming soon. Including the white paper!
At the core of the World ID Protocol is the use of Semaphore. Semaphore is a zk-SNARK based privacy protocol that allows for the creation of anonymous credential systems developed by the Ethereum Foundation. The World ID Protocol uses Semaphore to create distinct anonymity sets for proof of personhood.
Currently, personhood credentials are handled as separate Sempahore instances. That means that each credential has its own anonymity set, and is only a list of verified credential holders. No other information is attached on-chain related to the credential (e.g. no biometric information is attached for the biometric credential, or no information about a phone number is attached to a phone credential).