pub(crate) struct KeyScheduleTraffic {
ks: KeySchedule,
current_client_traffic_secret: OkmBlock,
current_server_traffic_secret: OkmBlock,
current_exporter_secret: OkmBlock,
}
Expand description
KeySchedule during traffic stage. All traffic & exporter keys are guaranteed to be available.
Fields§
§ks: KeySchedule
§current_client_traffic_secret: OkmBlock
§current_server_traffic_secret: OkmBlock
§current_exporter_secret: OkmBlock
Implementations§
Source§impl KeyScheduleTraffic
impl KeyScheduleTraffic
fn new( ks: KeySchedule, hs_hash: Output, key_log: &dyn KeyLog, client_random: &[u8; 32], ) -> Self
pub(crate) fn update_encrypter_and_notify(&mut self, common: &mut CommonState)
pub(crate) fn request_key_update_and_update_encrypter( &mut self, common: &mut CommonState, ) -> Result<(), Error>
pub(crate) fn update_decrypter(&mut self, common: &mut CommonState)
pub(crate) fn next_application_traffic_secret(&mut self, side: Side) -> OkmBlock
pub(crate) fn export_keying_material( &self, out: &mut [u8], label: &[u8], context: Option<&[u8]>, ) -> Result<(), Error>
pub(crate) fn extract_secrets( &self, side: Side, ) -> Result<PartiallyExtractedSecrets, 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