跳到主要内容

Tls13AeadAlgorithm

特性 Tls13AeadAlgorithm 

Source
pub trait Tls13AeadAlgorithm: Send + Sync {
    // Required methods
    fn encrypter(&self, key: AeadKey, iv: Iv) -> Box<dyn MessageEncrypter>;
    fn decrypter(&self, key: AeadKey, iv: Iv) -> Box<dyn MessageDecrypter>;
    fn key_len(&self) -> usize;
    fn extract_keys(
        &self,
        key: AeadKey,
        iv: Iv,
    ) -> Result<ConnectionTrafficSecrets, UnsupportedOperationError>;

    // Provided method
    fn fips(&self) -> bool { ... }
}
展开描述

Factory trait 用于 building MessageEncrypterMessageDecrypter 用于 一个 TLS 1.3 cipher 套件)。

必需方法§

Source

fn encrypter(&self, key: AeadKey, iv: Iv) -> Box<dyn MessageEncrypter>

构建 MessageEncrypter 用于 the given key/iv.

Source

fn decrypter(&self, key: AeadKey, iv: Iv) -> Box<dyn MessageDecrypter>

构建 MessageDecrypter 用于 the given key/iv.

Source

fn key_len(&self) -> usize

此 length of key in bytes required by encrypter()decrypter()

Source

fn extract_keys( &self, key: AeadKey, iv: Iv, ) -> Result<ConnectionTrafficSecrets, UnsupportedOperationError>

Convert the 密钥材料 从 key/iv, into 一个 ConnectionTrafficSecrets item.

May return UnsupportedOperationError if the AEAD 算法 is not 一个 supported variant of ConnectionTrafficSecrets

提供方法§

Source

fn fips(&self) -> bool

Return true if this is 由 FIPS 批准的实现支持。

实现者§