{"id":"self-protocol","title":"Self Protocol","content":"**Self Protocol** is a zero-knowledge (ZK) identity protocol that enables users to generate verifiable proofs of their personal attributes from government-issued identity documents. It is designed to provide \"proof of human\" for web applications and artificial intelligence (AI) agents, allowing attribute verification without disclosing the underlying Personal Identifiable Information (PII) or the source document itself.&#x20;\n\nThe system operates by scanning the Near Field Communication (NFC) chip embedded in biometric passports and government IDs from over 180 countries. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)​\n\n## Overview\n\nSelf Protocol positions itself as a private, user-controlled \"zkKYC\" (Zero-Knowledge Know Your Customer) solution. Its primary goal is to address the privacy and security shortcomings of traditional identity verification systems, which often require users to upload full copies of their identity documents to centralized databases. These databases are frequent targets for data breaches. In contrast, Self Protocol is built on the principles of privacy by design, user control, and cryptographic security. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)​\n\nThe core function of the protocol is to allow a user to prove a specific claim—such as being over 18, having a particular nationality, or being a unique individual—to a third party. The third party can verify this claim cryptographically without ever seeing the passport or ID card from which the proof was derived.&#x20;\n\nAll sensitive information and the generated verifiable credentials remain exclusively on the user's local device, such as a smartphone. The user retains sole custody and control over this data, and it is only shared when they explicitly consent to a specific disclosure for a particular interaction. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4) [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)​\n\nThis approach differs significantly from traditional KYC processes, as shown in the table below.\n\n| Feature                                                                                         | Self Protocol (zkKYC)                                          | Traditional KYC                                                 |\n| ----------------------------------------------------------------------------------------------- | -------------------------------------------------------------- | --------------------------------------------------------------- |\n| **Data Sharing**                                                                                | Shares only a specific, proven attribute (e.g., `age > 18`).   | Requires sharing full identity documents and PII.               |\n| **Data Storage**                                                                                | Stored locally on the user's device.                           | Stored in centralized third-party databases.                    |\n| **Process**                                                                                     | Instant, automated NFC scan; no document uploads required.     | Can involve manual review of uploaded documents.                |\n| **Privacy Risk**                                                                                | Minimized, as there is no central PII database to be breached. | High, as centralized databases are vulnerable to data breaches. |\n| **Source of Truth**                                                                             | Government-issued biometric IDs.                               | Uploaded documents, sometimes supplemented by other data.       |\n| This comparison highlights the protocol's focus on data minimization and user-centric privacy.  |                                                                |                                                                 |\n\n## Technology\n\nThe technical foundation of Self Protocol combines hardware-based security from government documents with advanced cryptography to ensure private and verifiable identity. [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)​\n\n### Core Architecture\n\nThe protocol's architecture is based on three main components:\n\n1. **NFC Scanning:** The primary verification method involves scanning the secure NFC chip embedded in a user's biometric passport or compliant government ID card with a smartphone. This leverages the existing, high-security infrastructure of official government documents. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)\n2. **Zero-Knowledge Proofs (ZKPs):** The protocol uses Zero-Knowledge [Succinct](https://iq.wiki/wiki/succinct) Non-Interactive Arguments of Knowledge (zk-SNARKs) to generate cryptographic proofs. These proofs can confirm the authenticity of the identity document and verify specific attributes without revealing any other data. [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)\n3. **On-Device Storage:** All PII read from the document and any generated verifiable credentials are created and stored exclusively on the user's local device. The protocol's design explicitly avoids any cloud or centralized storage for sensitive user data, meaning not even the protocol's developers can access it. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)\n\n### Verification Process\n\nFor an end-user, the process of generating a verifiable credential is designed to be completed in a few steps:\n\n1. **Download App:** The user installs the Self application on a compatible iOS or Android device.\n2. **Scan ID:** The user follows in-app instructions to scan the NFC chip of their biometric identity document. For Indian Aadhaar cards, which do not use NFC for this purpose, the protocol instead uses a QR code generated from the official mAadhaar application for verification.\n3. **Receive Credential:** The verification is processed instantly on the device, creating a secure and reusable credential that is stored locally.\n\nThis credential can then be used repeatedly to generate proofs for various applications. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4) [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)​\n\n### Supported Documents\n\nThe protocol supports identity documents that adhere to established international standards.\n\n* **Electronic Passports:** Biometric passports that are compliant with International Civil Aviation Organization (ICAO) 9303 specifications. These are identifiable by the biometric logo on the cover.\n* **Biometric ID Cards:** National and regional identity cards that also follow ICAO standards for electronic documents.\n* **Aadhaar Cards (India):** Verified using a secure QR code generated via the government's official mAadhaar app.\n\nThe protocol supports documents from over 180 countries. A detailed coverage map is available on the project's official website. [\\[2\\]](#cite-id-iWndVRebDQZYnNDu) [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)​\n\n### Provable Attributes\n\nOnce a credential has been created from an identity document, applications can request zero-knowledge proofs for a range of data points. The user must consent to each request. Provable attributes include:\n\n* First and last name\n* Nationality\n* Date of birth\n* Gender\n* Document expiration date\n* Passport number\n* Photo\n\nThese attributes allow applications to perform necessary checks while adhering to the principle of data minimization. [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)​\n\n## Features and Use Cases\n\nSelf Protocol serves a variety of functions across [Web3](https://iq.wiki/wiki/web3), AI, and general web applications, focused on establishing a \"proof of human\" and enabling privacy-preserving compliance. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)​\n\n### Key Features\n\n* **Proof of Human:** Cryptographically proves that an online identity or action is tied to a real, unique human being. This is a primary tool for combating Sybil attacks, where a single entity creates multiple fake identities to gain undue influence or resources.\n* **Age Verification:** Allows users to prove they meet age requirements (e.g., 18+ or 21+) for services or content without revealing their exact date of birth.\n* **Geographic Verification:** Enables users to generate a proof of their country of residence or, conversely, prove that they are not a resident of a restricted jurisdiction.\n* **Compliance Checks:** Facilitates compliance with regulations by allowing users to prove they are not on sanction lists, such as the U.S. Office of Foreign Assets Control (OFAC) list, in a privacy-preserving manner.\n\nThese features provide a foundation for building more trusted and secure online systems. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4) [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)​\n\n### Use Cases\n\nThe protocol has been applied in several domains:\n\n* **Web3 and DeFi:** It provides a compliance and anti-fraud layer for decentralized applications. This includes ensuring airdrop distributions reach unique human users, filtering out bots and farm accounts. It is also used for token-gated access to communities and for more secure governance participation.\n* **Social Media:** The protocol can be used to implement \"humanity checks,\" allowing platforms to verify that user profiles belong to real people and combat the spread of bot networks.\n* **Quadratic Funding:** In grant and public goods funding mechanisms, it helps protect against Sybil attacks where multiple fake accounts are used to unfairly influence the allocation of funds.\n* **Wallet Recovery:** The protocol can serve as a secure account recovery mechanism, allowing a user to regain access to a digital wallet by verifying their identity with their government ID.\n\nThese applications demonstrate the protocol's utility in various scenarios where proving human uniqueness and specific attributes is critical. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4) [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)​\n\n## Self AgentID\n\nSelf AgentID is a specific product offered by the protocol that provides AI agents with a cryptographically sound, human-backed identity. As AI agents become more autonomous, this product is designed to allow an agent to perform actions on a user's behalf with verifiable permissions.&#x20;\n\nFor instance, an AI agent could execute transactions or access services for its owner, with its identity and authorization cryptographically tied back to the human user. This is achieved while preserving the user's underlying privacy, as the agent uses ZK proofs for its interactions. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)​\n\n## Ecosystem and Adoption\n\nSelf Protocol reported significant adoption metrics and has established multiple partnerships across different sectors.\n\n### Metrics\n\nAs of early 2026, the protocol has stated it has:\n\n* Delivered over 120 million verified human proofs to its partners.\n* Helped prevent over $20 million in fraud and chargeback exposure for partners.\n* Achieved geographic coverage supporting identity documents from over 180 countries.\n  [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)\n\n### Partnerships and Integrations\n\nSelf Protocol has integrated with a wide range of platforms and entities.\n\n* **Customer Spotlight:** Google is highlighted as a customer using Self's proof-of-human technology within its products.\n* **Cloud Partner:** The protocol utilizes Google Cloud.\n* **DeFi & Web3:** Key partners in this space include [Aave](https://iq.wiki/wiki/aave), Uniswap, [Celo](https://iq.wiki/wiki/celo) Names, Espresso, Karma, Velodrome, [Morpho](https://iq.wiki/wiki/morpho), and Merkl.\n* **Agentic AI Platforms:** Integrations include SelfClaw, AgentHaus, and Trust Agent.\n* **Other Platforms:** Talent Protocol, Lemonade, and Openbands are also listed as partners.\n  These collaborations indicate the protocol's use across [DeFi](https://iq.wiki/wiki/defi), AI, and broader technology applications. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4)\n\n## Developer Integration\n\nSelf Protocol provides tools and resources for developers to integrate its identity verification capabilities into their applications.\n\n### Tools and Resources\n\n* **SDKs:** Lightweight Software Development Kits (SDKs) are available for Web, iOS, and Android platforms to facilitate integration.\n* **APIs:** Open APIs are provided, with an example NPM package referenced as `@selfxyz/core`.\n* **Self AgentID:** This is offered as a distinct product to simplify the integration of human-backed identity for AI agents.\n\n### Support\n\nDeveloper support is available through dedicated community channels.\n\n* **Technical Support:** A Discord server is the primary channel for technical assistance.\n* **Developer Channel:** A Telegram channel named \"Self builder channel\" is available for developers integrating the protocol.\n* **General Community:** A public Telegram group, \"Self public group,\" serves the general community for updates and discussions.\n  These resources are intended to support the growth of the ecosystem around the protocol. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4) [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)\n\n## Security\n\nThe protocol's security model is built on privacy by design and has undergone external validation.\n\n* **Third-Party Audits:** The protocol's codebase and cryptographic systems have undergone a security audit conducted by the firm **zksecurityXYZ**.\n* **Privacy by Design:** The architecture is fundamentally private, ensuring that no entity, including the developing team, can access a user's sensitive data. Information is only revealed through explicit, per-instance user consent via ZK proofs.\n* **Hardware-Based Trust:** By relying on the secure NFC chips within official government documents, the protocol anchors its trust in globally recognized hardware security standards.\n\nThis multi-pronged approach aims to provide a high level of assurance regarding the security and privacy of user data. [\\[1\\]](#cite-id-IZGHbW66Gew9xyG4) [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)​\n\n## Technical Specifications\n\nThe project's technical implementation is managed in a monorepo and utilizes a specific stack of programming languages tailored for zero-knowledge cryptography and cross-platform development.\n\n* **Codebase:** The project's code is managed in a single monorepo.\n* **Programming Languages:** The language distribution in the codebase is as follows:\n\n  * **Circom:** 71.8% (A language for creating arithmetic circuits for ZK proofs).\n  * **C:** 14.5%\n  * **TypeScript:** 10.0%\n  * **Solidity:** 1.6%\n  * Other languages used include Kotlin and JavaScript.\n* **Standards:** The protocol is based on the International Civil Aviation Organization (ICAO) specifications for machine-readable travel documents.\n\nThis technical stack reflects the project's focus on cryptographic security and its application within blockchain and web environments. [\\[2\\]](#cite-id-iWndVRebDQZYnNDu)​","summary":"Self Protocol is a zero-knowledge identity protocol for creating 'proof of human' credentials. It uses smartphone NFC scanning of government IDs to generate verifiable proofs without revealing personal information.","images":[{"id":"QmU1aT44mBsbWT3qyYAc4nMZdAf7Yiuf3dpMZNApYfYBiP","type":"image/jpeg, image/png"}],"categories":[{"id":"organizations","title":"organizations"}],"tags":[{"id":"Protocols"},{"id":"AI"},{"id":"Organizations"}],"media":[],"metadata":[{"id":"references","value":"[\n  {\n    \"id\": \"IZGHbW66Gew9xyG4\",\n    \"url\": \"https://self.xyz/\",\n    \"description\": \"Research Analysis: Self Protocol\",\n    \"timestamp\": 1775830472409\n  },\n  {\n    \"id\": \"iWndVRebDQZYnNDu\",\n    \"url\": \"https://github.com/selfxyz/self\",\n    \"description\": \"Structured Analysis: Self Protocol\",\n    \"timestamp\": 1775830472409\n  }\n]"},{"id":"website","value":"https://self.xyz/"},{"id":"twitter_profile","value":"https://x.com/SelfProtocol"},{"id":"github_profile","value":"https://github.com/selfxyz/self"},{"id":"bscscan","value":"https://bscscan.com/token/0xc45c56bf1aaf119a3c266f97bb28bf19646d0b1d"},{"id":"nansen","value":"https://app.nansen.ai/token-god-mode?chain=bnb&tab=transactions&tokenAddress=0xC45c56Bf1aaF119a3c266f97BB28BF19646d0B1D"},{"id":"commit-message","value":"\"Added Self Protocol organization page\""}],"events":[{"date":"2026-04-10","title":"Self Protocol Founded","type":"CREATED","description":"Self Protocol was founded and officially launched.","id":"0245421f-76c1-4dbf-b244-26288c24223d"}],"user":{"id":"0x8af7a19a26d8fbc48defb35aefb15ec8c407f889"},"author":{"id":"0x8af7a19a26d8fbc48defb35aefb15ec8c407f889"},"operator":{"id":"0x212Cb3F4aE6611054637f9f78F18fB628AD258bb"},"language":"en","version":1,"linkedWikis":{"blockchains":["ethereum","celo"],"founders":["anon"],"speakers":[]}}