Data is a valuable commodity. Every business vies for it to gain more customers and improve customer satisfaction. It is collected with our knowledge through surveys as well as without through multiple methods (i.e. fintech). Before the Internet, customer data was primarily collected by tracking customer purchases via credit and debit cards. Technology gave companies even more ways to collect data via websites, cookies, social media, smartphones, apps, and wearables. Yet, technology has also allowed us to protect our data. This protection is through zero-knowledge proofs (or zero-knowledge protocols). The name states exactly what it is: no (zero) information (knowledge) is being revealed in a transaction.
A zero-knowledge proof is when a person (prover) proves he or she has the information in hand without revealing it to another person (verifier). The prover proves the information through a cryptographic process. For example, when applying for a loan, a customer can prove that he or she is within a certain salary range without giving the exact number to the bank. In order to be a zero-knowledge proof, it must fulfill three criteria:
- Completeness – the verifier is convinced the prover knows the information.
- Soundness – the information is not sound (false).
- Zero-knowledge – nothing else but the information is given.
To break down zero-knowledge proofs even further, there are two types:
Interactive — The prover performs an action (or a series of actions) to convince the verifier the information is true. The action(s) can only be done once.
Non-interactive — The information can be delivered to anyone who can verify it. This protocol can be converted to interactive via a hashtag function. Zcash uses zero-knowledge proofs (zk-SNARKs) since it hides personal and transaction data. With Zcash, there is a third person involved in the cryptographic process called a creator. This person (or entity) creates the zero-knowledge proof.
Zero-knowledge proofs have many uses, just like how blockchain can be used for different industries. They are used in private blockchains to ensure a transaction is valid while key details about the transaction are hidden. The same can be done for hiding credit card information from a merchant. They can even be used in lieu of passwords. In regard to cryptocurrency, zero-knowledge proofs provide an extra layer of privacy. This may cause issues when someone wants to exchange this type of cryptocurrency for a token that is non-privacy equipped, or when buying or cashing out with fiat. However, the person can exchange a private token for Ethereum, in which a transaction trail will emerge. Tron and Ethereum are some blockchains that are adopting zero-knowledge proofs.
In a data-driven global economy, zero-knowledge proofs are the next level in privacy. They will have a great impact on companies that collect, analyze and resell data, giving consumers more control over their information. And like data, zero-knowledge proofs will give senders more control over their transactions.