| java.lang.Object sun.security.x509.AlgorithmId
All known Subclasses: sun.security.x509.AlgIdDSA,
AlgorithmId | public class AlgorithmId implements Serializable,DerEncoder(Code) | | This class identifies algorithms, such as cryptographic transforms, each
of which may be associated with parameters. Instances of this base class
are used when this runtime environment has no special knowledge of the
algorithm type, and may also be used in other cases. Equivalence is
defined according to OID and (where relevant) parameters.
Subclasses may be used, for example when when the algorithm ID has
associated parameters which some code (e.g. code using public keys) needs
to have parsed. Two examples of such algorithms are Diffie-Hellman key
exchange, and the Digital Signature Standard Algorithm (DSS/DSA).
The OID constants defined in this class correspond to some widely
used algorithms, for which conventional string names have been defined.
This class is not a general repository for OIDs, or for such string names.
Note that the mappings between algorithm IDs and algorithm names is
not one-to-one.
version: 1.84 author: David Brownell author: Amit Kapoor author: Hemma Prafullchandra |
Method Summary | |
protected void | decodeParams() | public void | derEncode(OutputStream out) DER encode this object onto an output stream. | final public void | encode(DerOutputStream out) Marshal a DER-encoded "AlgorithmID" sequence on the DER stream. | final public byte[] | encode() Returns the DER-encoded X.509 AlgorithmId as a byte array. | public boolean | equals(AlgorithmId other) Returns true iff the argument indicates the same algorithm
with the same parameters. | public boolean | equals(Object other) Compares this AlgorithmID to another. | final public boolean | equals(ObjectIdentifier id) Compares two algorithm IDs for equality. | public static AlgorithmId | get(String algname) Returns one of the algorithm IDs most commonly associated
with this algorithm name. | public static AlgorithmId | get(AlgorithmParameters algparams) Returns one of the algorithm IDs most commonly associated
with this algorithm parameters. | public static AlgorithmId | getAlgorithmId(String algname) Returns one of the algorithm IDs most commonly associated
with this algorithm name. | public byte[] | getEncodedParams() Returns the DER encoded parameter, which can then be
used to initialize java.security.AlgorithmParamters. | public String | getName() Returns a name for the algorithm which may be more intelligible
to humans than the algorithm's OID, but which won't necessarily
be comprehensible on other systems. | final public ObjectIdentifier | getOID() Returns the ISO OID for this algorithm. | public AlgorithmParameters | getParameters() | public int | hashCode() Returns a hashcode for this AlgorithmId. | protected String | paramsToString() Provides a human-readable description of the algorithm parameters. | public static AlgorithmId | parse(DerValue val) Parse (unmarshal) an ID from a DER sequence input value. | public String | toString() Returns a string describing the algorithm and its parameters. |
params | protected DerValue params(Code) | | Parameters for this algorithm. These are stored in unparsed
DER-encoded form; subclasses can be made to automaticaly parse
them so there is fast access to these parameters.
|
AlgorithmId | public AlgorithmId(ObjectIdentifier oid)(Code) | | Constructs a parameterless algorithm ID.
Parameters: oid - the identifier for the algorithm |
AlgorithmId | public AlgorithmId(ObjectIdentifier oid, AlgorithmParameters algparams)(Code) | | Constructs an algorithm ID with algorithm parameters.
Parameters: oid - the identifier for the algorithm. Parameters: algparams - the associated algorithm parameters. |
AlgorithmId | public AlgorithmId()(Code) | | Constructs an algorithm ID which will be initialized
separately, for example by deserialization.
|
derEncode | public void derEncode(OutputStream out) throws IOException(Code) | | DER encode this object onto an output stream.
Implements the DerEncoder interface.
Parameters: out - the output stream on which to write the DER encoding. exception: IOException - on encoding error. |
encode | final public byte[] encode() throws IOException(Code) | | Returns the DER-encoded X.509 AlgorithmId as a byte array.
|
equals | public boolean equals(AlgorithmId other)(Code) | | Returns true iff the argument indicates the same algorithm
with the same parameters.
|
equals | public boolean equals(Object other)(Code) | | Compares this AlgorithmID to another. If algorithm parameters are
available, they are compared. Otherwise, just the object IDs
for the algorithm are compared.
Parameters: other - preferably an AlgorithmId, else an ObjectIdentifier |
equals | final public boolean equals(ObjectIdentifier id)(Code) | | Compares two algorithm IDs for equality. Returns true iff
they are the same algorithm, ignoring algorithm parameters.
|
getEncodedParams | public byte[] getEncodedParams() throws IOException(Code) | | Returns the DER encoded parameter, which can then be
used to initialize java.security.AlgorithmParamters.
DER encoded parameters, or null not present. |
getName | public String getName()(Code) | | Returns a name for the algorithm which may be more intelligible
to humans than the algorithm's OID, but which won't necessarily
be comprehensible on other systems. For example, this might
return a name such as "MD5withRSA" for a signature algorithm on
some systems. It also returns names like "OID.1.2.3.4", when
no particular name for the algorithm is known.
|
getOID | final public ObjectIdentifier getOID()(Code) | | Returns the ISO OID for this algorithm. This is usually converted
to a string and used as part of an algorithm name, for example
"OID.1.3.14.3.2.13" style notation. Use the getName
call when you do not need to ensure cross-system portability
of algorithm names, or need a user friendly name.
|
hashCode | public int hashCode()(Code) | | Returns a hashcode for this AlgorithmId.
a hashcode for this AlgorithmId. |
paramsToString | protected String paramsToString()(Code) | | Provides a human-readable description of the algorithm parameters.
This may be redefined by subclasses which parse those parameters.
|
parse | public static AlgorithmId parse(DerValue val) throws IOException(Code) | | Parse (unmarshal) an ID from a DER sequence input value. This form
parsing might be used when expanding a value which has already been
partially unmarshaled as a set or sequence member.
exception: IOException - on error. Parameters: val - the input value, which contains the algid and, ifthere are any parameters, those parameters. an ID for the algorithm. If the system is configuredappropriately, this may be an instance of a classwith some kind of special support for this algorithm.In that case, you may "narrow" the type of the ID. |
toString | public String toString()(Code) | | Returns a string describing the algorithm and its parameters.
|
|
|