pub struct SessionKeys {
pub tx_key: [u8; 32],
pub rx_key: [u8; 32],
pub session_id: u64,
pub remote_static_pub: [u8; 32],
}Expand description
Session keys derived from Noise handshake
Fields§
§tx_key: [u8; 32]Key for encrypting outbound packets
rx_key: [u8; 32]Key for decrypting inbound packets
session_id: u64Session ID derived from handshake
remote_static_pub: [u8; 32]The remote peer’s Noise static public key (X25519). 32 bytes
of public material extracted from the handshake before
transitioning into transport mode. Load-bearing for the
identity-envelope path in daemon migration: the source seals
the daemon’s ed25519 seed to this key, knowing the only
party that can unseal it is the peer whose static private
key completed this handshake. [0; 32] is a sentinel for
“not available” — some test paths construct SessionKeys
directly and don’t go through a real handshake.
Trait Implementations§
Source§impl Clone for SessionKeys
impl Clone for SessionKeys
Source§fn clone(&self) -> SessionKeys
fn clone(&self) -> SessionKeys
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for SessionKeys
impl RefUnwindSafe for SessionKeys
impl Send for SessionKeys
impl Sync for SessionKeys
impl Unpin for SessionKeys
impl UnsafeUnpin for SessionKeys
impl UnwindSafe for SessionKeys
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