[]Module elgamal_ristretto::dl_knowledge

An auto-generated Schnorr proof implementation.

Proofs are created using prove_compact or prove_batchable, producing CompactProofs or BatchableProofs respectively. These are verified using verify_compact and verify_batchable; BatchableProofs can also be batch-verified using batch_verify, but they have slightly larger proof sizes compared to CompactProofs.

The internal details of the proof statement are accessible in the internals module. While this is not necessary to create and verify proofs, the it can be used with the lower-level constraint system API to manually combine statements from different proofs.

Modules

internal

The generated internal module contains lower-level functions at the level of the Schnorr constraint system API.

Structs

BatchVerifyAssignments

Named parameters for batch_verify.

BatchableProof

A Schnorr proof in batchable format.

CompactProof

A Schnorr proof in compact format.

CompressedPoints

Point encodings computed during proving and returned to allow reuse.

ProveAssignments

Named parameters for prove_compact and prove_batchable.

Transcript

A transcript of a public-coin argument.

VerifyAssignments

Named parameters for verify_compact and verify_batchable.

Enums

ProofError

An error during proving or verification, such as a verification failure.

Functions

batch_verify

Verify a batch of proofs, given a batch of transcripts and a batch of assignments.

prove_batchable

Given a transcript and assignments to secret and public variables, produce a proof in batchable format.

prove_compact

Given a transcript and assignments to secret and public variables, produce a proof in compact format.

verify_batchable

Given a transcript and assignments to public variables, verify a proof in batchable format.

verify_compact

Given a transcript and assignments to public variables, verify a proof in compact format.