Module transcript

Module transcript 

Source
Expand description

Types for modeling and interacting with a transcript sponge when applying the Fiat-Shamir transformation on a an interactive protocol.

Modules§

counting_transcript
An implementation of a TranscriptSponge that increments an internal counter for each squeeze. For testing purposes only!
ec_transcript
keccak_transcript
poseidon_sponge
An implementation of a TranscriptSponge that uses the Poseidon hash function; Useful for recursive proving.
test_transcript
An implementation of a TranscriptSponge that always returns 1. For testing purposes only!
utils 🔒

Structs§

Transcript
A type used for storing an immutable version of the transcript. A Transcript is typically generated by the prover using a TranscriptWriter, and is then serialized and saved on disk as part of the generated proof. The verifier de-serializes the transcript and can access it through the TranscriptReader interface.
TranscriptReader
A TranscriptReader is typically created using a Transcript produced by a TranscriptWriter.
TranscriptWriter
The prover-side interface for interacting with a transcript sponge. A TranscriptWriter acts as a wrapper around a TranscriptSponge and additionally keeps track of all the append/squeeze operations to be able to generate a serializable Transcript.

Enums§

Operation 🔒
Describes an elementary operation on a transcript.
TranscriptReaderError
Errors that a TranscriptReader may produce.

Traits§

ProverTranscript
TranscriptSponge
A TranscriptSponge provides the basic interface for a cryptographic sponge operating on field elements. It is typically used for representing the transcript of an interactive protocol turned non-interactive view Fiat-Shamir.
VerifierTranscript