algorithm
Click on the red underlined text to get to the source
... certification paths in the Internet
environment. Encoding rules are provided for popular cryptographic
algorithms. Finally, ASN.1 modules are provided in the appendices
for all data structures ...
... public key materials and digital
signatures. Implementations are not required to use any particular
cryptographic algorithms. However, conforming implementations which
use the identified algorithms are required to identify and encode the
...
... cryptographic algorithms. However, conforming implementations which
use the identified algorithms are required to identify and encode the
public key materials and digital signatures ...
...
SubjectPublicKeyInfo ::= SEQUENCE {
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING }
...
... The signatureAlgorithm field contains the identifier for the
cryptographic algorithm used by the CA to sign this certificate.
...
...
An algorithm identifier is defined by the following ASN.1 structure:
...
...
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm ...
...
The algorithm identifier is used to identify a cryptographic
algorithm. The OBJECT IDENTIFIER component identifies the algorithm ...
...
The algorithm identifier is used to identify a cryptographic
algorithm. The OBJECT IDENTIFIER component identifies the algorithm
...
... algorithm identifier is used to identify a cryptographic
algorithm. The OBJECT IDENTIFIER component identifies the algorithm
(such as DSA with SHA-1 ...
... SHA-1). The contents of the optional parameters
field will vary according to the algorithm identified. Section 7.2
lists the supported algorithms for this specification.
...
... field will vary according to the algorithm identified. Section 7.2
lists the supported algorithms for this specification.
...
...
This field MUST contain the same algorithm identifier as the
signature field in the sequence tbsCertificate (see sec. 4.1.2.3).
...
... Certificate's signature field. The details of this process are
specified for each of the supported algorithms in Section 7.2.
...
...
This field contains the algorithm identifier for the algorithm used
by the CA to sign the certificate ...
...
This field MUST contain the same algorithm identifier as the
signatureAlgorithm field in the sequence Certificate (see sec.
...
... 4.1.1.2). The contents of the optional parameters field will vary
according to the algorithm identified. Section 7.2 lists the
supported signature algorithms ...
... profile
are permitted to use the comparison algorithm defined in the X.500
series. Such an implementation will recognize a superset of name
...
... X.500
series. Such an implementation will recognize a superset of name
matches recognized by the algorithm specified above.
...
...
This field is used to carry the public key and identify the algorithm
with which the key is used. The algorithm is identified using the
...
... public key and identify the algorithm
with which the key is used. The algorithm is identified using the
AlgorithmIdentifier structure specified in section 4.1.1.2. The
object identifiers ...
... AlgorithmIdentifier structure specified in section 4.1.1.2. The
object identifiers for the supported algorithms and the methods for
encoding ...
... bits that may be
set in an instantiation of the keyUsage extension. However,
appropriate values for keyUsage extensions for particular algorithms
are specified in section 7.3.
...
... DN name comparison algorithm. This implies name restrictions shall
be stated identically to the encoding used in the subject ...
...
The signatureAlgorithm field contains the algorithm identifier for
the algorithm used by the CA ...
... The signatureAlgorithm field contains the algorithm identifier for
the algorithm used by the CA to sign the CertificateList. The field
is of type AlgorithmIdentifier, which is defined in section 4.1.1.2.
...
... CA to sign the CertificateList. The field
is of type AlgorithmIdentifier, which is defined in section 4.1.1.2.
Section 7.2 lists the supported algorithms for this specification.
Conforming CAs MUST use the algorithm identifiers ...
... algorithms for this specification.
Conforming CAs MUST use the algorithm identifiers presented in
section 7.2 when signing with a supported signature algorithm ...
... algorithm identifiers presented in
section 7.2 when signing with a supported signature algorithm.
...
...
This field MUST contain the same algorithm identifier as the
signature field in the sequence tbsCertList (see sec. 5.1.2.2).
...
... CRL's
signatureValue field. The details of this process are specified for
each of the supported algorithms in section 7.2.
...
... certificate list to be signed, or TBSCertList, is a SEQUENCE of
required and optional fields. The required fields identify the CRL
issuer, the algorithm used to sign the CRL, the date and time the CRL
...
...
This field contains the algorithm identifier for the algorithm used
to sign the CRL. Section 7.2 lists OIDs ...
...
This field MUST contain the same algorithm identifier as the
signatureAlgorithm field in the sequence CertificateList (see section
5.1.1.2).
...
...
This section describes an algorithm for validating certification
paths. Conforming implementations of this specification are not
required to implement this algorithm ...
... algorithm for validating certification
paths. Conforming implementations of this specification are not
required to implement this algorithm, but MUST be functionally
equivalent to the external behavior resulting from this procedure.
Any algorithm ...
... algorithm, but MUST be functionally
equivalent to the external behavior resulting from this procedure.
Any algorithm may be used by a particular implementation so long as
it derives the correct result.
...
... certificates issued by a
single "most-trusted CA". The algorithm requires the public key of
the CA ...
... section 6.2 describes extensions to the basic path validation
algorithm. Two specific cases are discussed: the case where paths may
begin with one of several trusted CAs; and where compatibility ...
...
The path validation algorithm presented in 6.1 is based on several
simplifying assumptions (e.g., a single trusted CA that starts ...
... starts all
valid paths). This algorithm may be extended for cases where the
assumptions do not hold.
...
... Algorithm Support ...
...
This section describes cryptographic algorithms which may be used
with this profile. The section describes one-way hash functions ...
... one-way hash functions and
digital signature algorithms which may be used to sign certificates
and CRLs ...
... Conforming CAs and applications are not required to support the
algorithms or algorithm identifiers described in this section.
However, conforming CAs ...
... CAs and applications are not required to support the
algorithms or algorithm identifiers described in this section.
However, conforming CAs and applications that use the algorithms ...
... algorithm identifiers described in this section.
However, conforming CAs and applications that use the algorithms
identified here MUST support them as specified.
...
... One-way hash functions are also called message digest
algorithms. SHA-1 is the preferred one-way hash function for the
...
... Signature Algorithms ...
... CRLs described by this standard may be signed with
any public key signature algorithm. The certificate or CRL indicates
...
... certificate or CRL indicates
the algorithm through an algorithm identifier which appears in the
signatureAlgorithm field in a Certificate ...
... CRL indicates
the algorithm through an algorithm identifier which appears in the
signatureAlgorithm field in a Certificate or CertificateList. This
...
... signatureAlgorithm field in a Certificate or CertificateList. This
algorithm identifier is an OID and has optionally associated
parameters. This section identifies algorithm identifiers and
parameters ...
... algorithm identifier is an OID and has optionally associated
parameters. This section identifies algorithm identifiers and
parameters that shall be used in the signatureAlgorithm field in a
Certificate or CertificateList.
...
... certificate or CRL is indicated by use of an algorithm identifier.
An algorithm identifier is an OID ...
... CRL is indicated by use of an algorithm identifier.
An algorithm identifier is an OID, and may include associated
parameters. This section identifies OIDS for RSA ...
... RSA and DSA. The
contents of the parameters component for each algorithm vary; details
are provided for each algorithm.
...
... contents of the parameters component for each algorithm vary; details
are provided for each algorithm.
...
... The data to be signed (e.g., the one-way hash function output value)
is formatted for the signature algorithm to be used. Then, a private
key operation (e.g., RSA encryption) is performed to generate the
...
... RSA Signature Algorithm ...
...
A patent statement regarding the RSA algorithm can be found at the
end of this profile.
...
...
The RSA algorithm is named for its inventors: Rivest, Shamir, and
Adleman. This profile includes three signature ...
... Adleman. This profile includes three signature algorithms based on
the RSA asymmetric encryption algorithm ...
... RSA asymmetric encryption algorithm. The signature algorithms
combine RSA with either the MD2 ...
... signature algorithm with MD2 and the RSA encryption algorithm is
defined in PKCS #1 [RFC 2313]. As defined in RFC 2313(-> 2437(-> 3447)) ...
... signature algorithm with MD5 and the RSA encryption algorithm is
defined in PKCS #1 [RFC 2313]. As defined in RFC 2313(-> 2437(-> 3447)) ...
... signature algorithm with SHA-1 and the RSA encryption algorithm
is implemented using the padding and encoding conventions described
...
... RFC 2313]. The message digest is computed using the SHA-1
hash algorithm. The ASN.1 object identifier used to identify this
signature algorithm ...
... DSA Signature Algorithm ...
...
Where the id-dsa-with-sha1 algorithm identifier appears as the
algorithm field in an AlgorithmIdentifier, the encoding ...
... Where the id-dsa-with-sha1 algorithm identifier appears as the
algorithm field in an AlgorithmIdentifier, the encoding shall omit
the parameters field. That is, the AlgorithmIdentifier shall be a
...
... When signing, the DSA algorithm generates two values. These values
are commonly referred to as r and s. To easily transfer these two
values as one signature ...
... Subject Public Key Algorithms ...
... profile may convey a public key for
any public key algorithm. The certificate indicates the algorithm
...
... any public key algorithm. The certificate indicates the algorithm
through an algorithm identifier. This algorithm identifier ...
... certificate indicates the algorithm
through an algorithm identifier. This algorithm identifier is an OID
...
... algorithm
through an algorithm identifier. This algorithm identifier is an OID
and optionally associated parameters.
...
... certificates containing public keys for
these algorithms. Conforming applications supporting any of these
algorithms shall, at a minimum, recognize the OID ...
... these algorithms. Conforming applications supporting any of these
algorithms shall, at a minimum, recognize the OID identified in this
section.
...
...
The rsaEncryption OID is intended to be used in the algorithm field
of a value of type AlgorithmIdentifier. The parameters field shall
have ASN.1 ...
... of a value of type AlgorithmIdentifier. The parameters field shall
have ASN.1 type NULL for this algorithm identifier.
...
...
The dhpublicnumber OID is intended to be used in the algorithm field
of a value of type AlgorithmIdentifier. The parameters field of that
type, which has the algorithm-specific ...
... algorithm field
of a value of type AlgorithmIdentifier. The parameters field of that
type, which has the algorithm-specific syntax ANY DEFINED BY
algorithm, have the ASN.1 ...
... type, which has the algorithm-specific syntax ANY DEFINED BY
algorithm, have the ASN.1 type DomainParameters for this algorithm.
...
...
The id-dsa algorithm syntax includes optional parameters. These
parameters are commonly referred to as p, q, and g. When omitted,
...
...
If the DSA algorithm parameters are present in the
subjectPublicKeyInfo AlgorithmIdentifier, the parameters are included
using the following ASN.1 ...
...
If the DSA algorithm parameters are absent from the
subjectPublicKeyInfo AlgorithmIdentifier and the CA signed the
...
... subject's DSA key. If the DSA algorithm
parameters are absent from the subjectPublicKeyInfo
AlgorithmIdentifier and the CA signed the subject ...
... When signing, DSA algorithm generates two values. These values are
commonly referred to as r and s. To easily transfer these two values
as one signature ...
... Balenson, D., "Privacy Enhancement for Internet Electronic Mail: Part III: Algorithms, Modes, and Identifiers," RFC 1423hist, February 1993. ...
... Public Key Cryptography for The Financial Services Industry: Agreement of Symmetric Algorithm Keys Using Diffie-Hellman (Working Draft), December 1997. ...
...
The path validation algorithm depends on the certain knowledge of the
public keys (and other information) about one or more trusted CAs ...
... affect the degree of assurance provided. The path validation
algorithm described in section 6 relies upon the integrity of the
trusted CA ...
... subject cannot be stronger
than the cryptographic module implementation and algorithms used to
generate the signature. Short key lengths ...
... generate the signature. Short key lengths or weak hash algorithms
will limit the utility of a certificate. CAs ...
...
SubjectPublicKeyInfo ::= SEQUENCE {
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING }
...
... AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm ...
... algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL }
-- contains a value of the type
-- registered for use with the
...
... -- contains a value of the type
-- registered for use with the
-- algorithm object identifier value
...
...
SubjectPublicKeyInfo ::= SEQUENCE{
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING}
...
... SIGNED { ToBeSigned } ::= SEQUENCE {
toBeSigned ToBeSigned,
algorithm AlgorithmIdentifier,
signature BIT STRING ...
...
-- AlgorithmIdentifier ::= SEQUENCE {
-- algorithm ALGORITHM.&id({SupportedAlgorithms}),
-- parameters ALGORITHM ...
... -- AlgorithmIdentifier ::= SEQUENCE {
-- algorithm ALGORITHM.&id({SupportedAlgorithms}),
-- parameters ALGORITHM.&Type({SupportedAlgorithms}
...
... algorithm ALGORITHM.&id({SupportedAlgorithms}),
-- parameters ALGORITHM.&Type({SupportedAlgorithms}
-- { @algorithm}) OPTIONAL }
...
... -- parameters ALGORITHM.&Type({SupportedAlgorithms}
-- { @algorithm}) OPTIONAL }
-- Definition of ALGORITHM
...
...
AlgorithmIdentifier ::= SEQUENCE {
algorithm ALGORITHM-ID.&id({SupportedAlgorithms}),
parameters ALGORITHM ...
... AlgorithmIdentifier ::= SEQUENCE {
algorithm ALGORITHM-ID.&id({SupportedAlgorithms}),
parameters ALGORITHM-ID.&Type({SupportedAlgorithms}
...
... algorithm ALGORITHM-ID.&id({SupportedAlgorithms}),
parameters ALGORITHM-ID.&Type({SupportedAlgorithms}
{ @algorithm}) OPTIONAL }
...
... parameters ALGORITHM-ID.&Type({SupportedAlgorithms}
{ @algorithm}) OPTIONAL }
-- Definition of ALGORITHM ...
...
-- The definition of SupportedAlgorithms may be modified as this
-- document does not specify a mandatory algorithm set. In addition,
-- the set is specified as extensible, since additional algorithms
...
... -- document does not specify a mandatory algorithm set. In addition,
-- the set is specified as extensible, since additional algorithms
-- may be supported
...
... -- may be supported
SupportedAlgorithms ALGORITHM-ID ::= { ..., -- extensible
rsaPublicKey |
rsaSHA-1 |
...
... OID rsaEncryption PARMS NULL }
rsaSHA-1 ALGORITHM-ID ::= { OID sha1WithRSAEncryption PARMS NULL }
...
... OID sha1WithRSAEncryption PARMS NULL }
rsaMD5 ALGORITHM-ID ::= { OID md5WithRSAEncryption PARMS NULL }
...
... OID md5WithRSAEncryption PARMS NULL }
rsaMD2 ALGORITHM-ID ::= { OID md2WithRSAEncryption PARMS NULL }
...
... OID md2WithRSAEncryption PARMS NULL }
dssPublicKey ALGORITHM-ID ::= { OID id-dsa PARMS Dss-Parms }
...
... OID id-dsa-with-sha1 }
dhPublicKey ALGORITHM-ID ::= {OID dhpublicnumber PARMS DomainParameters}
...
... OID dhpublicnumber PARMS DomainParameters}
-- algorithm identifiers and parameter structures
pkcs-1 OBJECT IDENTIFIER ...
... certificate is signed with DSA and the SHA-1 hash algorithm;
(c) the issuer's distinguished name ...
... certificate is signed with DSA and the SHA-1 hash algorithm;
(c) the issuer's distinguished name ...
... certificate is signed with RSA and the MD2 hash algorithm;
(c) the issuer's distinguished name ...
