pub trait IdentityProvider: Send + Sync {
// Required method
fn identity<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IdentityKeyPair> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
// Provided method
fn fingerprint<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IdentityFingerprint> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait { ... }
}Expand description
Provides a cryptographic identity for the current client.
For the device group, this should be one shared identity, for the single-device, a unique identity. This should be generated on first run and stored persistently, in secure storage where possible.
Required Methods§
Provided Methods§
Sourcefn fingerprint<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IdentityFingerprint> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fingerprint<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = IdentityFingerprint> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get the fingerprint of this identity