Expand description
Transcript types.
All application data communicated over a TLS connection is referred to as a
Transcript
. A transcript is essentially just two vectors of bytes, each
corresponding to a Direction
.
TLS operates over a bidirectional byte stream, and thus there are no application layer semantics present in the transcript. For example, HTTPS is an application layer protocol that runs over TLS so there is no concept of “requests” or “responses” in the transcript itself. These semantics must be recovered by parsing the application data and relating it to the bytes in the transcript.
§Commitments
During the attestation process a Prover can generate multiple commitments to various parts of the transcript. These commitments are inserted into the attestation body and can be used by the Verifier to verify transcript proofs later.
To configure the transcript commitments, use the
TranscriptCommitConfigBuilder
.
§Selective Disclosure
Using a TranscriptProof
a Prover can selectively disclose parts of a
transcript to a Verifier in the form of a PartialTranscript
. A Verifier
always learns the length of the transcript, but sensitive data can be
withheld.
To create a proof, use the TranscriptProofBuilder
which is returned by
Secrets::transcript_proof_builder
.
Structs§
- Transcript index.
- Builder for
Idx
. - Invalid subsequence error.
- A partial transcript.
- Transcript subsequence.
- A transcript contains all the data communicated over a TLS connection.
- Configuration for transcript commitments.
- A builder for
TranscriptCommitConfig
. - Error for
TranscriptCommitConfigBuilder
. - Proof of the contents of a transcript.
- Builder for
TranscriptProof
. - Error for
TranscriptProofBuilder
. - Error for
TranscriptProof
.
Enums§
- The direction of data communicated over a TLS connection.
- Kind of transcript commitment.
Statics§
- Received data transcript ID.
- Sent data transcript ID.