Zero Knowledge Proofs In Blockchain
Privacy is one of the most important factors especially for the Internet. It is made possible with a new tool “Zero knowledge proof”.Without the knowledge of your date of birth, this tool will allow proving your age is above 18. For any given undisclosed financial transaction will prove that you have enough money without revealing any details of account balance. A risk of privacy or theft is removed from the network.
“Zero knowledge proof” is an emerging cryptographic protocol. Although the idea of online privacy is there long back there is a growing obsession with blockchain and cryptocurrencies. Zcash, a digital currency launched in late 2016 had a major security issue online is rectified with the help of Zero-knowledge practice.
Privacy is almost in vain for cryptocurrencies like bitcoin and blockchain systems in which transactions are visible to everyone. Being theoretically anonymous they are to be combined with other data for user identification. All the security concerns of financial institutions are resolved and privacy is also ensured. The major hurdle in the adaption of blockchain technology is its privacy. Banks, where the privacy of the clients are to be considered this is the best way to use blockchain in their payment system.zk-SNARKS, is to be added to the blockchain-based payment system by major bank JPMorgan Chase to ensure privacy. Despite the promises protocols like zk-SNARK is heavy and slow as well. A “secure configuration” is required by them which creates a cryptographic key. But the key when falls in wrong hands will lead to a compromise of the entire system. So most researches suggest of using “zero-knowledge proof”.
Any zero-knowledge application must meet 3 requirements:
1.completeness: “A zero-knowledge proof and blockchain” must always return ‘true’ if the input is true.
2.soundness: A zero-knowledge proof is never tricked to return ‘zero’ if the input is false.
3.privacy: Any other party will not obtain the input.
How does the zero-knowledge proof work?
The best way to explain the process of “zero-knowledge proof and blockchain” is by non-digital examples which are, of course, far from the complexity of zero-knowledge proof but very well explain how they work.
Let’s assume there are blind and two balls, one black and one white. You then want to prove to the blind that these balls are indeed different colours without revealing the colour of each ball.
For this, you ask a blind person to hide both balls under the table and bring one ball back for you to see. After that, he must hide the ball back under the table and then show the same ball or the other. As a result, you can prove to a blind person that the colour is different by saying whether he changed the ball under the table or not.
Of course, other people might think that you are just lucky and are not entirely sure that the two balls have different colours. After each round, your chance to be right consistently with pure luck drops by half. So with 5 rounds, you have 1 of 32 chances of successfully faking. With 10 rounds, that is 1 in 1024, and with 20 turns, that’s about one in one million. In this way, one can reach the probabilistic level of the desired evidence, even though absolute certainty will never be achieved.
Zero-knowledge proof that is actually not related to the ball, of course, but evidence of the validity of all types of data. This includes financial data or personal data.
What is zk-snarks?
You may have found the term ‘zk-Snarks’. This term was introduced in 2012 by Nir Bitansky, Ran Canetti, Alessandro Chiesa & Eran Tromer and describes a special variation of the zero-knowledge technique. zk-SNARKs introduces a number of innovations that make it usable on the blockchain. Most importantly, zk-SNARK reduces the size of the evidence and the computational effort needed to verify them.
Proof of zero knowledge on the blockchain
The zero-knowledge protocol allows the transfer of assets across the blockchain network peer-to-peer with complete privacy. In ordinary blockchain transactions, when an asset is sent from one party to another, the details of the transaction can be seen by each party in the network. Conversely, in a zero-knowledge transaction, others only know that a valid transaction has taken place, but nothing about the sender, recipient, asset class and quantity. The identity and amount spent can remain hidden, and problems like “front-running” can be avoided.
The most prominent blockchain based system using zero-proof knowledge is ZCash, which is also the first cryptocurrency to implement zk-SNARKs. Other blockchain-based systems have also incorporated “zero knowledge proof and blockchain” into their solutions to allow verified transactions while protecting user/transaction privacy. Perhaps the best known is Ethereum, which applies zk-SNARKS as part of the Byzantine upgrade.
Give consumers back control of their data
Our client nuggets take zero knowledge a step further and use storage without knowledge to improve the privacy of personal data in a variety of ways, not just payments.
Trust is very important for every business interaction. To do business, whether online or in the physical world, we need to know who we are dealing with and whether they will respect their promises or not. The problem is that it comes at the expense of privacy. To make a judgment about whether you can trust someone, you need to know what kind of person they are, get personal data or even a credit card number. Storage without knowledge, which is built into the blockchain Nuggets have the potential to make blockchain technology truly personal.
With the Nuggets it is possible for people to enter into a financial agreement, create an online account or verify your identity without having to reveal your personal details.