Developer builds a selective disclosure KYC system using zero-knowledge proofs and BLS ring signatures on Stellar Soroban. Users can prove attributes like residency or age without revealing full identity, with credentials verified on-chain while personal data stays off-chain.
This tutorial demonstrates a practical zero-knowledge KYC application built on Stellar Soroban smart contracts. The system uses BLS ring signatures to enable selective disclosure, allowing users to prove specific attributes (residency, age, accreditation status) to authorized issuers without exposing full personal information. The architecture separates concerns: personal documents are temporarily stored on a backend server during verification, while the smart contract handles credential issuance and anonymous verification. The demo shows three roles (admin, issuer, user) and walks through the complete flow from KYC submission through on-chain attribute verification. The open-source implementation uses React frontend, Express backend, and Soroban native commands for cryptographic operations, illustrating how zero-knowledge technology can create privacy-preserving alternatives to traditional KYC/AML systems.