All Packages Class Hierarchy This Package Previous Next Index
Class java.security.KeyGenerator
java.lang.Object
|
+----java.security.KeyGenerator
- public abstract class KeyGenerator
- extends Object
- implements Parameterized
The KeyGenerator class is used to generate keys for a given
algorithm. Key generators are constructed using the
getInstance
factory methods (static methods that
return instances of a given class).
The KeyGenerator interface is entirely algorithm independent,
and, as for the KeyPairGenerator instances, KeyGenerator instances
may be cast to algorithm-specific interfaces defined elsewhere
in the Java Cryptography Architecture.
A typical set of calls would be:
import java.security.KeyGenerator;
SecureRandom random = new SecureRandom();
KeyGenerator keygen = KeyGenerator.getInstance("DES");
keygen.initialize(random);
Key key = keygen.generateKey();
Copyright © 1997
Systemics Ltd on behalf of the
Cryptix Development Team.
All rights reserved.
$Revision: 1.2 $
- Author:
- David Hopwood, Raif S. Naffah
-
KeyGenerator(String)
- Creates a KeyGenerator object for the specified algorithm.
-
clone()
- Returns a clone of this key generator.
-
engineGetParameter(String)
- SPI: Gets the value of the specified algorithm parameter.
-
engineSetParameter(String, Object)
- SPI: Sets the specified algorithm parameter to the specified
value.
-
generateKey()
- Generates a key.
-
getAlgorithm()
- Returns the standard name of the algorithm for this key generator.
-
getAlgorithms()
- Gets the standard names of all KeyGenerators implemented by any
installed provider.
-
getAlgorithms(Provider)
- Gets the standard names of all KeyGenerators implemented by a
provider.
-
getInstance(String)
- Generates a KeyGenerator object that implements the algorithm
requested, as available in the environment.
-
getInstance(String, String)
- Generates a KeyGenerator object implementing the specified
algorithm, as supplied from the specified provider, if such an
algorithm is available from the provider.
-
getParameter(String)
- Gets the value of the specified algorithm parameter.
-
initialize(SecureRandom)
- Initializes the key generator.
-
setParameter(String, Object)
- Sets the specified algorithm parameter to the specified value.
-
toString()
-
KeyGenerator
protected KeyGenerator(String algorithm)
- Creates a KeyGenerator object for the specified algorithm.
- Parameters:
- algorithm - the standard string name of the algorithm.
- Throws: NullPointerException
- if algorithm == null
getInstance
public static KeyGenerator getInstance(String algorithm) throws NoSuchAlgorithmException
- Generates a KeyGenerator object that implements the algorithm
requested, as available in the environment.
See
International JCE Standard Algorithm Names for a list
of KeyGenerator algorithm names.
- Parameters:
- algorithm - the standard name or an alias for the algorithm.
- Returns:
- the new KeyGenerator object.
- Throws: NoSuchAlgorithmException
- if the algorithm is not
available in the environment.
getInstance
public static KeyGenerator getInstance(String algorithm,
String provider) throws NoSuchAlgorithmException, NoSuchProviderException
- Generates a KeyGenerator object implementing the specified
algorithm, as supplied from the specified provider, if such an
algorithm is available from the provider.
See
International JCE Standard Algorithm Names for a list
of KeyGenerator algorithm names.
- Parameters:
- algorithm - the standard name or an alias for the algorithm.
- provider - the string name of the provider.
- Returns:
- the new KeyGenerator object.
- Throws: NoSuchAlgorithmException
- if the algorithm is not
available from the provider.
- Throws: NoSuchProviderException
- if the provider is not
available in the environment.
getAlgorithm
public String getAlgorithm()
- Returns the standard name of the algorithm for this key generator.
See
International JCE Standard Algorithm Names for a list
of KeyGenerator algorithm names.
- Returns:
- the standard string name of the algorithm.
initialize
public abstract void initialize(SecureRandom random)
- Initializes the key generator.
- Parameters:
- random - a source of randomness for this generator.
generateKey
public abstract SecretKey generateKey()
- Generates a key. This method generates a new key every time
it is called.
- Returns:
- the new key.
setParameter
public void setParameter(String param,
Object value) throws NoSuchParameterException, InvalidParameterException, InvalidParameterTypeException
- Sets the specified algorithm parameter to the specified value.
This method supplies a general-purpose mechanism through which it is
possible to set the various parameters of this object. A uniform
algorithm-specific naming scheme for each parameter is desirable but
left unspecified at this time.
This method
is not supported in JavaSoft's version of JCE.
- Parameters:
- param - the string identifier of the parameter.
- value - the parameter value.
- Throws: NullPointerException
- if param == null
- Throws: NoSuchParameterException
- if there is no parameter with name
param for this key generator implementation.
- Throws: InvalidParameterException
- if the parameter exists but cannot
be set.
- Throws: InvalidParameterTypeException
- if value is the wrong type
for this parameter.
getParameter
public Object getParameter(String param) throws NoSuchParameterException, InvalidParameterException
- Gets the value of the specified algorithm parameter.
This method supplies a general-purpose mechanism through which it is
possible to get the various parameters of this object. A uniform
algorithm-specific naming scheme for each parameter is desirable but
left unspecified at this time.
This method
is not supported in JavaSoft's version of JCE.
- Parameters:
- param - the string name of the parameter.
- Returns:
- the object that represents the parameter value.
- Throws: NullPointerException
- if param == null
- Throws: NoSuchParameterException
- if there is no parameter with name
param for this key generator implementation.
- Throws: InvalidParameterException
- if the parameter exists but cannot
be read.
engineSetParameter
protected void engineSetParameter(String param,
Object value) throws NoSuchParameterException, InvalidParameterException, InvalidParameterTypeException
- SPI: Sets the specified algorithm parameter to the specified
value.
This method supplies a general-purpose mechanism through which it is
possible to set the various parameters of this object. A uniform
algorithm-specific naming scheme for each parameter is desirable but
left unspecified at this time.
The default implementation always throws a NoSuchParameterException.
This method
is not supported in JavaSoft's version of JCE.
- Parameters:
- param - the string name of the parameter.
- value - the parameter value.
- Throws: NoSuchParameterException
- if there is no parameter with name
param for this key generator implementation.
- Throws: InvalidParameterException
- if the parameter exists but cannot
be set.
- Throws: InvalidParameterTypeException
- if value is the wrong type
for this parameter.
engineGetParameter
protected Object engineGetParameter(String param) throws NoSuchParameterException, InvalidParameterException
- SPI: Gets the value of the specified algorithm parameter.
This method supplies a general-purpose mechanism through which it is
possible to get the various parameters of this object. A uniform
algorithm-specific naming scheme for each parameter is desirable but
left unspecified at this time.
The default implementation always throws a NoSuchParameterException.
This method
is not supported in JavaSoft's version of JCE.
- Parameters:
- param - the string name of the parameter.
- Returns:
- the object that represents the parameter value.
- Throws: NoSuchParameterException
- if there is no parameter with name
param for this key generator implementation.
- Throws: InvalidParameterException
- if the parameter exists but cannot
be read.
clone
public Object clone() throws CloneNotSupportedException
- Returns a clone of this key generator.
Note: In JavaSoft's version of JCE, KeyGenerator.clone()
is
protected. This is not very useful, since then an application (as opposed
to the key generator implementation itself) is not able to call it.
- Throws: CloneNotSupportedException
- if the key generator is not cloneable.
- Overrides:
- clone in class Object
toString
public String toString()
- Overrides:
- toString in class Object
getAlgorithms
public static String[] getAlgorithms(Provider provider)
- Gets the standard names of all KeyGenerators implemented by a
provider.
This method
is not supported in JavaSoft's version of JCE.
For compatibility you may wish to use
IJCE.getAlgorithms(provider, "KeyGenerator")
instead.
getAlgorithms
public static String[] getAlgorithms()
- Gets the standard names of all KeyGenerators implemented by any
installed provider. Algorithm names are not duplicated if
they are supported by more than one provider.
This method
is not supported in JavaSoft's version of JCE.
For compatibility you may wish to use
IJCE.getAlgorithms("KeyGenerator")
instead.
All Packages Class Hierarchy This Package Previous Next Index