pub enum DataEncryptionAlgorithm {
Aes128Cbc,
Aes256Cbc,
Aes128Gcm,
Aes256Gcm,
Camellia128Cbc,
Camellia192Cbc,
Camellia256Cbc,
ChaCha20,
ChaCha20Poly1305,
}Expand description
Supported content-encryption algorithms.
Variants§
Aes128Cbc
AES-128 in CBC mode with XMLEnc padding.
Aes256Cbc
AES-256 in CBC mode with XMLEnc padding.
Aes128Gcm
AES-128 in GCM mode.
Aes256Gcm
AES-256 in GCM mode.
Camellia128Cbc
Camellia CBC with a 128-bit key (RFC 9231 §2.6.2).
Camellia192Cbc
Camellia CBC with a 192-bit key.
Camellia256Cbc
Camellia CBC with a 256-bit key.
ChaCha20
RFC 9231 ChaCha20 profile; unauthenticated and opt-in.
ChaCha20Poly1305
ChaCha20-Poly1305 with XML-carried nonce and optional AAD.
Implementations§
Source§impl DataEncryptionAlgorithm
impl DataEncryptionAlgorithm
Sourcepub const fn is_authenticated(self) -> bool
pub const fn is_authenticated(self) -> bool
Whether successful decryption cryptographically authenticates the key.
Sourcepub const fn key_kind(self) -> SymmetricKeyKind
pub const fn key_kind(self) -> SymmetricKeyKind
Key family required independently of the byte length (AES-192 and three-key Triple DES both use 24 bytes).
Sourcepub fn from_uri(uri: &str) -> Result<Self, XmlEncError>
pub fn from_uri(uri: &str) -> Result<Self, XmlEncError>
Parse a supported XMLEnc content-encryption URI.
Sourcepub const fn requires_explicit_permission(self) -> bool
pub const fn requires_explicit_permission(self) -> bool
Compile-time capability is not the operation’s permission. Whether this capability must be explicitly selected in the operation allowlist.
Trait Implementations§
Source§impl Clone for DataEncryptionAlgorithm
impl Clone for DataEncryptionAlgorithm
impl Copy for DataEncryptionAlgorithm
Source§impl Debug for DataEncryptionAlgorithm
impl Debug for DataEncryptionAlgorithm
Source§impl Display for DataEncryptionAlgorithm
impl Display for DataEncryptionAlgorithm
impl Eq for DataEncryptionAlgorithm
Source§impl Hash for DataEncryptionAlgorithm
impl Hash for DataEncryptionAlgorithm
Source§impl PartialEq for DataEncryptionAlgorithm
impl PartialEq for DataEncryptionAlgorithm
impl StructuralPartialEq for DataEncryptionAlgorithm
Auto Trait Implementations§
impl Freeze for DataEncryptionAlgorithm
impl RefUnwindSafe for DataEncryptionAlgorithm
impl Send for DataEncryptionAlgorithm
impl Sync for DataEncryptionAlgorithm
impl Unpin for DataEncryptionAlgorithm
impl UnsafeUnpin for DataEncryptionAlgorithm
impl UnwindSafe for DataEncryptionAlgorithm
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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