Struct rustls::SupportedCipherSuite[][src]

pub struct SupportedCipherSuite {
    pub suite: CipherSuite,
    pub kx: KeyExchangeAlgorithm,
    pub bulk: BulkAlgorithm,
    pub hash: HashAlgorithm,
    pub sign: SignatureAlgorithm,
    pub enc_key_len: usize,
    pub fixed_iv_len: usize,
    pub explicit_nonce_len: usize,
}

A cipher suite supported by rustls.

All possible instances of this class are provided by the library in the ALL_CIPHERSUITES array.

Fields

The TLS enumeration naming this cipher suite.

How to exchange/agree keys.

How to do bulk encryption.

How to do hashing.

How to sign messages.

Encryption key length, for the bulk algorithm.

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.

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.

Methods

impl SupportedCipherSuite
[src]

Which hash function to use with this suite.

We have parameters and a verified public key in kx_params. Generate an ephemeral key, generate the shared secret, and return it and the public half in a KeyExchangeResult.

Start the KX process with the given group. This generates the server's share, but we don't yet have the client's share.

Resolve the set of supported SignatureSchemes from the offered SupportedSignatureSchemes. If we return an empty set, the handshake terminates.

Which AEAD algorithm to use for this suite.

Length of key block that needs to be output by the key derivation phase for this suite.

Return true if this suite is usable for TLS version.

Can a session using suite self resume using suite new_suite?

Trait Implementations

impl Debug for SupportedCipherSuite
[src]

Formats the value using the given formatter. Read more

impl PartialEq for SupportedCipherSuite
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations