[][src]Struct tapir_cwtch::primitives::identity::Identity

pub struct Identity { /* fields omitted */ }

Identity - An ed25519 keypair, required for established a Tor v3 onion service and used to maintain a consistent cryptographic identity for a peer.

Implementations

impl Identity[src]

pub fn initialize(keypair: Keypair) -> Arc<Identity>[src]

Initialize a persistent identity

pub fn initialize_ephemeral_identity() -> Identity[src]

Initialize an ephemeral identity - used for both ephemeral diffie hellman key exchanges in addition to anonymous primitives connections to various onion services.

pub fn public_key(&self) -> PublicKey[src]

pub fn hostname(&self) -> String[src]

pub fn edh(&self, remote_pub_key: PublicKey) -> SharedSecret[src]

Perform a diffie hellman exchange between self and the remote_pub_key Implementation: this method converts the secret key of self into a StaticSecret and the remote_pub_key into a x25519_dalek::PublicKey such that they can be used as part of the exchange. This is used as part of the ephemeral diffie hellman 3-way exchange.

Auto Trait Implementations

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>,