Struct rustls::tls13::key_schedule::KeyScheduleTraffic
source · pub(crate) struct KeyScheduleTraffic {
ks: KeySchedule,
current_client_traffic_secret: Prk,
current_server_traffic_secret: Prk,
current_exporter_secret: Prk,
}
Expand description
KeySchedule during traffic stage. All traffic & exporter keys are guaranteed to be available.
Fields§
§ks: KeySchedule
§current_client_traffic_secret: Prk
§current_server_traffic_secret: Prk
§current_exporter_secret: Prk
Implementations§
source§impl KeyScheduleTraffic
impl KeyScheduleTraffic
fn new( ks: KeySchedule, hs_hash: Digest, key_log: &dyn KeyLog, client_random: &[u8; 32], ) -> Self
pub(crate) fn update_encrypter_and_notify(&mut self, common: &mut CommonState)
pub(crate) fn update_decrypter(&mut self, common: &mut CommonState)
pub(crate) fn next_application_traffic_secret(&mut self, side: Side) -> Prk
pub(crate) fn resumption_master_secret_and_derive_ticket_psk( &self, hs_hash: &Digest, nonce: &[u8], ) -> Vec<u8> ⓘ
pub(crate) fn export_keying_material( &self, out: &mut [u8], label: &[u8], context: Option<&[u8]>, ) -> Result<(), Error>
Auto Trait Implementations§
impl Freeze for KeyScheduleTraffic
impl RefUnwindSafe for KeyScheduleTraffic
impl Send for KeyScheduleTraffic
impl Sync for KeyScheduleTraffic
impl Unpin for KeyScheduleTraffic
impl UnwindSafe for KeyScheduleTraffic
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