pub trait AsymmetricVault {
    fn ec_diffie_hellman<'life0, 'life1, 'life2, 'async_trait>(
        &'life0 self,
        secret: &'life1 KeyId,
        peer_public_key: &'life2 PublicKey
    ) -> Pin<Box<dyn Future<Output = Result<KeyId>> + Send + 'async_trait>>
   where
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        Self: 'async_trait
; fn compute_key_id_for_public_key<'life0, 'life1, 'async_trait>(
        &'life0 self,
        public_key: &'life1 PublicKey
    ) -> Pin<Box<dyn Future<Output = Result<KeyId>> + Send + 'async_trait>>
   where
        'life0: 'async_trait,
        'life1: 'async_trait,
        Self: 'async_trait
; }
Expand description

Defines the Vault interface for asymmetric encryption.

Required Methods

Compute Elliptic-Curve Diffie-Hellman using this secret key and the specified uncompressed public key.

Compute and return the KeyId for a given public key.

Implementors