codec.util
Class Engines

java.lang.Object
  extended by codec.util.Engines

public class Engines
extends Object

This class provides the standard JCA/JCE engine name associations. The names defined in the JCA and JCE specification documents can be retrieved by engine as well as the engine names themselves. This class is primarily informative but can be used to check the definitions of providers for adherence of Sun's naming scheme.

The algorithm names, in particular the ciphers, are extended by some algorithm names not defined in the original documents but whose algorithms are implemented by multiple providers in a way suggesting uniform understanding on the name. Examples are RC2 and RC5.

Version:
"$Id: Engines.java 1913 2007-08-08 02:41:53Z jpeters $"
Author:
Volker Roth

Field Summary
protected static String[] algorithmParameterGenerator_
          The names of the AlgorithmParameterGenerator instances.
protected static String[] algorithmParameters_
          The names of the AlgorithmParameters instances.
protected static String[] certificateFactory_
          The names of the CertificateFactory instances.
protected static String[] cipher_
          The names of Cipher instances.
protected static String[] engines_
          The names of the standard engines.
protected static String[] keyAgreement_
          The names of the KeyAgreement instances.
protected static String[] keyFactory_
           
protected static String[] keyGenerator_
          The names of the KeyGenerator instances.
protected static String[] keyPairGenerator_
          The names of the KeyPairGenerator instances.
protected static String[] keyStore_
          The names of the KeyStore instances.
protected static String[] mac_
          The names of the Mac instances.
protected static Map map_
          The well-known standardised engine names.
protected static String[] messageDigest_
          The names of the MessageDigest instances.
protected static String[] mode_
          The names of the cipher operation modes.
protected static String[] padding_
          The names of the padding algorithms.
protected static String[] secretKeyFactory_
          The names of the KeyGenerator instances.
protected static String[] secureRandom_
          The names of the SecureRandom instances.
protected static String[] signature_
          The names of the Signature instances.
 
Constructor Summary
private Engines()
          No-one may instantiate this class.
 
Method Summary
static List getEngineNames()
          Returns a list of the valid engine names defined in the JCA and JCE in no particular order.
static List getEngineNames(Provider p, String engine)
          Returns the list of names of the engines of the given type that are declared by the given provider.
static List getStdNames(String engine)
          Retrieves the standard names defined in the JCE and JCA for the given engine type.
protected static Map initEngines()
          Initialises the names of the JCE/JCA engines.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cipher_

protected static String[] cipher_
The names of Cipher instances. I added RC2 and RC5 and RSA which do not appear in the standard.


keyGenerator_

protected static String[] keyGenerator_
The names of the KeyGenerator instances. Please note that PBE is not included since passwords are chosen by users and are not generated.


keyPairGenerator_

protected static String[] keyPairGenerator_
The names of the KeyPairGenerator instances.


keyAgreement_

protected static String[] keyAgreement_
The names of the KeyAgreement instances. DiffieHellman is defined in PKCS#3.


secretKeyFactory_

protected static String[] secretKeyFactory_
The names of the KeyGenerator instances. Please note that PBE is not included since passwords are chosen by users and are not generated.


keyFactory_

protected static String[] keyFactory_

algorithmParameters_

protected static String[] algorithmParameters_
The names of the AlgorithmParameters instances.


algorithmParameterGenerator_

protected static String[] algorithmParameterGenerator_
The names of the AlgorithmParameterGenerator instances. The JCE specifies only DiffieHellman at this point. In order to allow algorithm-independent initialisation of ciphers parameter generators for almost all ciphers should be provided.


mac_

protected static String[] mac_
The names of the Mac instances. HmacMD5 and HmacSHA1 are defined in RFC 2104. No OIDs are defined in this RFC.


keyStore_

protected static String[] keyStore_
The names of the KeyStore instances. These names are basically up to the provider since no particular implementations or characteristics are associated with a particular keystore name.


messageDigest_

protected static String[] messageDigest_
The names of the MessageDigest instances.


signature_

protected static String[] signature_
The names of the Signature instances. SHA1WithDSA is specified in FIPS PUB 186.


secureRandom_

protected static String[] secureRandom_
The names of the SecureRandom instances. The SHA1PRNG follows IEEE P1363.


certificateFactory_

protected static String[] certificateFactory_
The names of the CertificateFactory instances.


mode_

protected static String[] mode_
The names of the cipher operation modes. No engines correspond to these names.


padding_

protected static String[] padding_
The names of the padding algorithms. No engines correspond to these names.


engines_

protected static String[] engines_
The names of the standard engines.


map_

protected static Map map_
The well-known standardised engine names.

Constructor Detail

Engines

private Engines()
No-one may instantiate this class.

Method Detail

initEngines

protected static Map initEngines()
Initialises the names of the JCE/JCA engines.


getStdNames

public static List getStdNames(String engine)
Retrieves the standard names defined in the JCE and JCA for the given engine type.

Parameters:
engine - The name of the engine type of which the standard names should be returned.
Returns:
The list of standard algorithm names for the given engine type.

getEngineNames

public static List getEngineNames()
Returns a list of the valid engine names defined in the JCA and JCE in no particular order.

Returns:
The list of engine names.

getEngineNames

public static List getEngineNames(Provider p,
                                  String engine)
Returns the list of names of the engines of the given type that are declared by the given provider.

Parameters:
p - The provider from which the names are taken.
engine - The engine name.
Returns:
The list of names declared by the given provider for the given engine type.


Copyright © Fraunhofer Gesellschaft. All Rights Reserved.