Struct StatelessTransportState

Source
pub struct StatelessTransportState { /* private fields */ }
Expand description

A state machine encompassing the transport phase of a Noise session.

Implementations§

Source§

impl StatelessTransportState

Source

pub fn write_message(&self, nonce: u64, pt: &mut [u8]) -> [u8; 16]

Encrypts and authenticates a message using it’s sequence number.

To avoid messages being replayed, the caller must ensure that the nonce is never reused, and that the outgoing channel is rekeyed if the nonce equals u64::MAX.

Source

pub fn read_message( &self, nonce: u64, ct: &mut [u8], tag: [u8; 16], ) -> Result<(), ReadError>

Decrypts and authenticates a message using it’s sequence number.

To avoid messages being replayed, the caller must ensure that the nonce is never reused, and that the incoming channel is rekeyed if the nonce equals u64::MAX.

Source

pub fn rekey_incoming(&mut self)

Rekeys the incoming channel.

Source

pub fn rekey_outgoing(&mut self)

Rekeys the outgoing channel.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V