pub trait Recipient {
// Required methods
fn key_id(&self) -> &KeyId;
async fn open(
&self,
request: &OpenRequest<'_>,
) -> Result<Zeroizing<Vec<u8>>, OpenError>;
}Expand description
Opens one COSE_Encrypt addressed to key_id(): ECDH-ES decapsulation +
HKDF-256 (COSE_KDF_Context) + content AEAD, returning zeroizing
plaintext.
A broker-backed impl forwards OpenRequest::cose_encrypt verbatim to the
broker unseal RPC; the local impl holds a Zeroizing X25519 private. A
successful open proves confidentiality, never sender identity. Sender
identity comes only from the outer COSE_Sign1.
Required Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".