struct ActiveHybrid {
classical: Box<dyn ActiveKeyExchange>,
post_quantum: Box<dyn ActiveKeyExchange>,
name: NamedGroup,
layout: Layout,
combined_pub_key: Vec<u8>,
}
Fields§
§classical: Box<dyn ActiveKeyExchange>
§post_quantum: Box<dyn ActiveKeyExchange>
§name: NamedGroup
§layout: Layout
§combined_pub_key: Vec<u8>
Trait Implementations§
Source§impl ActiveKeyExchange for ActiveHybrid
impl ActiveKeyExchange for ActiveHybrid
Source§fn hybrid_component(&self) -> Option<(NamedGroup, &[u8])>
fn hybrid_component(&self) -> Option<(NamedGroup, &[u8])>
Allow the classical computation to be offered and selected separately.
Source§fn complete(self: Box<Self>, peer_pub_key: &[u8]) -> Result<SharedSecret, Error>
fn complete(self: Box<Self>, peer_pub_key: &[u8]) -> Result<SharedSecret, Error>
Completes the key exchange, given the peer’s public key. Read more
Source§fn complete_hybrid_component(
self: Box<Self>,
peer_pub_key: &[u8],
) -> Result<SharedSecret, Error>
fn complete_hybrid_component( self: Box<Self>, peer_pub_key: &[u8], ) -> Result<SharedSecret, Error>
Completes the classical component of the key exchange, given the peer’s public key. Read more
Source§fn ffdhe_group(&self) -> Option<FfdheGroup<'static>>
fn ffdhe_group(&self) -> Option<FfdheGroup<'static>>
FFDHE group the
ActiveKeyExchange
is operating in. Read moreSource§fn group(&self) -> NamedGroup
fn group(&self) -> NamedGroup
Return the group being used.
Source§fn complete_for_tls_version(
self: Box<Self>,
peer_pub_key: &[u8],
tls_version: &SupportedProtocolVersion,
) -> Result<SharedSecret, Error>
fn complete_for_tls_version( self: Box<Self>, peer_pub_key: &[u8], tls_version: &SupportedProtocolVersion, ) -> Result<SharedSecret, Error>
Completes the key exchange for the given TLS version, given the peer’s public key. Read more
Auto Trait Implementations§
impl Freeze for ActiveHybrid
impl !RefUnwindSafe for ActiveHybrid
impl Send for ActiveHybrid
impl Sync for ActiveHybrid
impl Unpin for ActiveHybrid
impl !UnwindSafe for ActiveHybrid
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