Zero knowledge proofs are increasingly creating curiosity among tech and financial enthusiasts for their potential for increased privacy and security for blockchain participants. Zero knowledge Protocols are being incorporated into blockchain platforms by commercial companies to address the current shortcomings of Blockchain technology. Recently JPMorgan’s Quorum introduced the first integration of Zero knowledge security layer into its blockchain platform. ING, a multinational banking and financial services corporation revealed their own Zero knowledge range proof. The corporation asserts that it is 10x more efficient than other options on the Ethereum network.
A Zero knowledge proof allows a prover to assure a verifier of a piece of knowledge they have without revealing the actual information.
To qualify as zero knowledge, the protocols must satisfy the following conditions-
Completeness: The verifier will be convinced with the statement of the prover if he is honest.
Soundness: In case the statement is false, the cheating prover cannot convince the honest verifier.
zero knowledge: For a true statement, the verifier learns that the statement is true but is unaware of the actual statement.
However, the Zero knowledge proofs are not completely tamper-proof. There is always some chance that a cheater will find a way to fool the verifier. Yet, the concept provides a solid verification mechanism for a statement while keeping the information confidential.
Zero knowledge Proofs are the brainchild of Researchers Shafi Goldwasser, Silvio Micali and Charles Rackoff. The concept was devised when they were working on problems related to interactive proof systems. In an interactive proof system the prover exchanges messages with a verifier to convince them of a knowledge of a certain proof without declaring what the knowledge is.
Before Zero knowledge proofs, most systems were based on the soundness properties of the proof system. It was assumed that the prover could be malicious and fool the verifier.The researchers rather questioned the integrity of the verifier. They questioned about the surety that the verifier would not leak the information. For example, if a person wants to logon to a website using a password. The client writes the password and sends it to the server. The server then hashes the password and equates it with the hash stored in the system. If the value matches then the client can enter the system.
The server has the plaintext version of the password and the client’s privacy is at the mercy of the server. In case the server gets attacked then the password will be with the hacker and it can lead to dire consequences. Thus, to counter such scenarios Zero- knowledge proofs are necessary.
ZKP is of extreme importance in cryptography, as it provides an extra layer of privacy for the prover.
In the diagram, the prover(P) asserts that the password of the secret door is known to him. The prover however doesn’t tell the password. The prover takes the path A or B. If path A is taken the verifier has no knowledge of the path taken by the prover. The verifier can ask the prove to come from B. The prover comes from path B ( as shown in the diagram). But, it can be a coincidence also.As a result, the experiment is carried out several times. If the prover can take the correct path each time, the verifier is convinced of the prover’s knowledge without knowing the actual password.
Zero knowledge Proof blockchain
A blockchain system doesn’t guarantee anonymity. The bitcoins transactions can be viewed by all network participants. In Ethereum’s original blockchain, details about a smart contract are public on the Ethereum network.
The problem arises in use-cases related to finance and those involving the transfer of tokenized assets. According to regulatory requirements, confidential information should not be exposed on a network. This is where Zero knowledge proof comes to the rescue. The first cryptocurrency to use the Zero knowledge was Zcash.
“SNARKs stand for succinct non-interactive arguments of knowledge.
Succinct: The size of the message is small in comparison to the length of the actual computation.
Non-interactive: For zkSNARKs there is a setup phase and a single message from the prover to the verifier. Anyone can verify without interacting. These pave the way for new techniques for non-interactive zero knowledge. These are of utmost importance to blockchains.
Arguments: The verifier has protection only against computationally limited powers. Provers with substantial power can create proofs about wrong statements. This is known as “computational soundness”.
of Knowledge: It is impossible for the prover to generate a proof without knowing a witness.
Zcash is a cryptocurrency based on zk-SNARKs. Zcash users can carry out transactions with public amounts just like Bitcoin. They can also choose to do a private transaction, concealing the sender and amount. These are known as shielded transactions in Zcash blockchain platform. Zcash’s shielded transactions have an anonymity set spanning every coin which is used in a shielded transaction.
However, Zero knowledge proof has its own set of challenges.The performance and the level of computing power required to set up can be an issue. Speed and scaling continue to be persisting issues for the blockchain. For instance, CryptoKitties resulted in congestion and backlogs on Ethereum’s network.
Moreover, the chain participants have to be sure that the underlying code is secure enough to wade malicious attacks. However, to ensure honest behaviour and ensuring that a transaction is valid. This is done without revealing the sensitive deal, and here Zero knowledge proofs show great promise.