Struct sc_keystore::LocalKeystore
source · [−]pub struct LocalKeystore(_);
Expand description
A local based keystore that is either memory-based or filesystem-based.
Implementations
sourceimpl LocalKeystore
impl LocalKeystore
Trait Implementations
sourceimpl CryptoStore for LocalKeystore
impl CryptoStore for LocalKeystore
sourcefn keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId
) -> Pin<Box<dyn Future<Output = Result<Vec<CryptoTypePublicPair>, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId
) -> Pin<Box<dyn Future<Output = Result<Vec<CryptoTypePublicPair>, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
List all supported keys Read more
sourcefn sr25519_public_keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId
) -> Pin<Box<dyn Future<Output = Vec<Public>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn sr25519_public_keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId
) -> Pin<Box<dyn Future<Output = Vec<Public>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Returns all sr25519 public keys for the given key type.
sourcefn sr25519_generate_new<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
seed: Option<&'life1 str>
) -> Pin<Box<dyn Future<Output = Result<Public, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn sr25519_generate_new<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
seed: Option<&'life1 str>
) -> Pin<Box<dyn Future<Output = Result<Public, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Generate a new sr25519 key pair for the given key type and an optional seed. Read more
sourcefn ed25519_public_keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId
) -> Pin<Box<dyn Future<Output = Vec<Public>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn ed25519_public_keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId
) -> Pin<Box<dyn Future<Output = Vec<Public>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Returns all ed25519 public keys for the given key type.
sourcefn ed25519_generate_new<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
seed: Option<&'life1 str>
) -> Pin<Box<dyn Future<Output = Result<Public, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn ed25519_generate_new<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
seed: Option<&'life1 str>
) -> Pin<Box<dyn Future<Output = Result<Public, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Generate a new ed25519 key pair for the given key type and an optional seed. Read more
sourcefn ecdsa_public_keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId
) -> Pin<Box<dyn Future<Output = Vec<Public>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn ecdsa_public_keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId
) -> Pin<Box<dyn Future<Output = Vec<Public>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Returns all ecdsa public keys for the given key type.
sourcefn ecdsa_generate_new<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
seed: Option<&'life1 str>
) -> Pin<Box<dyn Future<Output = Result<Public, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn ecdsa_generate_new<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
seed: Option<&'life1 str>
) -> Pin<Box<dyn Future<Output = Result<Public, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Generate a new ecdsa key pair for the given key type and an optional seed. Read more
sourcefn insert_unknown<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
id: KeyTypeId,
suri: &'life1 str,
public: &'life2 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), ()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn insert_unknown<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
id: KeyTypeId,
suri: &'life1 str,
public: &'life2 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), ()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Insert a new key. This doesn’t require any known of the crypto; but a public key must be manually provided. Read more
sourcefn has_keys<'life0, 'life1, 'async_trait>(
&'life0 self,
public_keys: &'life1 [(Vec<u8>, KeyTypeId)]
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn has_keys<'life0, 'life1, 'async_trait>(
&'life0 self,
public_keys: &'life1 [(Vec<u8>, KeyTypeId)]
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Checks if the private keys for the given public key and key type combinations exist. Read more
sourcefn supported_keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>
) -> Pin<Box<dyn Future<Output = Result<Vec<CryptoTypePublicPair>, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn supported_keys<'life0, 'async_trait>(
&'life0 self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>
) -> Pin<Box<dyn Future<Output = Result<Vec<CryptoTypePublicPair>, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Find intersection between provided keys and supported keys Read more
sourcefn sign_with<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
id: KeyTypeId,
key: &'life1 CryptoTypePublicPair,
msg: &'life2 [u8]
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn sign_with<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
id: KeyTypeId,
key: &'life1 CryptoTypePublicPair,
msg: &'life2 [u8]
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Sign with key Read more
sourcefn sr25519_vrf_sign<'life0, 'life1, 'async_trait>(
&'life0 self,
key_type: KeyTypeId,
public: &'life1 Public,
transcript_data: VRFTranscriptData
) -> Pin<Box<dyn Future<Output = Result<VRFSignature, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn sr25519_vrf_sign<'life0, 'life1, 'async_trait>(
&'life0 self,
key_type: KeyTypeId,
public: &'life1 Public,
transcript_data: VRFTranscriptData
) -> Pin<Box<dyn Future<Output = Result<VRFSignature, TraitError>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Generate VRF signature for given transcript data. Read more
sourcefn sign_with_any<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair, Global>,
msg: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(CryptoTypePublicPair, Vec<u8, Global>), Error>> + Send + 'async_trait, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn sign_with_any<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair, Global>,
msg: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(CryptoTypePublicPair, Vec<u8, Global>), Error>> + Send + 'async_trait, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Sign with any key Read more
sourcefn sign_with_all<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair, Global>,
msg: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<Vec<Result<Vec<u8, Global>, Error>, Global>, ()>> + Send + 'async_trait, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn sign_with_all<'life0, 'life1, 'async_trait>(
&'life0 self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair, Global>,
msg: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<Vec<Result<Vec<u8, Global>, Error>, Global>, ()>> + Send + 'async_trait, Global>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Sign with all keys Read more
sourceimpl Into<Arc<dyn CryptoStore + 'static>> for LocalKeystore
impl Into<Arc<dyn CryptoStore + 'static>> for LocalKeystore
sourcefn into(self) -> Arc<dyn CryptoStore>
fn into(self) -> Arc<dyn CryptoStore>
Performs the conversion.
sourceimpl Into<Arc<dyn SyncCryptoStore + 'static>> for LocalKeystore
impl Into<Arc<dyn SyncCryptoStore + 'static>> for LocalKeystore
sourcefn into(self) -> SyncCryptoStorePtr
fn into(self) -> SyncCryptoStorePtr
Performs the conversion.
sourceimpl SyncCryptoStore for LocalKeystore
impl SyncCryptoStore for LocalKeystore
sourcefn keys(&self, id: KeyTypeId) -> Result<Vec<CryptoTypePublicPair>, TraitError>
fn keys(&self, id: KeyTypeId) -> Result<Vec<CryptoTypePublicPair>, TraitError>
List all supported keys Read more
sourcefn supported_keys(
&self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>
) -> Result<Vec<CryptoTypePublicPair>, TraitError>
fn supported_keys(
&self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>
) -> Result<Vec<CryptoTypePublicPair>, TraitError>
Find intersection between provided keys and supported keys Read more
sourcefn sign_with(
&self,
id: KeyTypeId,
key: &CryptoTypePublicPair,
msg: &[u8]
) -> Result<Vec<u8>, TraitError>
fn sign_with(
&self,
id: KeyTypeId,
key: &CryptoTypePublicPair,
msg: &[u8]
) -> Result<Vec<u8>, TraitError>
Sign with key Read more
sourcefn sr25519_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
fn sr25519_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
Returns all sr25519 public keys for the given key type.
sourcefn sr25519_generate_new(
&self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
fn sr25519_generate_new(
&self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
Generate a new sr25519 key pair for the given key type and an optional seed. Read more
sourcefn ed25519_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
fn ed25519_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
Returns all ed25519 public keys for the given key type.
sourcefn ed25519_generate_new(
&self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
fn ed25519_generate_new(
&self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
Generate a new ed25519 key pair for the given key type and an optional seed. Read more
sourcefn ecdsa_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
fn ecdsa_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
Returns all ecdsa public keys for the given key type.
sourcefn ecdsa_generate_new(
&self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
fn ecdsa_generate_new(
&self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
Generate a new ecdsa key pair for the given key type and an optional seed. Read more
sourcefn insert_unknown(
&self,
key_type: KeyTypeId,
suri: &str,
public: &[u8]
) -> Result<(), ()>
fn insert_unknown(
&self,
key_type: KeyTypeId,
suri: &str,
public: &[u8]
) -> Result<(), ()>
Insert a new key. This doesn’t require any known of the crypto; but a public key must be manually provided. Read more
sourcefn has_keys(&self, public_keys: &[(Vec<u8>, KeyTypeId)]) -> bool
fn has_keys(&self, public_keys: &[(Vec<u8>, KeyTypeId)]) -> bool
Checks if the private keys for the given public key and key type combinations exist. Read more
sourcefn sr25519_vrf_sign(
&self,
key_type: KeyTypeId,
public: &Sr25519Public,
transcript_data: VRFTranscriptData
) -> Result<VRFSignature, TraitError>
fn sr25519_vrf_sign(
&self,
key_type: KeyTypeId,
public: &Sr25519Public,
transcript_data: VRFTranscriptData
) -> Result<VRFSignature, TraitError>
Generate VRF signature for given transcript data. Read more
Auto Trait Implementations
impl !RefUnwindSafe for LocalKeystore
impl Send for LocalKeystore
impl Sync for LocalKeystore
impl Unpin for LocalKeystore
impl UnwindSafe for LocalKeystore
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
sourceimpl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
sourcepub fn unchecked_into(self) -> T
pub fn unchecked_into(self) -> T
The counterpart to unchecked_from
.