1
$\begingroup$

This question already has an answer here:

I'm trying to get my head around zero-knowledge proofs and my definition of a zero-knowledge proof is as follows.

A zero-knowledge proof is a method by which one party can prove to another party that they know a secret value, without sharing any data about this secret value.

To implement a zero-knowledge proof some data will need to be exchanged.

With that in mind, is the following assertion correct?

  • To implement a zero-knowledge proof, data can be exchanged but this data should not contain any information about the secret value?

If the above holds true, could a digital signature be classified as a zero-knowledge proof?

$\endgroup$

marked as duplicate by e-sushi Sep 9 '18 at 15:19

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 3
    $\begingroup$ Zero knowledge happen to be a mine field in terms of definitions. Do pay attention and refer to sources of your definition. Zero knowledge is simulator algorithm having certain properties. $\endgroup$ – Vadym Fedyukovych Sep 5 '18 at 11:18
3
$\begingroup$

Your initial definition is imprecise

A zero-knowledge proof is a method by which one party can prove to another party that they know a secret value, without sharing any data about this secret value.

This is not merely a zero-knowledge proof, but it is a zero-knowledge proof of knowledge. A zero-knowledge proof is more general, it can be proving a statement that may or may not relate to a secret.

Is the following assertion correct?

To implement a zero-knowledge proof, data can be exchanged but this data should not contain any information about the secret value?

No this assertion is too loose. Not only the data must not contain any information about the secret value, but it must not contain any new information, or anything that could not have been generated without knowing the secret.

A digital signature is a piece of data that cannot be generated without knowledge of the secret. It is a proof of knowledge, but it is not zero-knowledge because it is leaking some information.

I can take that signature and use it on its own, to claim the following statement: "someone knows the secret". This was not possible before the exchange.

All of the data exchanged must be trivial to create on its own, the proof is only valid from the point of view of the verifier producing the challenges, in a statistical sense.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.