[−][src]Trait sp_runtime::RuntimeAppPublic
A runtime interface for an application's public key.
Associated Types
type Signature: MaybeHash + Clone + PartialEq<Self::Signature> + Eq + Debug + Codec
The signature that will be generated when signing with the corresponding private key.
Associated Constants
const ID: KeyTypeId
An identifier for this application-specific key type.
const CRYPTO_ID: CryptoTypeId
The identifier of the crypto type of this application-specific key type.
Required methods
fn all() -> Vec<Self>
Returns all public keys for this application in the keystore.
fn generate_pair(seed: Option<Vec<u8>>) -> Self
Generate a public/private pair with an optional seed
and store it in the keystore.
The seed
needs to be valid utf8.
Returns the generated public key.
fn sign<M>(&self, msg: &M) -> Option<Self::Signature> where
M: AsRef<[u8]>,
M: AsRef<[u8]>,
Sign the given message with the corresponding private key of this public key.
The private key will be requested from the keystore.
Returns the signature or None
if the private key could not be found or some other error
occurred.
fn verify<M>(&self, msg: &M, signature: &Self::Signature) -> bool where
M: AsRef<[u8]>,
M: AsRef<[u8]>,
Verify that the given signature matches the given message using this public key.
fn to_raw_vec(&self) -> Vec<u8>
Returns Self
as raw vec.
Implementations on Foreign Types
impl RuntimeAppPublic for Public where
Public: RuntimePublic,
<Public as RuntimePublic>::Signature == Signature,
[src]
Public: RuntimePublic,
<Public as RuntimePublic>::Signature == Signature,
const ID: KeyTypeId
[src]
const CRYPTO_ID: CryptoTypeId
[src]
type Signature = Signature
fn all() -> Vec<Public>
[src]
fn generate_pair(seed: Option<Vec<u8>>) -> Public
[src]
fn sign<M>(&self, msg: &M) -> Option<<Public as RuntimeAppPublic>::Signature> where
M: AsRef<[u8]>,
[src]
M: AsRef<[u8]>,
fn verify<M>(
&self,
msg: &M,
signature: &<Public as RuntimeAppPublic>::Signature
) -> bool where
M: AsRef<[u8]>,
[src]
&self,
msg: &M,
signature: &<Public as RuntimeAppPublic>::Signature
) -> bool where
M: AsRef<[u8]>,
fn to_raw_vec(&self) -> Vec<u8>
[src]
impl RuntimeAppPublic for Public where
Public: RuntimePublic,
<Public as RuntimePublic>::Signature == Signature,
[src]
Public: RuntimePublic,
<Public as RuntimePublic>::Signature == Signature,
const ID: KeyTypeId
[src]
const CRYPTO_ID: CryptoTypeId
[src]
type Signature = Signature
fn all() -> Vec<Public>
[src]
fn generate_pair(seed: Option<Vec<u8>>) -> Public
[src]
fn sign<M>(&self, msg: &M) -> Option<<Public as RuntimeAppPublic>::Signature> where
M: AsRef<[u8]>,
[src]
M: AsRef<[u8]>,
fn verify<M>(
&self,
msg: &M,
signature: &<Public as RuntimeAppPublic>::Signature
) -> bool where
M: AsRef<[u8]>,
[src]
&self,
msg: &M,
signature: &<Public as RuntimeAppPublic>::Signature
) -> bool where
M: AsRef<[u8]>,
fn to_raw_vec(&self) -> Vec<u8>
[src]
impl RuntimeAppPublic for Public where
Public: RuntimePublic,
<Public as RuntimePublic>::Signature == Signature,
[src]
Public: RuntimePublic,
<Public as RuntimePublic>::Signature == Signature,
const ID: KeyTypeId
[src]
const CRYPTO_ID: CryptoTypeId
[src]
type Signature = Signature
fn all() -> Vec<Public>
[src]
fn generate_pair(seed: Option<Vec<u8>>) -> Public
[src]
fn sign<M>(&self, msg: &M) -> Option<<Public as RuntimeAppPublic>::Signature> where
M: AsRef<[u8]>,
[src]
M: AsRef<[u8]>,
fn verify<M>(
&self,
msg: &M,
signature: &<Public as RuntimeAppPublic>::Signature
) -> bool where
M: AsRef<[u8]>,
[src]
&self,
msg: &M,
signature: &<Public as RuntimeAppPublic>::Signature
) -> bool where
M: AsRef<[u8]>,