[][src]Trait sp_application_crypto::RuntimePublic

pub trait RuntimePublic: Sized {
    type Signature: Codec + Debug + MaybeHash + Eq + PartialEq + Clone;
    pub fn all(key_type: KeyTypeId) -> Vec<Self>;
pub fn generate_pair(key_type: KeyTypeId, seed: Option<Vec<u8>>) -> Self;
pub fn sign<M: AsRef<[u8]>>(
        &self,
        key_type: KeyTypeId,
        msg: &M
    ) -> Option<Self::Signature>;
pub fn verify<M: AsRef<[u8]>>(
        &self,
        msg: &M,
        signature: &Self::Signature
    ) -> bool;
pub fn to_raw_vec(&self) -> Vec<u8>; }

A runtime interface for a public key.

Associated Types

type Signature: Codec + Debug + MaybeHash + Eq + PartialEq + Clone[src]

The signature that will be generated when signing with the corresponding private key.

Loading content...

Required methods

pub fn all(key_type: KeyTypeId) -> Vec<Self>[src]

Returns all public keys for the given key type in the keystore.

pub fn generate_pair(key_type: KeyTypeId, seed: Option<Vec<u8>>) -> Self[src]

Generate a public/private pair for the given key type with an optional seed and store it in the keystore.

The seed needs to be valid utf8.

Returns the generated public key.

pub fn sign<M: AsRef<[u8]>>(
    &self,
    key_type: KeyTypeId,
    msg: &M
) -> Option<Self::Signature>
[src]

Sign the given message with the corresponding private key of this public key.

The private key will be requested from the keystore using the given key type.

Returns the signature or None if the private key could not be found or some other error occurred.

pub fn verify<M: AsRef<[u8]>>(
    &self,
    msg: &M,
    signature: &Self::Signature
) -> bool
[src]

Verify that the given signature matches the given message using this public key.

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

Returns Self as raw vec.

Loading content...

Implementors

impl RuntimePublic for sp_application_crypto::ecdsa::Public[src]

type Signature = Signature

impl RuntimePublic for sp_application_crypto::ed25519::Public[src]

type Signature = Signature

impl RuntimePublic for sp_application_crypto::sr25519::Public[src]

type Signature = Signature

Loading content...