I'm not clear about the relation between the following definitions:

  1. zero-knowledge protocols;
  2. honest verifier zero-knowledge;
  3. non-interactive zero-knowledge.

To my best understanding, zero-knowledge protocol commonly refers to "interactive" zero-knowledge protocol, and non-interactive zero-knowledge is not called a "protocol" because it is not interactive.

For honest verifier zero-knowledge, it is a property belonging to the zero-knowledge protocol, because in interactive zero-knowledge systems, the prover makes a proof relying on some messages sent from the verifier. Therefore, the honesty of the verifier should be considered.

However, in non-interactive zero-knowledge system, there is no interactive before the prover making a proof, so no honest verifier property should be considered.

I'm not sure the correctness of the above. Is there any mistake?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.