pub struct SharedSecret { /* private fields */ }Expand description
Raw shared secret from X25519 key exchange
This should be processed through HKDF to derive the actual session key. Never use the raw shared secret directly for encryption.
Implementations§
Sourcepub fn derive_session_key(
&self,
our_node_id: NodeId,
peer_node_id: NodeId,
) -> PeerSessionKey
pub fn derive_session_key( &self, our_node_id: NodeId, peer_node_id: NodeId, ) -> PeerSessionKey
Derive a session key for peer E2EE communication
Uses HKDF-SHA256 with the node IDs as salt to bind the key to this specific peer pair. The node IDs are sorted to ensure both peers derive the same key regardless of who initiated.
§Arguments
our_node_id- Our node identifierpeer_node_id- Peer’s node identifier
§Returns
A 32-byte session key suitable for ChaCha20-Poly1305
Trait Implementations§
Auto Trait Implementations§
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