This class represents the ASN.1/DER value of the AlgorithmIdentifier defined in Annex D to Recommendation X.509. This structure is extensively used for instance in the PKCS standards of RSA Inc. The ASN.1 definition of this structure is as given below:
AlgorithmIdentifier ::= SEQUENCE{ algorithm OBJECT IDENTIFIER, parameters ANY DEFINED BY algorithm OPTIONAL }
For this class to work properly, providers need to define the following algorithm aliases for the {@link java.security.AlgorithmParameters AlgorithmParameters} implementations they provide:
- AlgorithmParameters.MyAlg = class
- Alg.Alias.AlgorithmParameters.1.2.3.4 = MyAlg
- Alg.Alias.AlgorithmParameters.OID.1.2.3.4 = MyAlg
The first property defined the mapping of the JCE compliant standard name of the algorithm to the implementing class. The second provider entry allows mapping OID to those algorithm names while the third allows mapping those names on corresponding OID.
The alias definitions are used by this class in order to find an AlgorithmParameters implementation for the OID embedded in the X.509 AlgorithmIdentifier structure, and to create the OID for a given AlgorithmParameters instances. This is done by means of the {@link JCA JCA}class, which operates on the engine and alias definitions of the installed providers.
@author Volker Roth
@version "$Id: AlgorithmIdentifier.java,v 1.3 2004/08/13 11:37:03 pebingerExp $"
@see JCA