T - the concrete type of this objectpublic abstract class AbstractSymmetricAlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>> extends AbstractAlgorithmParameters<T> implements SymmetricAlgorithmParameters<T>
KEY_SIZE_128, KEY_SIZE_192, KEY_SIZE_256, MAC_ALGORITHM_HMAC_MD5, MAC_ALGORITHM_HMAC_SHA1, MAC_ALGORITHM_HMAC_SHA224, MAC_ALGORITHM_HMAC_SHA256, MAC_ALGORITHM_HMAC_SHA3_224, MAC_ALGORITHM_HMAC_SHA3_256, MAC_ALGORITHM_HMAC_SHA3_384, MAC_ALGORITHM_HMAC_SHA3_512, MAC_ALGORITHM_HMAC_SHA384, MAC_ALGORITHM_HMAC_SHA512, MAC_ALGORITHM_HMAC_SHA512_224, MAC_ALGORITHM_HMAC_SHA512_256, MAC_KEY_SIZE_128, MAC_KEY_SIZE_160| Modifier | Constructor and Description |
|---|---|
protected |
AbstractSymmetricAlgorithmParameters()
Initializes the AbstractSymmetricAlgorithmParameters.
|
protected |
AbstractSymmetricAlgorithmParameters(TextEncoder textEncoder)
Initializes the AbstractSymmetricAlgorithmParameters with a
TextEncoder which is used to
decode the key when set as a string. |
| Modifier and Type | Method and Description |
|---|---|
protected byte[] |
generateKeyData(String algorithm)
Returns a randomly generated byte array used to create a key.
|
Key |
getDecryptionKey()
Returns the key used for decryption.
|
Key |
getKey()
Returns the key.
|
protected Key |
loadKey(byte[] rawKey,
KeyLoader keyLoader,
String algorithm)
Loads a key from the given possible key sources.
|
T |
setKey(byte[] key)
Sets the raw byte array of the key.
|
T |
setKey(Key key)
Sets the key.
|
T |
setKey(String key)
Sets the key.
|
T |
setKeyLoader(Object keyLoader)
Sets the
KeyLoader, which is used to load the key. |
createParameterSpec, generateParameterSpecData, getAlgorithm, getDefaultAlgorithm, getDefaultKeySize, getEncryptionKey, getKeySize, getMacAlgorithm, getMacKey, getMacKeySize, getProvider, getProviderName, hasDecryptionKey, hasEncryptionKey, parseAndVerifySalt, setAlgorithm, setDecryptionKey, setDecryptionKey, setDecryptionKey, setDecryptionKeyLoader, setEncryptionKey, setEncryptionKey, setEncryptionKey, setEncryptionKeyLoader, setKeySize, setMacAlgorithm, setMacKey, setMacKey, setMacKey, setMacKeyLoader, setMacKeySize, setProvider, setProviderName, setSaltGenerator, setSaltMatcherclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcreateParameterSpec, generateParameterSpecData, getAlgorithm, getEncryptionKey, getKeySize, getMacAlgorithm, getMacKey, getMacKeySize, getParameterSpec, getParameterSpecSize, getProvider, getProviderName, getTransformation, setKeySize, setMacAlgorithm, setMacKey, setMacKey, setMacKey, setMacKeyLoader, setMacKeySize, setProvider, setProviderName, setSaltGenerator, setSaltMatcherprotected AbstractSymmetricAlgorithmParameters()
protected AbstractSymmetricAlgorithmParameters(TextEncoder textEncoder)
TextEncoder which is used to
decode the key when set as a string.textEncoder - the TextEncoderpublic Key getKey() throws GeneralSecurityException
getKey in interface SymmetricAlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>>GeneralSecurityException - GeneralSecurityExceptionpublic T setKey(byte[] key)
setKey in interface SymmetricAlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>>key - The encryptionKey to set.public T setKey(String key)
setKey in interface SymmetricAlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>>key - The key to set.public T setKey(Key key)
setKey in interface SymmetricAlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>>key - The key to set.public T setKeyLoader(Object keyLoader)
KeyLoader, which is used to load the key. The value may either be the
full class name of a KeyLoader implementation or an actual KeyLoader
instance.setKeyLoader in interface SymmetricAlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>>keyLoader - The keyLoader to set.public Key getDecryptionKey() throws GeneralSecurityException
getDecryptionKey in interface AlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>>getDecryptionKey in class AbstractAlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>>GeneralSecurityException - GeneralSecurityExceptionprotected byte[] generateKeyData(String algorithm) throws GeneralSecurityException
algorithm - the algorithm for the keyGeneralSecurityException - GeneralSecurityExceptionprotected Key loadKey(byte[] rawKey, KeyLoader keyLoader, String algorithm) throws GeneralSecurityException
loadKey in class AbstractAlgorithmParameters<T extends AbstractSymmetricAlgorithmParameters<T>>rawKey - the raw key bytes (may be null)keyLoader - the keyLoader (may be null)algorithm - the algorithm for the keyGeneralSecurityException - GeneralSecurityException