pub trait KekSource:
Send
+ Sync
+ 'static {
// Required methods
fn load_keyring(
&self,
) -> Pin<Box<dyn Future<Output = Result<Vec<(KeyId, Vec<DataKey>)>, CryptoError>> + Send + '_>>;
fn provision(
&self,
id: &KeyId,
) -> Pin<Box<dyn Future<Output = Result<DataKey, CryptoError>> + Send + '_>>;
fn destroy(
&self,
id: &KeyId,
) -> Pin<Box<dyn Future<Output = Result<(), CryptoError>> + Send + '_>>;
}Required Methods§
Sourcefn load_keyring(
&self,
) -> Pin<Box<dyn Future<Output = Result<Vec<(KeyId, Vec<DataKey>)>, CryptoError>> + Send + '_>>
fn load_keyring( &self, ) -> Pin<Box<dyn Future<Output = Result<Vec<(KeyId, Vec<DataKey>)>, CryptoError>> + Send + '_>>
Unwrap and return every (key, all live versions) pair. Called once at boot; the result seeds the in-memory ring.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".