Struct rustls::Tls12CipherSuite
source · pub struct Tls12CipherSuite {
pub common: CipherSuiteCommon,
pub kx: KeyExchangeAlgorithm,
pub sign: &'static [SignatureScheme],
pub fixed_iv_len: usize,
pub explicit_nonce_len: usize,
/* private fields */
}
Expand description
A TLS 1.2 cipher suite supported by rustls.
Fields§
§common: CipherSuiteCommon
Common cipher suite fields.
kx: KeyExchangeAlgorithm
How to exchange/agree keys.
sign: &'static [SignatureScheme]
How to sign messages for authentication.
fixed_iv_len: usize
How long the fixed part of the ‘IV’ is.
This isn’t usually an IV, but we continue the terminology misuse to match the standard.
explicit_nonce_len: usize
This is a non-standard extension which extends the key block to provide an initial explicit nonce offset, in a deterministic and safe way. GCM needs this, chacha20poly1305 works this way by design.
Implementations§
source§impl Tls12CipherSuite
impl Tls12CipherSuite
sourcepub fn resolve_sig_schemes(
&self,
offered: &[SignatureScheme]
) -> Vec<SignatureScheme>
pub fn resolve_sig_schemes( &self, offered: &[SignatureScheme] ) -> Vec<SignatureScheme>
Resolve the set of supported SignatureScheme
s from the
offered SupportedSignatureSchemes
. If we return an empty
set, the handshake terminates.
sourcepub fn hash_algorithm(&self) -> &'static Algorithm
pub fn hash_algorithm(&self) -> &'static Algorithm
Which hash function to use with this suite.
Trait Implementations§
source§impl Debug for Tls12CipherSuite
impl Debug for Tls12CipherSuite
source§impl From<&'static Tls12CipherSuite> for SupportedCipherSuite
impl From<&'static Tls12CipherSuite> for SupportedCipherSuite
source§fn from(s: &'static Tls12CipherSuite) -> Self
fn from(s: &'static Tls12CipherSuite) -> Self
Converts to this type from the input type.