The problem IDD solves
Streamlined KYC Processes
- For Individuals: Convert traditional documents (e.g., Aadhaar) into Verifiable Credentials, enabling quicker onboarding across platforms.
- For Organizations: Reduce time spent on repetitive customer verifications by utilizing verified credentials.
Privacy-Preserving Interactions
- Share only the necessary parts of information (e.g., age verification without sharing the date of birth) using selective disclosure powered by Zero-Knowledge Proofs.
Cross-Platform Identity Usage
- Use credentials across multiple blockchains and ecosystems, eliminating siloed identity systems.
Cost-Efficient Verification
- Avoid repeating on-chain verification processes by utilizing verification history stored immutably on the blockchain using Subgraphs
Decentralized & User-Controlled Identity
- Empower individuals to own and control their digital identity without relying on centralized entities.
How It Makes Tasks Easier & Safer
For Individuals
- Easier Onboarding: Skip repetitive identity proofs for each new service.
- Data Safety: Protect sensitive information with ZK-proofs, avoiding unnecessary data exposure.
For Businesses
- Seamless dApp Integration: Leverage a universal verifier SDK to integrate identity checks effortlessly.
- Cost Savings: Reduce operational costs through reusable verification results.
For Developers
- Developer-Friendly Tooling: Use Graph queries to fetch and verify identity data efficiently.
- Interoperability: Build cross-chain dApps with built-in support for decentralized identity stan
Challenges I ran into
Universal Verifier Contract Issues
- Access Control Problem:
- The contract lacked proper access control for updating the verification status.
- Only the deployer could update the status, preventing validators from executing their roles.
- Debugging & Redeployment:
- Spent significant time debugging why status updates weren't functioning as expected.
- Deployed the contract independently to test potential fixes.
- With mentor support, identified the issue.
Proxy Contract & Subgraph Complexity
- Challenge with Upgradeable Contracts:
- The Universal Verifier contract uses a proxy pattern, enabling upgrades, but this created complexities in subgraph integration.
- Partners assisted in debugging and implementing the correct subgraph configuration, ensuring smooth integration.
Exploration of Alternative Solutions
- PSE DigiLocker XML:
- Explored this solution but found it too rigid for custom credential issuance (Only PAN Card was doable and the generation for XML was difficult).