[−][src]Struct sc_keystore::Store
Key store.
Stores key pairs in a file system store + short lived key pairs in memory.
Every pair that is being generated by a seed
, will be placed in memory.
Implementations
impl Store
[src]
pub fn open<T: Into<PathBuf>>(
path: T,
password: Option<SecretString>
) -> Result<KeyStorePtr>
[src]
path: T,
password: Option<SecretString>
) -> Result<KeyStorePtr>
Open the store at the given path.
Optionally takes a password that will be used to encrypt/decrypt the keys.
pub fn new_in_memory() -> KeyStorePtr
[src]
Create a new in-memory store.
pub fn insert_by_type<Pair: PairT>(
&self,
key_type: KeyTypeId,
suri: &str
) -> Result<Pair>
[src]
&self,
key_type: KeyTypeId,
suri: &str
) -> Result<Pair>
Insert a new key.
Places it into the file system store.
pub fn insert<Pair: AppPair>(&self, suri: &str) -> Result<Pair>
[src]
Insert a new key.
Places it into the file system store.
pub fn generate_by_type<Pair: PairT>(&self, key_type: KeyTypeId) -> Result<Pair>
[src]
Generate a new key.
Places it into the file system store.
pub fn generate<Pair: AppPair>(&self) -> Result<Pair>
[src]
Generate a new key.
Places it into the file system store.
pub fn insert_ephemeral_from_seed_by_type<Pair: PairT>(
&mut self,
seed: &str,
key_type: KeyTypeId
) -> Result<Pair>
[src]
&mut self,
seed: &str,
key_type: KeyTypeId
) -> Result<Pair>
Create a new key from seed.
Does not place it into the file system store.
pub fn insert_ephemeral_from_seed<Pair: AppPair>(
&mut self,
seed: &str
) -> Result<Pair>
[src]
&mut self,
seed: &str
) -> Result<Pair>
Create a new key from seed.
Does not place it into the file system store.
pub fn key_pair_by_type<Pair: PairT>(
&self,
public: &Pair::Public,
key_type: KeyTypeId
) -> Result<Pair>
[src]
&self,
public: &Pair::Public,
key_type: KeyTypeId
) -> Result<Pair>
Get a key pair for the given public key and key type.
pub fn key_pair<Pair: AppPair>(
&self,
public: &<Pair as AppKey>::Public
) -> Result<Pair>
[src]
&self,
public: &<Pair as AppKey>::Public
) -> Result<Pair>
Get a key pair for the given public key.
pub fn public_keys<Public: AppPublic>(&self) -> Result<Vec<Public>>
[src]
Get public keys of all stored keys that match the key type.
This will just use the type of the public key (a list of which to be returned) in order to determine the key type. Unless you use a specialized application-type public key, then this only give you keys registered under generic cryptography, and will not return keys registered under the application type.
Trait Implementations
impl BareCryptoStore for Store
[src]
fn keys(&self, id: KeyTypeId) -> Result<Vec<CryptoTypePublicPair>, TraitError>
[src]
fn supported_keys(
&self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>
) -> Result<Vec<CryptoTypePublicPair>, TraitError>
[src]
&self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>
) -> Result<Vec<CryptoTypePublicPair>, TraitError>
fn sign_with(
&self,
id: KeyTypeId,
key: &CryptoTypePublicPair,
msg: &[u8]
) -> Result<Vec<u8>, TraitError>
[src]
&self,
id: KeyTypeId,
key: &CryptoTypePublicPair,
msg: &[u8]
) -> Result<Vec<u8>, TraitError>
fn sr25519_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>
[src]
fn sr25519_generate_new(
&mut self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
[src]
&mut self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
fn ed25519_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>
[src]
fn ed25519_generate_new(
&mut self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
[src]
&mut self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
fn ecdsa_public_keys(&self, key_type: KeyTypeId) -> Vec<Public>
[src]
fn ecdsa_generate_new(
&mut self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
[src]
&mut self,
id: KeyTypeId,
seed: Option<&str>
) -> Result<Public, TraitError>
fn insert_unknown(
&mut self,
key_type: KeyTypeId,
suri: &str,
public: &[u8]
) -> Result<(), ()>
[src]
&mut self,
key_type: KeyTypeId,
suri: &str,
public: &[u8]
) -> Result<(), ()>
fn password(&self) -> Option<&str>
[src]
fn has_keys(&self, public_keys: &[(Vec<u8>, KeyTypeId)]) -> bool
[src]
fn sr25519_vrf_sign(
&self,
key_type: KeyTypeId,
public: &Sr25519Public,
transcript_data: VRFTranscriptData<'_>
) -> Result<VRFSignature, TraitError>
[src]
&self,
key_type: KeyTypeId,
public: &Sr25519Public,
transcript_data: VRFTranscriptData<'_>
) -> Result<VRFSignature, TraitError>
fn sign_with_any(
&self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>,
msg: &[u8]
) -> Result<(CryptoTypePublicPair, Vec<u8>), Error>
[src]
&self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>,
msg: &[u8]
) -> Result<(CryptoTypePublicPair, Vec<u8>), Error>
fn sign_with_all(
&self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>,
msg: &[u8]
) -> Result<Vec<Result<Vec<u8>, Error>>, ()>
[src]
&self,
id: KeyTypeId,
keys: Vec<CryptoTypePublicPair>,
msg: &[u8]
) -> Result<Vec<Result<Vec<u8>, Error>>, ()>
Auto Trait Implementations
impl RefUnwindSafe for Store
impl Send for Store
impl Sync for Store
impl Unpin for Store
impl UnwindSafe for Store
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
[src]
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
fn from_ref(outer: &Outer) -> &T
[src]
Get a reference to the inner from the outer.
fn from_mut(outer: &mut Outer) -> &mut T
[src]
Get a mutable reference to the inner from the outer.
impl<T> MaybeRefUnwindSafe for T where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
[src]
T: UncheckedFrom<S>,
fn unchecked_into(self) -> T
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,