java.security

Class AlgorithmParameterGenerator

public class AlgorithmParameterGenerator extends Object

AlgorithmParameterGenerator is used to generate algorithm parameters for specified algorithms.

In case the client does not explicitly initialize the AlgorithmParameterGenerator (via a call to an init() method), each provider must supply (and document) a default initialization. For example, the GNU provider uses a default modulus prime size of 1024 bits for the generation of DSA parameters.

Since: 1.2

See Also: AlgorithmParameters AlgorithmParameterSpec

Constructor Summary
protected AlgorithmParameterGenerator(AlgorithmParameterGeneratorSpi paramGenSpi, Provider provider, String algorithm)
Constructs a new instance of AlgorithmParameterGenerator.
Method Summary
AlgorithmParametersgenerateParameters()
StringgetAlgorithm()
static AlgorithmParameterGeneratorgetInstance(String algorithm)
Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.
static AlgorithmParameterGeneratorgetInstance(String algorithm, String provider)
Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.
static AlgorithmParameterGeneratorgetInstance(String algorithm, Provider provider)
Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.
ProvidergetProvider()
voidinit(int size)
Initializes this instance with the specified size.
voidinit(int size, SecureRandom random)
Initializes this instance with the specified key-size and source of randomness.
voidinit(AlgorithmParameterSpec genParamSpec)
Initializes this instance with the specified {@link AlgorithmParameterSpec}.
voidinit(AlgorithmParameterSpec genParamSpec, SecureRandom random)
Initializes this instance with the specified {@link AlgorithmParameterSpec} and source of randomness.

Constructor Detail

AlgorithmParameterGenerator

protected AlgorithmParameterGenerator(AlgorithmParameterGeneratorSpi paramGenSpi, Provider provider, String algorithm)
Constructs a new instance of AlgorithmParameterGenerator.

Parameters: paramGenSpi the generator to use. provider the provider to use. algorithm the algorithm to use.

Method Detail

generateParameters

public final AlgorithmParameters generateParameters()

Returns: a new instance of {@link AlgorithmParameters}.

getAlgorithm

public final String getAlgorithm()

Returns: the name of the algorithm.

getInstance

public static AlgorithmParameterGenerator getInstance(String algorithm)
Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.

Parameters: algorithm the name of algorithm to use.

Returns: the new instance.

Throws: NoSuchAlgorithmException if algorithm is not implemented by any provider. IllegalArgumentException if algorithm is null or is an empty string.

getInstance

public static AlgorithmParameterGenerator getInstance(String algorithm, String provider)
Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.

Parameters: algorithm the name of algorithm to use. provider the name of the {@link Provider} to use.

Returns: the new instance.

Throws: NoSuchAlgorithmException if the algorithm is not implemented by the named provider. NoSuchProviderException if the named provider was not found. IllegalArgumentException if either algorithm or provider is null or empty.

getInstance

public static AlgorithmParameterGenerator getInstance(String algorithm, Provider provider)
Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.

Parameters: algorithm the name of algorithm to use. provider the {@link Provider} to use.

Returns: the new instance.

Throws: NoSuchAlgorithmException if the algorithm is not implemented by {@link Provider}. IllegalArgumentException if either algorithm or provider is null, or if algorithm is an empty string.

Since: 1.4

See Also: Provider

getProvider

public final Provider getProvider()

Returns: the {@link Provider} of this generator.

init

public final void init(int size)
Initializes this instance with the specified size. Since no source of randomness is supplied, a default one will be used.

Parameters: size size (in bits) to use.

init

public final void init(int size, SecureRandom random)
Initializes this instance with the specified key-size and source of randomness.

Parameters: size the size (in bits) to use. random the {@link SecureRandom} to use.

init

public final void init(AlgorithmParameterSpec genParamSpec)
Initializes this instance with the specified {@link AlgorithmParameterSpec}. Since no source of randomness is supplied, a default one will be used.

Parameters: genParamSpec the {@link AlgorithmParameterSpec} to use.

Throws: InvalidAlgorithmParameterException if genParamSpec is invalid.

init

public final void init(AlgorithmParameterSpec genParamSpec, SecureRandom random)
Initializes this instance with the specified {@link AlgorithmParameterSpec} and source of randomness.

Parameters: genParamSpec the {@link AlgorithmParameterSpec} to use. random the {@link SecureRandom} to use.

Throws: InvalidAlgorithmParameterException if genParamSpec is invalid.