Zero knowledge proof is a way for a « prover » to persuade a « verifier » that a claim about some secret information is accurate without divulging the secret itself by using proof or procedure. The proof methodology may or may not be interactive.
Example: A verifier wants the prover to prove that it has the secret data that hashes to the hash H after presenting it with the hash H. Without giving the verifier access to the actual data, the prover creates a zero knowledge proof to persuade him or her that they possess the information that hashes to H.
ZERO KNOWLEDGE PROOF: HOW DOES IT WORK?
When a prover persuades a verifier that he has correctly carried out a calculation on secret data without disclosing the secrets, this is known as a zero knowledge proof of work, also known as a zero knowledge proof of computation.
ZERO KNOWLEDGE AUTHENTICATION: WHAT IS IT?
When a prover persuades a verifier that she is in possession of an identifying secret without actually disclosing the secret, this is known as zero-knowledge authentication. When a prover uses the private key (the identifying secret), which is part of an asymmetric key pair (such as RSA or EC), to answer to a challenge delivered with the public key, this is an example of zero-knowledge authentication. Although the private key is never made public, the verifier is certain that the prover possesses it.
DOES ZERO KNOWLEDGE PROOF SUPPORT BLOCKCHAIN?
Several dispersed parties control a list of records known as a blockchain, and each party has a copy of the list. Blockchains offer no privacy or anonymity since they permit all participants to observe all transactions. Zero-knowledge proofs provide a way to demonstrate that a transaction was successfully executed without disclosing the secret information that was utilized in the transaction (such as addresses, quantities, etc.), allowing for the posting of private transactions to the blockchain while maintaining anonymity. Transferring money from one address to another constitutes a transaction on a blockchain used for cryptocurrencies. The execution of any smart contract at random on an Ethereum blockchain is one possibility.
ZERO KNOWLEDGE SNARK (ZK-SNARK): WHAT IS IT?
Succinct, Non-interactive, Knowledge-Based Arguments is the abbreviation for SNARK. zk With the use of SNARK, it is possible to prove or verify the accuracy of calculations without carrying out the computations themselves or disclosing any secret information that may have been used in them. Instead, the verifier may simply state that the computation was completed properly. This Wiki cannot include all the intricate mathematical and cryptographic techniques used to enable this amazing quotation.
HOW CAN ZERO KNOWLEDGE PROOF BE APPLIED?
Zero knowledge proofs may be used in the following contexts:
• Confidential blockchain transactions: transaction data is encrypted, and a proof demonstrating its accuracy is provided.
• Performance enhancements for distributed applications on blockchains (such as Ethereum smart contracts) – application code is executed off-chain or by a single node on the blockchain network, and only a proof for its correct execution is posted to the blockchain for other parties to verify its accuracy.
• Zero-knowledge identification, or uPort.
• Privacy-preserving verification — A borrower (prover) presents zero knowledge proof to a credit provider (verifier) that he is credit worthy without giving access to private financial data.
ZERO KNOWLEDGE SECURITY: WHAT IS IT?
When one party can convince another that a claim is accurate without revealing the truth of the real claim, the party doing the verifying is aware that the claim is true without knowing the truth of the actual claim.
WHAT ARE THE PERMITTANCES OF ZERO-KNOWLEDGE PROOF IN THE AUTHENTIFICATION PROCESS?
Three elements of the authentication procedure are permitted under the zero knowledge proof:
1) Remote access that necessitates authentication with unreliable or unknown parties
2) Authentication via channels that are not trustworthy
3) Key derivation function (KDF) based on the exchange is sometimes used.