pub trait KeyDecapsulationKey: Send + Sync {
// Required methods
fn algorithm(&self) -> KeyEncapsulationAlgorithm;
fn decapsulate(
&self,
ciphertext: &[u8],
) -> Result<Zeroizing<[u8; 32]>, ProviderError>;
// Provided method
fn provider_binding(&self) -> Option<&ProviderBinding> { ... }
}Expand description
Opaque recipient private key. Valid-size ciphertext rejection stays implicit.
Required Methods§
Sourcefn algorithm(&self) -> KeyEncapsulationAlgorithm
fn algorithm(&self) -> KeyEncapsulationAlgorithm
Parameter set of this actual key.
Sourcefn decapsulate(
&self,
ciphertext: &[u8],
) -> Result<Zeroizing<[u8; 32]>, ProviderError>
fn decapsulate( &self, ciphertext: &[u8], ) -> Result<Zeroizing<[u8; 32]>, ProviderError>
FIPS 203 section 7.3: return the real-or-rejection secret without validity metadata.
Provided Methods§
Sourcefn provider_binding(&self) -> Option<&ProviderBinding>
fn provider_binding(&self) -> Option<&ProviderBinding>
Engine ownership, when an external engine owns this handle.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".