Struct core_crypto::prelude::MlsCryptoProvider
source · pub struct MlsCryptoProvider { /* private fields */ }
Implementations§
source§impl MlsCryptoProvider
impl MlsCryptoProvider
sourcepub async fn try_new_with_configuration(
config: MlsCryptoProviderConfiguration<'_>,
) -> Result<MlsCryptoProvider, MlsProviderError>
pub async fn try_new_with_configuration( config: MlsCryptoProviderConfiguration<'_>, ) -> Result<MlsCryptoProvider, MlsProviderError>
Initialize a CryptoProvider with a backend following the provided config
(see: MlsCryptoProviderConfiguration)
pub async fn try_new( db_path: impl AsRef<str>, identity_key: impl AsRef<str>, ) -> Result<MlsCryptoProvider, MlsProviderError>
pub async fn try_new_in_memory( identity_key: impl AsRef<str>, ) -> Result<MlsCryptoProvider, MlsProviderError>
sourcepub fn new_with_store(
key_store: Connection,
entropy_seed: Option<EntropySeed>,
) -> MlsCryptoProvider
pub fn new_with_store( key_store: Connection, entropy_seed: Option<EntropySeed>, ) -> MlsCryptoProvider
Initialize a CryptoProvided with an already-configured backing store
sourcepub async fn update_pki_env(
&self,
pki_env: PkiEnvironment,
) -> Result<(), MlsProviderError>
pub async fn update_pki_env( &self, pki_env: PkiEnvironment, ) -> Result<(), MlsProviderError>
Replaces the PKI env currently in place
sourcepub async fn is_pki_env_setup(&self) -> bool
pub async fn is_pki_env_setup(&self) -> bool
Returns whether we have a PKI env setup
sourcepub fn reseed(&mut self, entropy_seed: Option<EntropySeed>)
pub fn reseed(&mut self, entropy_seed: Option<EntropySeed>)
Reseeds the internal CSPRNG entropy pool with a brand new one.
If None is provided, the new entropy will be pulled through the current OS target’s capabilities
sourcepub async fn close(self) -> Result<(), MlsProviderError>
pub async fn close(self) -> Result<(), MlsProviderError>
Closes this provider, which in turns tears down the backing store
Note: This does not destroy the data on-disk in case of persistent backing store
sourcepub async fn destroy_and_reset(self) -> Result<(), MlsProviderError>
pub async fn destroy_and_reset(self) -> Result<(), MlsProviderError>
Tears down this provider and obliterates every single piece of data stored on disk.
you have been warned
sourcepub fn borrow_keystore(&self) -> &Connection
pub fn borrow_keystore(&self) -> &Connection
Borrow keystore
pub fn borrow_keystore_mut(&mut self) -> &mut Connection
sourcepub fn unwrap_keystore(self) -> Connection
pub fn unwrap_keystore(self) -> Connection
Allows to retrieve the underlying key store directly
Trait Implementations§
source§impl Debug for MlsCryptoProvider
impl Debug for MlsCryptoProvider
source§impl OpenMlsCryptoProvider for MlsCryptoProvider
impl OpenMlsCryptoProvider for MlsCryptoProvider
type CryptoProvider = RustCrypto
type RandProvider = RustCrypto
type KeyStoreProvider = Connection
type AuthenticationServiceProvider = PkiEnvironmentProvider
source§fn crypto(
&self,
) -> &<MlsCryptoProvider as OpenMlsCryptoProvider>::CryptoProvider
fn crypto( &self, ) -> &<MlsCryptoProvider as OpenMlsCryptoProvider>::CryptoProvider
Get the crypto provider.
source§fn rand(&self) -> &<MlsCryptoProvider as OpenMlsCryptoProvider>::RandProvider
fn rand(&self) -> &<MlsCryptoProvider as OpenMlsCryptoProvider>::RandProvider
Get the randomness provider.
source§fn key_store(
&self,
) -> &<MlsCryptoProvider as OpenMlsCryptoProvider>::KeyStoreProvider
fn key_store( &self, ) -> &<MlsCryptoProvider as OpenMlsCryptoProvider>::KeyStoreProvider
Get the key store provider.
source§fn authentication_service(
&self,
) -> &<MlsCryptoProvider as OpenMlsCryptoProvider>::AuthenticationServiceProvider
fn authentication_service( &self, ) -> &<MlsCryptoProvider as OpenMlsCryptoProvider>::AuthenticationServiceProvider
Get the authentication service
Auto Trait Implementations§
impl !Freeze for MlsCryptoProvider
impl !RefUnwindSafe for MlsCryptoProvider
impl Send for MlsCryptoProvider
impl Sync for MlsCryptoProvider
impl Unpin for MlsCryptoProvider
impl !UnwindSafe for MlsCryptoProvider
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
Create a new handle for an Arc value Read more
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
Clone a handle Read more
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Consume a handle, getting back the initial
Arc<>
Read moresource§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more