[][src]Enum libp2p_noise::handshake::RemoteIdentity

pub enum RemoteIdentity<C> {
    Unknown,
    StaticDhKey(PublicKey<C>),
    IdentityKey(PublicKey),
}

The identity of the remote established during a handshake.

Variants

Unknown

The remote provided no identifying information.

The identity of the remote is unknown and must be obtained through a different, out-of-band channel.

StaticDhKey(PublicKey<C>)

The remote provided a static DH public key.

The static DH public key is authentic in the sense that a successful handshake implies that the remote possesses a corresponding secret key.

Note: To rule out active attacks like a MITM, trust in the public key must still be established, e.g. by comparing the key against an expected or otherwise known public key.

IdentityKey(PublicKey)

The remote provided a public identity key in addition to a static DH public key and the latter is authentic w.r.t. the former.

Note: To rule out active attacks like a MITM, trust in the public key must still be established, e.g. by comparing the key against an expected or otherwise known public key.

Auto Trait Implementations

impl<C> RefUnwindSafe for RemoteIdentity<C> where
    C: RefUnwindSafe

impl<C> Send for RemoteIdentity<C> where
    C: Send

impl<C> Sync for RemoteIdentity<C> where
    C: Sync

impl<C> Unpin for RemoteIdentity<C> where
    C: Unpin

impl<C> UnwindSafe for RemoteIdentity<C> where
    C: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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