pub struct TlsTranscript { /* private fields */ }Expand description
A transcript of TLS records sent and received by the prover.
§Invariants
- First record of
TlsTranscript::sentorTlsTranscript::recvis the finished record. - Records are ordered but records which are not of type
ContentType::ApplicationDatacan be missing. - Handshake related fields may be absent.
- Plaintext of records may be absent.
Implementations§
Source§impl TlsTranscript
impl TlsTranscript
Sourcepub fn builder<'a>() -> TlsTranscriptBuilder<'a>
pub fn builder<'a>() -> TlsTranscriptBuilder<'a>
Returns a builder for TlsTranscript.
Sourcepub fn version(&self) -> TlsVersion
pub fn version(&self) -> TlsVersion
Returns the TLS protocol version.
Sourcepub fn server_signature(&self) -> Option<&ServerSignature>
pub fn server_signature(&self) -> Option<&ServerSignature>
Returns the signature of the server.
Sourcepub fn server_cert_chain(&self) -> Option<&[CertificateDer]>
pub fn server_cert_chain(&self) -> Option<&[CertificateDer]>
Returns the certificate chain.
Sourcepub fn certificate_binding(&self) -> &CertBinding
pub fn certificate_binding(&self) -> &CertBinding
Returns the certificate binding.
Sourcepub fn client_finished(&self) -> &Record
pub fn client_finished(&self) -> &Record
Returns the client finished record.
Sourcepub fn server_finished(&self) -> &Record
pub fn server_finished(&self) -> &Record
Returns the server finished record.
Sourcepub fn session_hash(&self) -> Option<[u8; 32]>
pub fn session_hash(&self) -> Option<[u8; 32]>
Returns the session hash.
The session hash is the SHA-256 digest over the handshake messages from ClientHello up to and including ClientKeyExchange (RFC 7627). It is used to derive the extended master secret.
Sourcepub fn sf_hash(&self, cf_vd: &[u8; 12]) -> Option<[u8; 32]>
pub fn sf_hash(&self, cf_vd: &[u8; 12]) -> Option<[u8; 32]>
Returns the server finished hash given the client finished verify data.
Sourcepub fn to_transcript(&self) -> Result<Transcript, TlsTranscriptError>
pub fn to_transcript(&self) -> Result<Transcript, TlsTranscriptError>
Returns the application data transcript.
Trait Implementations§
Source§impl Clone for TlsTranscript
impl Clone for TlsTranscript
Source§fn clone(&self) -> TlsTranscript
fn clone(&self) -> TlsTranscript
Returns a duplicate of the value. Read more
1.0.0 (const: unstable)§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for TlsTranscript
impl RefUnwindSafe for TlsTranscript
impl Send for TlsTranscript
impl Sync for TlsTranscript
impl Unpin for TlsTranscript
impl UnsafeUnpin for TlsTranscript
impl UnwindSafe for TlsTranscript
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)