com.ibm.crypto.fips.provider
Class HmacSHA512KeyGenerator
- java.lang.Object
-
- javax.crypto.KeyGeneratorSpi
-
- com.ibm.crypto.fips.provider.HmacSHA512KeyGenerator
-
public final class HmacSHA512KeyGenerator extends javax.crypto.KeyGeneratorSpi
This class generates a secret key for use with the HMAC-SHA512 algorithm.
-
-
Constructor Summary
Constructors Constructor and Description HmacSHA512KeyGenerator()
Verify the JCE framework in the constructor.
-
Method Summary
Methods Modifier and Type Method and Description protected javax.crypto.SecretKey
engineGenerateKey()
Generates an HMAC-SHA512 key.protected void
engineInit(java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
Initializes this key generator with the specified parameter set and a user-provided source of randomness.protected void
engineInit(int keysize, java.security.SecureRandom random)
Initializes this key generator for a certain keysize, using the given source of randomness.protected void
engineInit(java.security.SecureRandom random)
Initializes this key generator.protected javax.crypto.SecretKey
internalGenerateKey()
Generates an HMAC-SHA512 key.protected void
internalInit(java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random)
Initializes this key generator with the specified parameter set and a user-provided source of randomness.protected void
internalInit(int keysize, java.security.SecureRandom random)
Initializes this key generator for a certain keysize, using the given source of randomness.protected void
internalInit(java.security.SecureRandom random)
Initializes this key generator.
-
-
-
Constructor Detail
-
HmacSHA512KeyGenerator
public HmacSHA512KeyGenerator()
Verify the JCE framework in the constructor.- Throws:
java.lang.SecurityException
- if fails to verify the JCE framework.
-
-
Method Detail
-
engineInit
protected void engineInit(java.security.SecureRandom random)
Initializes this key generator.- Specified by:
engineInit
in classjavax.crypto.KeyGeneratorSpi
- Parameters:
random
- the source of randomness for this generator- Throws:
FIPSRuntimeException
- if SelfTest.isFipsRunnable returns false.
-
internalInit
protected void internalInit(java.security.SecureRandom random)
Initializes this key generator.- Parameters:
random
- the source of randomness for this generator
-
engineInit
protected void engineInit(java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random) throws java.security.InvalidAlgorithmParameterException
Initializes this key generator with the specified parameter set and a user-provided source of randomness.- Specified by:
engineInit
in classjavax.crypto.KeyGeneratorSpi
- Parameters:
params
- the key generation parametersrandom
- the source of randomness for this key generator- Throws:
java.security.InvalidAlgorithmParameterException
- ifparams
is inappropriate for this key generator
-
internalInit
protected void internalInit(java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random) throws java.security.InvalidAlgorithmParameterException
Initializes this key generator with the specified parameter set and a user-provided source of randomness.- Parameters:
params
- the key generation parametersrandom
- the source of randomness for this key generator- Throws:
java.security.InvalidAlgorithmParameterException
- ifparams
is inappropriate for this key generatorFIPSRuntimeException
- if SelfTest.isFipsRunnable returns false.
-
engineInit
protected void engineInit(int keysize, java.security.SecureRandom random)
Initializes this key generator for a certain keysize, using the given source of randomness.- Specified by:
engineInit
in classjavax.crypto.KeyGeneratorSpi
- Parameters:
keysize
- the keysize. This is an algorithm-specific metric specified in number of bits.random
- the source of randomness for this key generator- Throws:
FIPSRuntimeException
- if SelfTest.isFipsRunnable returns false.
-
internalInit
protected void internalInit(int keysize, java.security.SecureRandom random)
Initializes this key generator for a certain keysize, using the given source of randomness.- Parameters:
keysize
- the keysize. This is an algorithm-specific metric specified in number of bits.random
- the source of randomness for this key generator
-
engineGenerateKey
protected javax.crypto.SecretKey engineGenerateKey()
Generates an HMAC-SHA512 key.- Specified by:
engineGenerateKey
in classjavax.crypto.KeyGeneratorSpi
- Returns:
- the new HMAC-SHA512 key
-
internalGenerateKey
protected javax.crypto.SecretKey internalGenerateKey()
Generates an HMAC-SHA512 key.- Returns:
- the new HMAC-SHA512 key
-
-