Interface  Description 

ZKCommonInput 
This interface is a marker interface for Zero Knowledge input, where there is an implementing class
for each concrete Zero Knowledge protocol.

ZKPOKProver 
This interface is a general interface that simulates the prover side of the Zero Knowledge proof of knowledge.

ZKPOKVerifier 
This interface is a general interface that simulates the verifier side of the Zero Knowledge proof of knowledge.

ZKProver 
A zeroknowledge proof or zeroknowledge 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.

ZKProverInput 
Marker interface.

ZKVerifier 
A zeroknowledge proof or zeroknowledge 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.

Class  Description 

ZKFromSigmaProver 
Concrete implementation of Zero Knowledge prover.

ZKFromSigmaVerifier 
Concrete implementation of Zero Knowledge verifier.

ZKPOKFiatShamirCommonInput 
Concrete input for ZKPOK FiatShamir scheme.

ZKPOKFiatShamirFromSigmaProver 
Concrete implementation of Zero Knowledge prover.

ZKPOKFiatShamirFromSigmaVerifier 
Concrete implementation of Zero Knowledge verifier.

ZKPOKFiatShamirProof 
This message contains two SigmaProtocolMessage and a challenge.

ZKPOKFiatShamirProverInput 
Concrete input for ZKPOK FiatShamir prover.

ZKPOKFromSigmaCmtPedersenProver 
Concrete implementation of Zero Knowledge prover.

ZKPOKFromSigmaCmtPedersenVerifier 
Concrete implementation of Zero Knowledge verifier.
