Zero-knowledgeproofs ensure that trust is not compromised in the name of transaction privacy. Learn what zero-knowledgeproofs are, how and why they work.

This is a partner article sourced from Laura Shin Unchained, published by CoinDesk.

## What are zero-knowledge proofs?

**The Zero-Knowledge Proofs are protocols which help to prove the validity on blockchains of statements without providing information that could compromise privacy.** Users can verify the validity without divulging details about the transaction.

In Zero-Knowledge Proofs the prover has to prove the claim and the verifier must validate it. The protocols show on-chain the validity of the hidden information, and the verifyor knows it with high certainty.

When in the hands of malicious actors (such as hackers), personally identifiable information can pose certain risks such as identity theft and discrimination. Zero-knowledge verifications protect your PII.

Imagine a situation where you need to prove your identity in order to complete a particular transaction. You’ll need to show proof such as your license or other PII.

You will not have any control over this information’s safety once it is in the hands a third-party. Hackers may target the central database of the third-party, or the third-party could use your information to share with others in order to serve targeted advertising and for other purposes.

You can prove the validity of information without sharing it.

## How Does Zero-Knowledge Work?

Zero-knowledgeproofs use algorithms to process data and verify its accuracy. Protocols are used in projects like StarkNet, Polygon Zero and Zk Sync.

Three criteria must be met for zero-knowledge tests to be effective:

**Zero-knowledge**: The verifier is unable to access the original input. They only have the validity of the statement.**Soundness**The protocol cannot validate invalid input to be true. The protocol should have safeguards that prevent the prover from manipulating the verifier to believe their statement is correct.**Completion**: As long as the input is valid and the protocol accepts it, the statement will always be validated. The protocol accepts proof if the information and both parties are true.

Three elements make up a basic proof of zero knowledge.

- The first thing we need is the
**Witness**. This is the secret information. The prover asks questions that would only be known by a party with the secret information. - Second, there is the
**Challenge**. The verifier chooses a question for the prover and asks them to answer it. - The third element is the
**answer**where the prover responds to the question. The response confirms to the verifier that the prover has access to the witness. The verifier selects more questions from the list. Multiple questions reduce the chance of the verifier faking the knowledge.

## Types of Zero Knowledge Proofs

You can choose between interactive and non-interactive proofs of zero knowledge.

**Interactive zero-knowledge proofs**allow back-and-forth communication between two parties. Communication allows the statement validity to be verified by the verifier.**Non interactive zero-knowledgeproofs**: In this case, there is only one communication between the two parties. The prover sends the information to an algorithm which computes a zero-knowledgeproof. The proof is sent to the verifier, who uses a second algorithm to verify the knowledge of the prover.

Many of the protocols currently available fall into the category of non-interactive ZKPs. This is due to their convenience. We’ll look at a few of them.

**ZK SNARKs:**Also known as Zero-Knowledge – Succinct, Non-Interactive Argument of Knowledge (ZK-SNARKs), their small size simplifies the verification process. These protocols use elliptical curvatures to generate a cryptographic prove, which is considered gas-efficient.**ZKSTARKs:**These are also known as Zero Knowledge Scalable Transparent Argument of Knowledge. The minimal interaction between the two parties makes them fast.**Bulletproofs**These bulletproofs do not require any trusted setup. The non-interactive, short zero-knowledge proofs allow for private cryptocurrency transactions.- PLONK These Permutations Over Lagrange Bases for Oecumenical Non Interactive Arguments of Knowledge are also known as . PLONKs are a way to allow many participants using a universally trusted setup.

## Why do we need zero-knowledge proofs?

Different use cases help us understand why we require zero-knowledge evidence. Take a look at the most important ones.

**Privacy and security:**Web3’s pseudonymity does not guarantee privacy as the history of transactions is publicly available. ZKPs allow information verification without revealing PII and maintaining anonymity.**Verification of identity:**The sharing of sensitive information is not required to prove one’s identification. ZKPs provide a way to verify identity in a private and secure manner.**Scalability**Blockchain networks can verify transactions using ZKPs without disclosing the data. The efficiency of the network increases as the amount of information on the blockchain is reduced.**Compliance**Organizations are able to comply with regulations regarding money laundering, KYC and other relevant laws. ZKPs enable organizations to comply with regulatory requirements without storing personal information of users on central databases.

Zero-knowledge cryptography is a basic tool that offers information authentication for unidentified parties or those who are not trusted. Information verification is difficult in the Web3 environment due to its pseudonymous character. ZKPs are revolutionary protocols that address this problem by ensuring fast and secure transactions.