2
$\begingroup$

From my research, I think that everyone says that the result of a zero-knowledge proof (ZKP) is that the participants end up with a shared secret that can be used as a session key for a further symmetric encryption session between those two parties. And then, all of the articles say that you follow this up by starting up something like a Diffie-Hellman (DH) session.

If I just got a secure key from the ZKP - why do I need DH? Why don't I just expand the ZKP result and go from there?

$\endgroup$
1
  • 5
    $\begingroup$ Whatever those sources are, you shouldn't use them. ​ ​ $\endgroup$
    – user991
    May 9, 2017 at 23:08

1 Answer 1

2
$\begingroup$

From my research, I think what everything says is that the result of a zero knowledge proof (ZKP) is that the participants end up with a shared secret …
If I just got a secure key from the ZKP - why do I need DH? Why don't I just expand the ZKP result and go from there?

You obviously misunderstood ZKP at its core.

Zero knowledge proofs are interactive or non-interactive protocols or schemes for proving membership of a common input in a formal language (or the analogous thing for promise problems).

In the basic ZKP setting, there are only two parties, in which case something that is unknown to one party ​is simply not a shared secret. For proofs (or for arguments), the verifier is only necessarily convinced that a valid secret exists, not that the prover has one. Also see proofs of knowledge. ​ ​ ​ ​ ​ ​ ​ ​ ​

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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