Struct Tls13CipherSuite
pub struct Tls13CipherSuite {
pub common: CipherSuiteCommon,
pub hkdf_provider: &'static dyn Hkdf,
pub aead_alg: &'static dyn Tls13AeadAlgorithm,
pub quic: Option<&'static dyn Algorithm>,
}
Expand description
A TLS 1.3 cipher suite supported by rustls.
Fields§
§common: CipherSuiteCommon
Common cipher suite fields.
hkdf_provider: &'static dyn Hkdf
How to complete HKDF with the suite’s hash function.
If you have a HKDF implementation, you should directly implement the crypto::tls13::Hkdf
trait (and associated).
If not, you can implement the crypto::hmac::Hmac
trait (and associated), and then use
crypto::tls13::HkdfUsingHmac
.
aead_alg: &'static dyn Tls13AeadAlgorithm
How to produce a MessageDecrypter or MessageEncrypter from raw key material.
quic: Option<&'static dyn Algorithm>
How to create QUIC header and record protection algorithms for this suite.
Provide None
to opt out of QUIC support for this suite. It will
not be offered in QUIC handshakes.
Implementations§
§impl Tls13CipherSuite
impl Tls13CipherSuite
pub fn can_resume_from(
&self,
prev: &'static Tls13CipherSuite,
) -> Option<&'static Tls13CipherSuite>
pub fn can_resume_from( &self, prev: &'static Tls13CipherSuite, ) -> Option<&'static Tls13CipherSuite>
Can a session using suite self resume from suite prev?
pub fn fips(&self) -> bool
pub fn fips(&self) -> bool
Return true
if this is backed by a FIPS-approved implementation.
This means all the constituent parts that do cryptography return true
for fips()
.
pub fn quic_suite(&'static self) -> Option<Suite>
pub fn quic_suite(&'static self) -> Option<Suite>
Returns a quic::Suite
for the ciphersuite, if supported.
Trait Implementations§
§impl Debug for Tls13CipherSuite
impl Debug for Tls13CipherSuite
§impl From<&'static Tls13CipherSuite> for SupportedCipherSuite
impl From<&'static Tls13CipherSuite> for SupportedCipherSuite
§fn from(s: &'static Tls13CipherSuite) -> SupportedCipherSuite
fn from(s: &'static Tls13CipherSuite) -> SupportedCipherSuite
§impl PartialEq for Tls13CipherSuite
impl PartialEq for Tls13CipherSuite
Auto Trait Implementations§
impl Freeze for Tls13CipherSuite
impl !RefUnwindSafe for Tls13CipherSuite
impl Send for Tls13CipherSuite
impl Sync for Tls13CipherSuite
impl Unpin for Tls13CipherSuite
impl !UnwindSafe for Tls13CipherSuite
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Policy
that returns Action::Follow
only if self
and other
return
Action::Follow
. Read more