Struct holochain::prelude::kitsune_p2p::dependencies::kitsune_p2p_types::dependencies::lair_keystore_api::prelude::LairStore
pub struct LairStore(pub Arc<dyn AsLairStore + 'static>);
Expand description
A handle to a running lair keystore backend persistance instance. Allows storing, listing, and retrieving keystore secrets.
Tuple Fields§
§0: Arc<dyn AsLairStore + 'static>
Implementations§
§impl LairStore
impl LairStore
pub fn get_bidi_ctx_key(&self) -> BufReadSized<32>
pub fn get_bidi_ctx_key(&self) -> BufReadSized<32>
Return the context key for both encryption and decryption of secret data within the store that is NOT deep_locked.
pub fn insert_seed(
&self,
seed: BufReadSized<32>,
tag: Arc<str>,
exportable: bool
) -> impl Future<Output = Result<SeedInfo, OneErr>> + Send + 'static
pub fn insert_seed(
&self,
seed: BufReadSized<32>,
tag: Arc<str>,
exportable: bool
) -> impl Future<Output = Result<SeedInfo, OneErr>> + Send + 'static
Inject a pre-generated seed, and associate it with the given tag, returning the seed_info derived from the generated seed.
pub fn new_seed(
&self,
tag: Arc<str>,
exportable: bool
) -> impl Future<Output = Result<SeedInfo, OneErr>> + Send + 'static
pub fn new_seed(
&self,
tag: Arc<str>,
exportable: bool
) -> impl Future<Output = Result<SeedInfo, OneErr>> + Send + 'static
Generate a new cryptographically secure random seed, and associate it with the given tag, returning the seed_info derived from the generated seed.
pub fn insert_deep_locked_seed(
&self,
seed: BufReadSized<32>,
tag: Arc<str>,
ops_limit: u32,
mem_limit: u32,
deep_lock_passphrase: BufReadSized<64>,
exportable: bool
) -> impl Future<Output = Result<SeedInfo, OneErr>> + Send + 'static
pub fn insert_deep_locked_seed(
&self,
seed: BufReadSized<32>,
tag: Arc<str>,
ops_limit: u32,
mem_limit: u32,
deep_lock_passphrase: BufReadSized<64>,
exportable: bool
) -> impl Future<Output = Result<SeedInfo, OneErr>> + Send + 'static
Inject a pre-generated seed, and associate it with the given tag, returning the seed_info derived from the generated seed. This seed is deep_locked, meaning it needs an additional runtime passphrase to be decrypted / used.
pub fn new_deep_locked_seed(
&self,
tag: Arc<str>,
ops_limit: u32,
mem_limit: u32,
deep_lock_passphrase: BufReadSized<64>,
exportable: bool
) -> impl Future<Output = Result<SeedInfo, OneErr>> + Send + 'static
pub fn new_deep_locked_seed(
&self,
tag: Arc<str>,
ops_limit: u32,
mem_limit: u32,
deep_lock_passphrase: BufReadSized<64>,
exportable: bool
) -> impl Future<Output = Result<SeedInfo, OneErr>> + Send + 'static
Generate a new cryptographically secure random seed, and associate it with the given tag, returning the seed_info derived from the generated seed. This seed is deep_locked, meaning it needs an additional runtime passphrase to be decrypted / used.
pub fn new_wka_tls_cert(
&self,
tag: Arc<str>
) -> impl Future<Output = Result<CertInfo, OneErr>> + Send + 'static
pub fn new_wka_tls_cert(
&self,
tag: Arc<str>
) -> impl Future<Output = Result<CertInfo, OneErr>> + Send + 'static
Generate a new cryptographically secure random wka tls cert, and associate it with the given tag, returning the cert_info derived from the generated cert.
pub fn list_entries(
&self
) -> impl Future<Output = Result<Vec<LairEntryInfo, Global>, OneErr>> + Send + 'static
pub fn list_entries(
&self
) -> impl Future<Output = Result<Vec<LairEntryInfo, Global>, OneErr>> + Send + 'static
List the entries tracked by the lair store.
pub fn get_entry_by_tag(
&self,
tag: Arc<str>
) -> impl Future<Output = Result<Arc<LairEntryInner>, OneErr>> + Send + 'static
pub fn get_entry_by_tag(
&self,
tag: Arc<str>
) -> impl Future<Output = Result<Arc<LairEntryInner>, OneErr>> + Send + 'static
Get an entry from the lair store by tag.
pub fn get_entry_by_ed25519_pub_key(
&self,
ed25519_pub_key: BinDataSized<32>
) -> impl Future<Output = Result<Arc<LairEntryInner>, OneErr>> + Send + 'static
pub fn get_entry_by_ed25519_pub_key(
&self,
ed25519_pub_key: BinDataSized<32>
) -> impl Future<Output = Result<Arc<LairEntryInner>, OneErr>> + Send + 'static
Get an entry from the lair store by ed25519 pub key.
pub fn get_entry_by_x25519_pub_key(
&self,
x25519_pub_key: BinDataSized<32>
) -> impl Future<Output = Result<Arc<LairEntryInner>, OneErr>> + Send + 'static
pub fn get_entry_by_x25519_pub_key(
&self,
x25519_pub_key: BinDataSized<32>
) -> impl Future<Output = Result<Arc<LairEntryInner>, OneErr>> + Send + 'static
Get an entry from the lair store by x25519 pub key.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for LairStore
impl Send for LairStore
impl Sync for LairStore
impl Unpin for LairStore
impl !UnwindSafe for LairStore
Blanket Implementations§
§impl<T> Any for Twhere
T: Any + ?Sized,
impl<T> Any for Twhere
T: Any + ?Sized,
§fn type_id_compat(&self) -> TypeId
fn type_id_compat(&self) -> TypeId
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
§impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
§fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.