[][src]Enum iprs::identity::PublicKey

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

The public key of a node's identity keypair.

Variants

Ed25519(PublicKey)
Secp256k1(PublicKey)

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) -> Result<Vec<u8>>[src]

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

pub fn from_protobuf_encoding(bytes: &[u8]) -> Result<PublicKey>[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) -> Result<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 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>,