[][src]Enum susyp2p::identity::PublicKey

pub enum PublicKey {
    Ed25519(PublicKey),
    Rsa(PublicKey),
    Secp256k1(PublicKey),
}

The public key of a node's identity keypair.

Variants

Ed25519(PublicKey)

A public Ed25519 key.

Rsa(PublicKey)

A public RSA key.

Secp256k1(PublicKey)

A public Secp256k1 key.

Methods

impl PublicKey[src]

pub fn verify(&self, msg: &[u8], sig: &[u8]) -> bool[src]

Verify a signature for a message using this public key, i.e. check that the signature has been produced by the corresponding private key (authenticity), and that the message has not been tampered with (integrity).

pub fn into_protobuf_encoding(self) -> Vec<u8>[src]

Encode the public key into a protobuf structure for storage or exchange with other nodes.

pub fn from_protobuf_encoding(bytes: &[u8]) -> Result<PublicKey, DecodingError>[src]

Decode a public key from a protobuf structure, e.g. read from storage or received from another node.

pub fn into_peer_id(self) -> PeerId[src]

Convert the PublicKey into the corresponding PeerId.

Trait Implementations

impl Clone for PublicKey[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Eq for PublicKey[src]

impl From<PublicKey> for PeerId[src]

impl Debug for PublicKey[src]

impl PartialEq<PublicKey> for PublicKey[src]

Auto Trait Implementations

impl Send for PublicKey

impl Sync for PublicKey

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto 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<T> Borrow for T where
    T: ?Sized
[src]

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

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

impl<T> Same for T

type Output = T

Should always be Self

impl<T> Erased for T

impl<T> Erased for T

impl<T> Typeable for T where
    T: Any

fn get_type(&self) -> TypeId

Get the TypeId of this object.