#[non_exhaustive]pub enum CoreJweKeyManagementAlgorithm {
Show 17 variants
RsaPkcs1V15,
RsaOaep,
RsaOaepSha256,
AesKeyWrap128,
AesKeyWrap192,
AesKeyWrap256,
Direct,
EcdhEs,
EcdhEsAesKeyWrap128,
EcdhEsAesKeyWrap192,
EcdhEsAesKeyWrap256,
Aes128Gcm,
Aes192Gcm,
Aes256Gcm,
PbEs2HmacSha256AesKeyWrap128,
PbEs2HmacSha384AesKeyWrap192,
PbEs2HmacSha512AesKeyWrap256,
}
Expand description
OpenID Connect Core JWE key management algorithms.
These algorithms represent the alg
header parameter values for JSON Web Encryption.
They are used to encrypt the Content Encryption Key (CEK) to produce the JWE Encrypted Key, or
to use key agreement to agree upon the CEK. The values are described in
Section 4.1 of RFC 7518.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
RsaPkcs1V15
RSAES-PKCS1-V1_5.
RsaOaep
RSAES OAEP using default parameters.
RsaOaepSha256
RSAES OAEP using SHA-256 and MGF1 with SHA-256.
AesKeyWrap128
AES-128 Key Wrap.
AesKeyWrap192
AES-192 Key Wrap.
AesKeyWrap256
AES-256 Key Wrap.
Direct
Direct use of a shared symmetric key as the Content Encryption Key (CEK).
EcdhEs
Elliptic Curve Diffie-Hellman Ephemeral Static key agreement using Concat KDF.
EcdhEsAesKeyWrap128
ECDH-ES using Concat KDF and CEK wrapped with AES-128 Key Wrap.
EcdhEsAesKeyWrap192
ECDH-ES using Concat KDF and CEK wrapped with AES-192 Key Wrap.
EcdhEsAesKeyWrap256
ECDH-ES using Concat KDF and CEK wrapped with AES-256 Key Wrap.
Aes128Gcm
Key wrapping with AES GCM using 128 bit key.
Aes192Gcm
Key wrapping with AES GCM using 192 bit key.
Aes256Gcm
Key wrapping with AES GCM using 256 bit key.
PbEs2HmacSha256AesKeyWrap128
PBES2 with HMAC SHA-256 wrapped with AES-128 Key Wrap.
PbEs2HmacSha384AesKeyWrap192
PBES2 with HMAC SHA-384 wrapped with AES-192 Key Wrap.
PbEs2HmacSha512AesKeyWrap256
PBES2 with HMAC SHA-512 wrapped with AES-256 Key Wrap.
Trait Implementations§
Source§impl Clone for CoreJweKeyManagementAlgorithm
impl Clone for CoreJweKeyManagementAlgorithm
Source§fn clone(&self) -> CoreJweKeyManagementAlgorithm
fn clone(&self) -> CoreJweKeyManagementAlgorithm
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<'de> Deserialize<'de> for CoreJweKeyManagementAlgorithm
impl<'de> Deserialize<'de> for CoreJweKeyManagementAlgorithm
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>,
Source§impl Hash for CoreJweKeyManagementAlgorithm
impl Hash for CoreJweKeyManagementAlgorithm
Source§impl PartialEq for CoreJweKeyManagementAlgorithm
impl PartialEq for CoreJweKeyManagementAlgorithm
Source§fn eq(&self, other: &CoreJweKeyManagementAlgorithm) -> bool
fn eq(&self, other: &CoreJweKeyManagementAlgorithm) -> bool
self
and other
values to be equal, and is used by ==
.impl Eq for CoreJweKeyManagementAlgorithm
impl JweKeyManagementAlgorithm for CoreJweKeyManagementAlgorithm
impl StructuralPartialEq for CoreJweKeyManagementAlgorithm
Auto Trait Implementations§
impl Freeze for CoreJweKeyManagementAlgorithm
impl RefUnwindSafe for CoreJweKeyManagementAlgorithm
impl Send for CoreJweKeyManagementAlgorithm
impl Sync for CoreJweKeyManagementAlgorithm
impl Unpin for CoreJweKeyManagementAlgorithm
impl UnwindSafe for CoreJweKeyManagementAlgorithm
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more