Jul 18, 2013

How does zero knowledge encryption work?

How secure is zero knowledge encryption?

Zero-knowledge proof

"In cryptography, a zero-knowledge proof or zero-knowledge protocol is a method by which one party (the prover) can prove to another party (the verifier) that a given statement is true, without conveying any additional information apart from the fact that the statement is indeed true. For cases where the ability to prove the statement requires some secret information on the part of the prover, the definition implies that the verifier will not be able to prove the statement to anyone else. Notice that the notion only applies if the statement being proven is the fact that the prover has such knowledge (otherwise, the statement would not be proved in zero-knowledge, since at the end of the protocol the verifier would gain the additional information that the prover has knowledge of the required secret information). This is a particular case known as zero-knowledge proof of knowledge, and it nicely illustrates the essence of the notion of zero-knowledge proofs: proving that one possesses a certain knowledge is in most cases trivial if one is allowed to simply reveal that knowledge; the challenge is proving that one has such knowledge without revealing it or without revealing anything else.

For zero-knowledge proofs of knowledge, the protocol must necessarily require interactive input from the verifier, usually in the form of a challenge or challenges such that the responses from the prover will convince the verifier if and only if the statement is true (i.e., if the prover does have the claimed knowledge). This is clearly the case, since otherwise the verifier could record the execution of the protocol and prove it to someone else, contradicting the fact that proving the statement requires knowledge of some secret on the part of the prover.
Some forms of non-interactive zero-knowledge proofs of knowledge exist,[1] but the validity of the proof relies on computational assumptions (typically the assumptions of an ideal cryptographic hash function)."

I think it is the best solution for cloud storage data security. All of your data is encrypted, and the cloud storage provider doesn’t have the key, only you, the user does. In other words, the provider has “zero knowledge” of the encryption key. It also goes a long way towards keeping your data secure against government snooping. For example, Google may have to comply with a “request” to share your data, but all they would be able to share is encrypted and there is nothing they can do about it.

Answer this