Policy

5 Real-World Zero-Knowledge Use Cases

Author

James Bachini

Publishing date

Zero-Knowledge Proofs enable us to prove properties of data without revealing the data itself. But how does this translate into real-world use cases for zk technology?

For years, digital systems have forced us to trade privacy for participation. Every login, KYC check, or transaction leaves a trail of personal data behind. But a new wave of zero-knowledge use cases is changing that, replacing exposure with mathematical proof.

In this article, we are going to explore five areas where I expect to see developments and innovation within the Stellar ecosystem.

1. zkTokens | Zero-Knowledge Confidential Tokens

zkTokens are protected by zero-knowledge proofs to enable private transactions and balances. They do this while still providing public ledger transparency that the total inputs equal the total outputs.

There are different approaches to zkTokens.

  • One is based on a privacy pool where funds are deposited into a shared pool; the depositor receives a receipt, which can be redeemed privately to withdraw funds from the pool.
  • Another common approach works more like regular tokens, but encrypts the transaction amount and account balances, relying on homomorphic properties and zero-knowledge proofs to ensure the operation integrity (e.g. balance requirement).

The first generation of cryptocurrencies neglected privacy to create an open, transparent financial system. The next generation of digital assets is going to provide users with the same discretion they expect from traditional finance, alongside all the benefits of transacting instantly on a public ledger.

The first wave of zkTokens will likely be fungible (like stablecoins, governance tokens, sep41 tokens etc, where one token is equal to any other token). There are teams already working on this currently, and you can find out more in these presentations by SDF Core Engineer Jay Geng and Nethermind Cryptography Engineer Nick Dimitriou.

2. zkLogin | Zero-Knowledge Login Systems

Usernames and passwords belong as relics of the past. Modern systems like webauthn passkeys provide more secure, streamlined user experiences.

We’ve seen over and over again that the tech industry is hit by major security breaches, user data sets are leaked and sold on the dark web, and users who use the same password for everything get compromised across multiple channels.

Biometric logins using passkeys solve this problem and provide everyday users a way to manage private/public key pairs without having any understanding of the background technology.

With zero-knowledge login systems, we can take this a step further.

zkLogins enable users to prove ownership of a credential without sending any secrets over the wire. We can login by signing a challenge while maintaining anonymity without revealing our public key

Systems are being built that help reduce phishing and data breaches while making authentication instant and self-sovereign.

3. zkKYC | Selective Disclosure Compliance

Private on-chain transactions can create challenges for KYC/AML requirements; however, work is underway to develop zero-knowledge approaches that help address these compliance needs.

To support KYC/AML compliance, there is the potential to enable users to complete verification with a trusted provider, then selectively disclose aspects of that verification.

Zero-knowledge decentralized identifiers help balance compliance with privacy by letting users prove identity attributes selectively. Each credential is stored by the user, and each proof reveals only the minimum necessary information.

There might be a DeFi platform requirement to verify that a user is an accredited investor, residing in the United States. The user could complete ID checks and verifications with a mutually agreed-upon 3rd-party provider. The provider would issue the user with credentials and proven attributes. The user could then use these credentials to sign proofs that they are from the US and an accredited investor without revealing any identity documents.

This is particularly valuable in DeFi, where the decentralized nature makes traditional KYC processes challenging to integrate. For developers, it means we can deploy products on-chain with built in compliance tools that let users manage their own KYC credentials.

4. zkVoting | Zero-Knowledge Voting & Governance

Our days of visiting the ballot boxes are numbered. Democratic systems need modern technology to increase transparency and prevent fraud.

So how do we vote in a digital world?

Zero-knowledge governance is a perfect example where transparency and privacy intersect. As a voter, I want my individual vote to remain private and my identity to be concealed. However, I also want transparency into the process and data availability to ensure that it was a fair vote.

With zkVoting, we can sign private transactions on-chain, which are verifiable, to show we have a right to vote, but don’t reveal our public keys and associated identity.

From DAO governance to national elections, zk voting systems will be used in the future to scale voting into the digital era.

5. zkVM | Zero-Knowledge Virtual Machines

Blockchains such as Stellar work by a decentralized network of nodes all running client software which gossip transactions and updates to achieve a consensus or agreed state. To do this, each node on the network will compute every transaction.

So if I sign a transaction to mint one token, every single node needs to verify that I have permission, then increase my balance in persistent storage. They then agree that their state matches everyone else on the p2p network and move on to the next block.

This is computationally expensive and somewhat inefficient.

Zero-knowledge STARKs or zk-STARKs, such as those used by Risc Zero, provide scaling capability by moving this computation off-chain. The blockchain nodes will then verify a proof, which is more efficient than computing a complete series of transactions.

Stellar is partnering with Nethermind to integrate a Risc Zero verifier into Soroban. This means developers will be able to write Rust programs, run them off-chain to produce a STARK proof (called a receipt in Risc Zero’s terminology), and then verify that proof on-chain.