Verify your wallet once for seamless, instant access across multiple platforms without repeated KYC.
This system simplifies and secures the "Know Your Customer" (KYC) process for crypto users. Instead of submitting your personal information to every platform you use, you can verify your wallet's ownership and identity through a single, trusted service. Once completed, your wallet is tagged as "verified" by that trustworthy service, creating a unique, non-transferable link between your identity and that specific wallet address.
When you connect to a new platform, the service simply checks this verification status. It instantly confirms that the connected wallet has been KYC'd without the user having to re-share their personal data. This streamlined approach offers the benefits of compliance and security while drastically improving the user experience, eliminating redundant and time-consuming verification steps on every new service or application.
We built this project on top of Turnkey’s embedded wallet system so that users don’t need to manage their own wallets, while still providing the option to connect external ones. When someone completes KYC in our app, their Turnkey wallet or connected wallet signs and pushes the KYC payload to what we mock as a trusted KYC provider. This provider can then process the request and once verified sign a transaction back to the wallet over the Flare network which can then be accessed on-chain by any other services requiring KYC for that wallet (ex: On-ramping services)
On the validator side, the process is simple: the validator only needs to query on-chain for transactions to the wallet address provided. If a given wallet has been sent its KYC payload on-chain by the provider deemed trustworthy by the validator, the validator can trust the KYC was verified by that provider.
Our design kept things lightweight and hackathon-friendly:
Turnkey made it easy for us to embed wallets and handle signing in-browser without friction.
No shortcuts were taken in terms of transporting sensitive user data. User KYC data is never sent directly in plaintext. Instead, a Turnkey embedded wallet is created to encrypt data into an encryption bundle. The encryption bundle is created at the time of sending, ensuring only the provider can decrypt it in their backend. How this works: