Enum libp2p_core::identity::PublicKey[][src]

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.

A public RSA key.

Secp256k1(PublicKey)

A public Secp256k1 key.

Implementations

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]

impl Debug for PublicKey[src]

impl Eq for PublicKey[src]

impl From<PublicKey> for PeerId[src]

impl PartialEq<PublicKey> for PublicKey[src]

impl StructuralEq for PublicKey[src]

impl StructuralPartialEq for PublicKey[src]

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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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