[][src]Enum libp2p_core::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 Eq for PublicKey[src]

impl PartialEq<PublicKey> for PublicKey[src]

impl Clone for PublicKey[src]

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

Performs copy-assignment from source. Read more

impl From<PublicKey> for PeerId[src]

impl Debug 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, U> Into<U> for T where
    U: From<T>, 
[src]

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

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<T> BorrowMut<T> for T where
    T: ?Sized
[src]

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

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

impl<T> Same<T> for T

type Output = T

Should always be Self