pub struct SqliteKyberPreKeyStore { /* private fields */ }Expand description
SQLite-backed Kyber post-quantum pre-key storage with data persistence
Implementations§
Trait Implementations§
Source§impl ExtendedKyberPreKeyStore for SqliteKyberPreKeyStore
impl ExtendedKyberPreKeyStore for SqliteKyberPreKeyStore
fn kyber_pre_key_count<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = usize> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn clear_all_kyber_pre_keys<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Box<dyn Error>>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_max_kyber_pre_key_id<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Option<u32>, Box<dyn Error>>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_kyber_pre_key<'life0, 'async_trait>(
&'life0 mut self,
id: KyberPreKeyId,
) -> Pin<Box<dyn Future<Output = Result<(), Box<dyn Error>>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_kyber_pre_keys_older_than<'life0, 'async_trait>(
&'life0 self,
timestamp_millis: u64,
) -> Pin<Box<dyn Future<Output = Result<Vec<KyberPreKeyId>, Box<dyn Error>>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl KyberPreKeyStore for SqliteKyberPreKeyStore
impl KyberPreKeyStore for SqliteKyberPreKeyStore
Source§fn get_kyber_pre_key<'life0, 'async_trait>(
&'life0 self,
kyber_prekey_id: KyberPreKeyId,
) -> Pin<Box<dyn Future<Output = Result<KyberPreKeyRecord, SignalProtocolError>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_kyber_pre_key<'life0, 'async_trait>(
&'life0 self,
kyber_prekey_id: KyberPreKeyId,
) -> Pin<Box<dyn Future<Output = Result<KyberPreKeyRecord, SignalProtocolError>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Look up the signed kyber pre-key corresponding to
kyber_prekey_id.Source§fn save_kyber_pre_key<'life0, 'life1, 'async_trait>(
&'life0 mut self,
kyber_prekey_id: KyberPreKeyId,
record: &'life1 KyberPreKeyRecord,
) -> Pin<Box<dyn Future<Output = Result<(), SignalProtocolError>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn save_kyber_pre_key<'life0, 'life1, 'async_trait>(
&'life0 mut self,
kyber_prekey_id: KyberPreKeyId,
record: &'life1 KyberPreKeyRecord,
) -> Pin<Box<dyn Future<Output = Result<(), SignalProtocolError>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Set the entry for
kyber_prekey_id to the value of record.Source§fn mark_kyber_pre_key_used<'life0, 'async_trait>(
&'life0 mut self,
kyber_prekey_id: KyberPreKeyId,
) -> Pin<Box<dyn Future<Output = Result<(), SignalProtocolError>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn mark_kyber_pre_key_used<'life0, 'async_trait>(
&'life0 mut self,
kyber_prekey_id: KyberPreKeyId,
) -> Pin<Box<dyn Future<Output = Result<(), SignalProtocolError>> + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Mark the entry for
kyber_prekey_id as “used”.
This would mean different things for one-time and last-resort Kyber keys.Auto Trait Implementations§
impl Freeze for SqliteKyberPreKeyStore
impl RefUnwindSafe for SqliteKyberPreKeyStore
impl Send for SqliteKyberPreKeyStore
impl Sync for SqliteKyberPreKeyStore
impl Unpin for SqliteKyberPreKeyStore
impl UnwindSafe for SqliteKyberPreKeyStore
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> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§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