#[non_exhaustive]pub enum RecipientInfoKind {
Ktri,
Kari,
Kekri,
Kemri,
Pwri,
Ori,
}Expand description
How a CMS structure conveys the content-encryption key to its recipient.
The variants are the RecipientInfo CHOICE of RFC 5652 §6.2, plus the
KEM alternative RFC 9629 carries inside OtherRecipientInfo.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Ktri
KeyTransRecipientInfo: the CEK is encrypted under the recipient’s
public key.
Kari
KeyAgreeRecipientInfo: a shared secret is agreed with the recipient’s
key, run through a KDF, and used to wrap the CEK.
Kekri
KEKRecipientInfo: the CEK is wrapped under a previously shared
symmetric key.
Kemri
KEMRecipientInfo (RFC 9629), carried as OtherRecipientInfo.
Pwri
PasswordRecipientInfo.
Ori
An OtherRecipientInfo this build does not recognise.
Trait Implementations§
Source§impl Clone for RecipientInfoKind
impl Clone for RecipientInfoKind
impl Copy for RecipientInfoKind
Source§impl Debug for RecipientInfoKind
impl Debug for RecipientInfoKind
Source§impl<'de> Deserialize<'de> for RecipientInfoKind
impl<'de> Deserialize<'de> for RecipientInfoKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for RecipientInfoKind
impl Display for RecipientInfoKind
impl Eq for RecipientInfoKind
Source§impl PartialEq for RecipientInfoKind
impl PartialEq for RecipientInfoKind
Source§impl Serialize for RecipientInfoKind
impl Serialize for RecipientInfoKind
impl StructuralPartialEq for RecipientInfoKind
Auto Trait Implementations§
impl Freeze for RecipientInfoKind
impl RefUnwindSafe for RecipientInfoKind
impl Send for RecipientInfoKind
impl Sync for RecipientInfoKind
impl Unpin for RecipientInfoKind
impl UnsafeUnpin for RecipientInfoKind
impl UnwindSafe for RecipientInfoKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more