public class KeyGenerator extends Object
| Modifier | Constructor and Description |
|---|---|
protected |
KeyGenerator(KeyGeneratorSpi kgSpi,
Provider provider,
String algorithm)
Create a new key generator.
|
| Modifier and Type | Method and Description |
|---|---|
SecretKey |
generateKey()
Generate a key.
|
String |
getAlgorithm()
Return the name of this key generator.
|
static KeyGenerator |
getInstance(String algorithm)
Create a new key generator, returning the first available implementation.
|
static KeyGenerator |
getInstance(String algorithm,
Provider provider)
Create a new key generator from the supplied provider.
|
static KeyGenerator |
getInstance(String algorithm,
String provider)
Create a new key generator from the named provider.
|
Provider |
getProvider()
Return the provider of the underlying implementation.
|
void |
init(AlgorithmParameterSpec params)
Initialize this key generator with a set of parameters; the
highest-priority
SecureRandom implementation
will be used. |
void |
init(AlgorithmParameterSpec params,
SecureRandom random)
Initialize this key generator with a set of parameters and a source
of randomness.
|
void |
init(int keySize)
Initialize this key generator with a key size (in bits); the
highest-priority
SecureRandom implementation
will be used. |
void |
init(int keySize,
SecureRandom random)
Initialize this key generator with a key size (in bits) and a
source of randomness.
|
void |
init(SecureRandom random)
Initialize this key generator with a source of randomness.
|
protected KeyGenerator(KeyGeneratorSpi kgSpi, Provider provider, String algorithm)
kgSpi - The underlying generator.provider - The provider of this implementation.algorithm - The algorithm's name.public static final KeyGenerator getInstance(String algorithm) throws NoSuchAlgorithmException
algorithm - The generator algorithm name.NoSuchAlgorithmException - If the specified algorithm does not exist.IllegalArgumentException - if algorithm is
null or is an empty string.public static final KeyGenerator getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
algorithm - The generator algorithm name.provider - The name of the provider to use.NoSuchAlgorithmException - If the specified algorithm is not
implemented by the named provider.NoSuchProviderException - If the named provider does not exist.IllegalArgumentException - if either algorithm or
provider is null, or if
algorithm is an empty string.public static final KeyGenerator getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
algorithm - The generator algorithm name.provider - The provider to use.NoSuchAlgorithmException - If the specified algorithm is not
implemented by the provider.IllegalArgumentException - if either algorithm or
provider is null, or if
algorithm is an empty string.public final SecretKey generateKey()
public final String getAlgorithm()
public final Provider getProvider()
public final void init(AlgorithmParameterSpec params) throws InvalidAlgorithmParameterException
SecureRandom implementation
will be used.params - The algorithm parameters.InvalidAlgorithmParameterException - If the
supplied parameters are inapproprate.public final void init(AlgorithmParameterSpec params, SecureRandom random) throws InvalidAlgorithmParameterException
params - The algorithm parameters.random - The source of randomness.InvalidAlgorithmParameterException - If the
supplied parameters are inapproprate.public final void init(int keySize)
SecureRandom implementation
will be used.keySize - The target key size, in bits.InvalidParameterException - If the
key size is unsupported.public final void init(int keySize, SecureRandom random)
keySize - The target key size, in bits.random - The source of randomness.InvalidAlgorithmParameterException - If the
key size is unsupported.public final void init(SecureRandom random)
random - The source of randomness.