[]Enum ipfs::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.

Implementations

impl PublicKey

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

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>

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>

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

Convert the PublicKey into the corresponding PeerId.

Trait Implementations

impl Clone for PublicKey

impl Debug for PublicKey

impl Eq for PublicKey

impl From<PublicKey> for PeerId

impl PartialEq<PublicKey> for PublicKey

impl StructuralEq for PublicKey

impl StructuralPartialEq for PublicKey

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

impl<T> WithSubscriber for T[src]