Package com.nimbusds.jose.crypto.impl
Class DirectCryptoProvider
- java.lang.Object
-
- com.nimbusds.jose.crypto.impl.BaseJWEProvider
-
- com.nimbusds.jose.crypto.impl.DirectCryptoProvider
-
- All Implemented Interfaces:
JCAAware<JWEJCAContext>
,JOSEProvider
,JWEProvider
- Direct Known Subclasses:
DirectDecrypter
,DirectEncrypter
public abstract class DirectCryptoProvider extends BaseJWEProvider
The base abstract class for direct encrypters and decrypters ofJWE objects
with a shared symmetric key.Supports the following key management algorithms:
Supports the following content encryption algorithms:
- Version:
- 2023-07-11
- Author:
- Vladimir Dzhuvinov
-
-
Field Summary
Fields Modifier and Type Field Description static Set<JWEAlgorithm>
SUPPORTED_ALGORITHMS
The supported JWE algorithms by the direct crypto provider class.static Set<EncryptionMethod>
SUPPORTED_ENCRYPTION_METHODS
The supported encryption methods by the direct crypto provider class.
-
Constructor Summary
Constructors Modifier Constructor Description protected
DirectCryptoProvider(SecretKey cek)
Creates a new direct encryption / decryption provider.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SecretKey
getKey()
Gets the Content Encryption Key (CEK).-
Methods inherited from class com.nimbusds.jose.crypto.impl.BaseJWEProvider
getCEK, getJCAContext, isCEKProvided, supportedEncryptionMethods, supportedJWEAlgorithms
-
-
-
-
Field Detail
-
SUPPORTED_ALGORITHMS
public static final Set<JWEAlgorithm> SUPPORTED_ALGORITHMS
The supported JWE algorithms by the direct crypto provider class.
-
SUPPORTED_ENCRYPTION_METHODS
public static final Set<EncryptionMethod> SUPPORTED_ENCRYPTION_METHODS
The supported encryption methods by the direct crypto provider class.
-
-
Constructor Detail
-
DirectCryptoProvider
protected DirectCryptoProvider(SecretKey cek) throws KeyLengthException
Creates a new direct encryption / decryption provider.- Parameters:
cek
- The Content Encryption Key (CEK). Must be 128 bits (16 bytes), 192 bits (24 bytes), 256 bits (32 bytes), 384 bits (48 bytes) or 512 bits (64 bytes) long. Must not benull
.- Throws:
KeyLengthException
- If the CEK length is not compatible.
-
-