What is Zero-Knowledge Proof

2022-04-14, 02:54


A zero-knowledge proof or protocol is an indirect way for a "prover" to convince a "verifier" that a claim about secret information is accurate without revealing it.

There are two types of zero-knowledge proof protocols - interactive ZKPs and non-interactive ZKPs

There are three essential prerequisites for zero-knowledge proofs - completeness, validity, and zero-knowledge.

ZKPs can be used alongside blockchain to ensure security in messaging apps, detailed reports, and private transactions.

Thousands of people surf the web every day, accept cookies, and share their personal information to take advantage of various online services and products. Unfortunately, users are becoming increasingly exposed to data breaches and unauthorized uses of their information every year. Additionally, they are sometimes forced to give up their privacy to access the services that platforms like Google and Facebook offer - such as recommendations, consultations, customized assistance, etc. However, they cannot access it when they use private browsing.

BBVA New Digital Businesses considers the current digital society's asymmetry regarding information access a grave concern, as privacy and data ownership are "fundamental rights that we must protect." Therefore, the NDB ( New Digital Businesses) has been researching new mechanisms, tools, and scientific methods that are useful in securing the data-based economy while protecting privacy", explains De la Gandara, heading this project.

Zero-Knowledge Proof (ZKP) stands out as one of the technologies showing the most tremendous potential to achieve this balance, a set of tools that allow a piece of information to be validated without exposing the data that demonstrates it. The technology is possible because a computational statement can be mathematically verified to be correct without revealing any data by a "tester" using cryptographic algorithms.

A zero-knowledge proof or protocol is an indirect way for a "prover" to convince a "verifier" that a claim about secret information is accurate without revealing it. Depending on the proof protocol, it can be interactive or not.

ZKPs with interactive procedures require the prover to complete tasks or actions to convince the verifier that they have the necessary information. In interactive ZKPs, mathematics is often involved in performing the required tasks.

There is no need for interaction between prover and verifier in non-interactive ZKPs, or the verification can be performed later. Computers or software are required for these types of ZKPs.

There are three essential prerequisites for zero-knowledge proofs:

1.Completeness: A verifier can confirm that a prover has the proper input if the statement is true.

2.Validity: No statement can be falsified, and the verifier can't be convinced the prover has the required input when the prover doesn't.

3.Zero-knowledge: the verifier cannot know anything beyond whether the statement is true or false. Data and information about the other parties remain confidential.


The use of zero-knowledge proofs in blockchain


ZKPs offer users flexibility and choice if they wish to control and manage their information. In other words, blockchain and zero-knowledge proofs have multiple applications.

Private transactions (EY and Nightfall)
EY developed blockchain and ZKP solutions in response to privacy and data sovereignty concerns.

A public ZKP protocol, Nightfall, was released by EY in 2019 that enables companies to conduct private, secure transactions using public blockchains while preserving confidentiality.

To meet the demands of complex business agreements, EY will design a prototype compiler, Starlight, that uses the ZKP protocol to permit collaboration among parties at the network level while maintaining privacy from competitors.

With Nightfall and Starlight, users can access blockchain applications with greater security and privacy.

Message-based applications
Sending messages privately has been made possible thanks to end-to-end encryption. However, the traditional messaging applications require the user to verify their identity with the server. ZKPs allow individuals to prove their identity without revealing personal information.

Detailed documentation
The combination of ZKPs and blockchain provides users with security when sharing complex documents. In addition to encrypting data in pieces, ZKPs can control the visibility of certain blocks and the information they contain, allowing some users access while restricting others.



Top projects using Zero-Knowledge Proofs


NuCypher
NuCypher is an ICO project that works on building a system for the re-encryption of the proxy network. It is based on the idea of ownership, where you lock (encrypt) a document you own with a private key. To share that document, you will have to provide the private key to the recipient. This, in itself, is something that should not be done. Hence, the need for a proxy re-encryption.

You can re-encrypt your encrypted key to someone else's public key with proxy re-encryption. You can then share the document with the re-encrypted key when this is done. Thus, allowing the recipient to open the document with their public key.

NuCypher operates a set of interconnected nodes that allows the re-encryption of keys. This network of nodes stores the keys in pieces across all the nodes, thus making it more secure. This operation's speed depends on the ZKP technology derivative called NIKP (Non-interactive Zero-knowledge proof). This technology works like a clock in ensuring every re-encryption is correct and secure from KMS nodes.

Nuggets
This program is centered on letting users have more control over their sales when purchasing items online. With this project, users can ration the amount of personal data they release when purchasing goods via online vendors.
The working strategy was based on the fact that centralized databases owned by these online vendors are not secure. Hence, they are easy targets for hacking and data breaches. The Nuggets project uses the ZKP technology to hide users' private information.

ZCash
ZCash (or Zero Cash) implements its operations using the underlying software and protocol of Bitcoin. It recently added the ZK-SNARKs to its blockchain network to ensure that all its ledgers are encrypted and void of double-spending. This blockchain protocol works using the ZKP protocol.

Verification of votes
This is a common application of ZKP in the world today. ZKP is used alongside blockchain to create a democratic way of verifying votes in elections. It provides a transparent system where the whole voting process can be audited and be accessed.
Consequently, there is no need for a third party to verify the election result. ZKP also provides a platform for voters to verify their eligibility. This, in turn, helps voters to protect their personal information.

ING transaction validity
This is another practical application of ZKP alongside blockchain in solving a real-world issue. ING recently announced that it was set to start using ZKP alongside a renowned blockchain platform called Corda to validate transactions on the platform.
The Corda platform was formerly limited in its use as it could only be used to select security and privacy. Now, it can do much more.





Author: Gate.io Observer: M. Olatunji
Disclaimer:
* This article represents only the views of the observers and does not constitute any investment suggestions.
*Gate.io reserves all rights to this article. Reposting of the article will be permitted provided Gate.io is referenced. In all other cases, legal action will be taken due to copyright infringement.
分享一下
gate logo
Credit Ranking
Complete Gate Post tasks to upgrade your rank