struct Rfc5077Ticketer {
aes_encrypt_key: PaddedBlockEncryptingKey,
aes_decrypt_key: PaddedBlockDecryptingKey,
hmac_key: Key,
key_name: [u8; 16],
lifetime: u32,
maximum_ciphertext_len: AtomicUsize,
}
Expand description
An RFC 5077 “Recommended Ticket Construction” implementation of a Ticketer
.
Fields§
§aes_encrypt_key: PaddedBlockEncryptingKey
§aes_decrypt_key: PaddedBlockDecryptingKey
§hmac_key: Key
§key_name: [u8; 16]
§lifetime: u32
§maximum_ciphertext_len: AtomicUsize
Implementations§
Trait Implementations§
Source§impl Debug for Rfc5077Ticketer
impl Debug for Rfc5077Ticketer
Source§impl ProducesTickets for Rfc5077Ticketer
impl ProducesTickets for Rfc5077Ticketer
Source§fn encrypt(&self, message: &[u8]) -> Option<Vec<u8>>
fn encrypt(&self, message: &[u8]) -> Option<Vec<u8>>
Encrypt message
and return the ciphertext.
Source§fn enabled(&self) -> bool
fn enabled(&self) -> bool
Returns true if this implementation will encrypt/decrypt
tickets. Should return false if this is a dummy
implementation: the server will not send the SessionTicket
extension and will not call the other functions.
Source§fn lifetime(&self) -> u32
fn lifetime(&self) -> u32
Returns the lifetime in seconds of tickets produced now.
The lifetime is provided as a hint to clients that the
ticket will not be useful after the given time. Read more
Source§fn decrypt(&self, ciphertext: &[u8]) -> Option<Vec<u8>>
fn decrypt(&self, ciphertext: &[u8]) -> Option<Vec<u8>>
Decrypt
cipher
, validating its authenticity protection
and recovering the plaintext. cipher
is fully attacker
controlled, so this decryption must be side-channel free,
panic-proof, and otherwise bullet-proof. If the decryption
fails, return None.Auto Trait Implementations§
impl !Freeze for Rfc5077Ticketer
impl RefUnwindSafe for Rfc5077Ticketer
impl Send for Rfc5077Ticketer
impl Sync for Rfc5077Ticketer
impl Unpin for Rfc5077Ticketer
impl UnwindSafe for Rfc5077Ticketer
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