Cryptocurrencies offer several benefits over conventional currencies, including decentralization, transparency, and immutability. While the blockchain provides pseudo-anonymity, anyone can look up an address's transaction history. And with enough effort, someone can use that data to eventually trace the owner of an account.
Zero-knowledge proofs, or ZKPs, are cryptography schemes that could help solve these problems. In this article, we will look at how to conceptualize zero-knowledge proofs, how they could revolutionize crypto, and their broader implications.
Zero-knowledge proofs could provide a high level of anonymity to cryptocurrencies and other use cases.
Understanding Zero-Knowledge Proofs
A zero-knowledge proof is a method whereby one person can prove knowledge to another person that they possess knowledge without simply revealing that knowledge.
The best way to understand zero-knowledge proofs is with a thought experiment known as the Ali Baba Cave:
Suppose there's a ring-shaped cave with an entrance on one side and a magic door blocking the opposite side. Victor knows the secret word but wants to determine if Peggy knows without revealing the secret.
First, Peggy and Victor label the left and right paths from the entrance as A and B. Then, Victor waits outside the cave while Peggy enters, taking either path A or B. Finally, Victor enters the cave and shouts the path he wants her to take out of the cave, A or B, randomly.
If Peggy knows the secret word, she can easily open the door and return through either path. But if she doesn't, she only has a 50% chance of guessing correctly. And after repeating the experiment a few times, her chances of successfully guessing would be minimal.
The Ali Baba Cave thought experiment is zero-knowledge proof because Peggy doesn't have to disclose the secret word to Victor to prove that she knows it. Instead, she can demonstrate her knowledge to Victor by solving a randomized problem that requires the knowledge. But, at the same time, the experiment doesn't prove anything to third parties.
Zero-knowledge proofs have three requirements:
- Completeness: If a statement is true, the verifier can certify the prover possesses the information without any doubt.
- Soundness: The statement cannot be falsified, and the verifier cannot be falsely convinced the prover has the information.
- Zero-Knowledge: The verifier cannot know any information beyond the statement being true or false.
Finally, it’s worth noting that there are many different systems used to create zero-knowledge proofs. While most are based on zk-SNARK (except Bulletproofs), there are many different options that offer varying levels of transparency and universality, and employ different programming paradigms. And some could even be plausibly post-quantum secure.
Pros & Cons of Zero-Knowledge Proofs
Zero-knowledge proofs involve a series of trade-offs that may or may not be optimal depending on the use case.
The most important pros and cons include:
Zero-Knowledge Proofs in Crypto
Zero-knowledge proofs have become a popular approach to increasing the privacy of cryptocurrencies. Of course, the most famous example of zero-knowledge proofs in cryptocurrencies is Zcash and its zk-SHARKs approach to cryptography. Using these proofs, Zcash offers fully-shielded transactions, providing participants with maximum privacy.
Bitcoin verifies transactions by linking the sender's address, receiver's address, and the input and output values on the public blockchain. In contrast, Zcash shields transactions and uses a zero-knowledge proof to validate transactions with a high probability. As a result, Zcash transactions are entirely private.
Zcash may leverage zero-knowledge proofs, but that’s not the only way to ensure privacy. For instance, Monero’s CryptoNote groups transactions together, making it impossible to distinguish the inputs. Since there’s less computation required, Monero is considered easier to use than Zcash at the moment, although both offer private options.
Of course, privacy-focused cryptocurrencies have come under significant regulatory scrutiny. For example, President Biden's recent executive order made it clear that the government aims to curb illicit finance—a critical concern for privacy-focused cryptocurrencies that make it impossible for regulators to trace potentially-black market transactions.
While you can use zero-knowledge proofs to verify any relation, generating proofs for complex functions is computationally intensive and impractical for most applications. zk-SNARKs can be added to distributed ledger solutions as a zero-knowledge security layer, but there are also implementations in the world of smart contracts.
Rollups are a Layer 2 protocol built atop Ethereum, enabling users to roll multiple transfers up into a single transaction. Zero-knowledge rollups, or ZK Rollups, are smart contract processes that abstract transaction details to preserve privacy while speeding up transactions by moving them off the main Ethereum blockchain.
Other Zero-Knowledge Applications
Zero-knowledge proofs have applications beyond cryptocurrencies. The same concept is helpful in any situation where users may want to avoid disclosing their identities. As the Ali Baba Cave thought experiment shows, you don’t even need computers to implement zero-knowledge proofs—just an understanding of the underlying mathematics.
The most promising ZKP applications include:
- Authentication: Most services require users to input their username and password, but the growing number of data breaches underscores why that's a problem. Zero-knowledge proofs could create passwordless authentication, providing consumers with greater security when signing into services.
- Private Messaging: Many private messaging applications rely on end-to-end encryption to secure content, but they still require users to verify their identity to a server. Zero-knowledge proofs could enable privacy-enhanced messaging by eliminating the need to tie any identifying information to a given message.
- Nuclear Disarmament: Researchers suggested a way for inspectors to confirm that an object is not a nuclear weapon without recording, sharing, or revealing its internal workings. That way, governments don't have to trust inspectors not to steal trade secrets or spy on their internal operations.
The Bottom Line
Zero-knowledge proofs enable one party to prove knowledge to another party without actually disclosing that knowledge. Privacy-focused cryptocurrencies exploit these principles to offer complete anonymity for their blockchain users in the crypto world. However, there are many different applications beyond crypto as well.
If you trade cryptocurrencies, ZenLedger can help you aggregate your transactions across wallets and exchanges and compute your total capital gain or loss to save time and avoid problems at tax time. You can also generate pre-filled tax forms for your accountant or integrate with TurboTax to automatically handle crypto transactions.