Struct rustls::crypto::CipherSuiteCommon
source · pub struct CipherSuiteCommon {
pub suite: CipherSuite,
pub hash_provider: &'static dyn Hash,
pub confidentiality_limit: u64,
}
Expand description
Common state for cipher suites (both for TLS 1.2 and TLS 1.3)
Fields§
§suite: CipherSuite
The TLS enumeration naming this cipher suite.
hash_provider: &'static dyn Hash
Which hash function the suite uses.
confidentiality_limit: u64
Number of TCP-TLS messages that can be safely encrypted with a single key of this type
Once a MessageEncrypter
produced for this suite has encrypted more than
confidentiality_limit
messages, an attacker gains an advantage in distinguishing it
from an ideal pseudorandom permutation (PRP).
This is to be set on the assumption that messages are maximally sized –
at least 2 ** 14 bytes. It does not consider confidentiality limits for
QUIC connections - see the [quic::KeyBuilder.confidentiality_limit
] field for
this context.
Implementations§
Auto Trait Implementations§
impl Freeze for CipherSuiteCommon
impl !RefUnwindSafe for CipherSuiteCommon
impl Send for CipherSuiteCommon
impl Sync for CipherSuiteCommon
impl Unpin for CipherSuiteCommon
impl !UnwindSafe for CipherSuiteCommon
Blanket Implementations§
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
Mutably borrows from an owned value. Read more