java.security
Class AlgorithmParameterGenerator

java.lang.Object
  extended by java.security.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
 AlgorithmParameters generateParameters()
           
 String getAlgorithm()
           
static AlgorithmParameterGenerator getInstance(String algorithm)
          Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.
static AlgorithmParameterGenerator getInstance(String algorithm, Provider provider)
          Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.
static AlgorithmParameterGenerator getInstance(String algorithm, String provider)
          Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.
 Provider getProvider()
           
 void init(AlgorithmParameterSpec genParamSpec)
          Initializes this instance with the specified AlgorithmParameterSpec.
 void init(AlgorithmParameterSpec genParamSpec, SecureRandom random)
          Initializes this instance with the specified AlgorithmParameterSpec and source of randomness.
 void init(int size)
          Initializes this instance with the specified size.
 void init(int size, SecureRandom random)
          Initializes this instance with the specified key-size and source of randomness.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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

getAlgorithm

public final String getAlgorithm()
Returns:
the name of the algorithm.

getInstance

public static AlgorithmParameterGenerator getInstance(String algorithm)
                                               throws NoSuchAlgorithmException
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)
                                               throws NoSuchAlgorithmException,
                                                      NoSuchProviderException
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 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)
                                               throws NoSuchAlgorithmException
Returns a new AlgorithmParameterGenerator instance which generates algorithm parameters for the specified algorithm.

Parameters:
algorithm - the name of algorithm to use.
provider - the Provider to use.
Returns:
the new instance.
Throws:
NoSuchAlgorithmException - if the algorithm is not implemented by 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 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 SecureRandom to use.

init

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

Parameters:
genParamSpec - the AlgorithmParameterSpec to use.
Throws:
InvalidAlgorithmParameterException - if genParamSpec is invalid.

init

public final void init(AlgorithmParameterSpec genParamSpec,
                       SecureRandom random)
                throws InvalidAlgorithmParameterException
Initializes this instance with the specified AlgorithmParameterSpec and source of randomness.

Parameters:
genParamSpec - the AlgorithmParameterSpec to use.
random - the SecureRandom to use.
Throws:
InvalidAlgorithmParameterException - if genParamSpec is invalid.

generateParameters

public final AlgorithmParameters generateParameters()
Returns:
a new instance of AlgorithmParameters.