Basisfelder
Ein X.509 Version 1-Zertifikat enthält die folgenden Felder. Die Felder der Version 2 werden in Version 2-Feldererläutert. Die Felder der Version 3 werden in Version 3-Erweiterungenerläutert.
Version
Gibt die Versionsnummer des codierten Zertifikats an. Derzeit sind die möglichen Werte dieses Felds 0, 1 oder 2, aber dies kann in Zukunft erweitert werden.
---------------------------------------------------------------------
-- Version number. Currently, this can be 0, 1, or 2.
---------------------------------------------------------------------
CertificateVersion ::= INTEGER {v1(0), v2(1), v3(2)}
Seriennummer
Enthält eine positive, eindeutige ganze Zahl, die von der Zertifizierungsstelle (CA) dem Zertifikat zugewiesen wird.
---------------------------------------------------------------------
-- Certificate serial number
---------------------------------------------------------------------
CertificateSerialNumber ::= INTEGER
Signaturalgorithmus
Enthält einen Objektbezeichner (OID), der den Algorithmus angibt, der von der Zertifizierungsstelle zum Signieren des Zertifikats verwendet wird. Beispielsweise gibt 1.2.840.113549.1.1.5 einen SHA-1-Hashingalgorithmus in Kombination mit dem RSA-Verschlüsselungsalgorithmus von RSA Laboratories an.
---------------------------------------------------------------------
-- Signature OID
---------------------------------------------------------------------
signature ::= AlgorithmIdentifier
AlgorithmIdentifier ::= SEQUENCE
{
algorithm OBJECT IDENTIFIER,
parameters ANY OPTIONAL
}
Emittent
Enthält die X.500 Distinguished Name (DN) der Zertifizierungsstelle, die das Zertifikat erstellt und signiert hat.
---------------------------------------------------------------------
-- Issuer name
---------------------------------------------------------------------
Name ::= SEQUENCE OF RelativeDistinguishedName
RelativeDistinguishedName ::= SET OF AttributeTypeValue
AttributeTypeValue ::= SEQUENCE
{
type OBJECT IDENTIFIER,
value ANY
}
Gültigkeit
Gibt das Zeitintervall an, in dem das Zertifikat gültig ist. Datumsangaben bis Ende 2049 verwenden das Format Koordinierte Weltzeit (Greenwich Mean Time) (yymmddhhmmssz). Datumsangaben ab dem 1. Januar 2050 verwenden das generalisierte Zeitformat (yyymmddhhmmssz).
---------------------------------------------------------------------
-- Validity period
---------------------------------------------------------------------
Validity ::= SEQUENCE
{
notBefore ChoiceOfTime,
notAfter ChoiceOfTime
}
ChoiceOfTime ::= CHOICE
{
utcTime UTCTime,
generalTime GeneralizedTime
}
Betreff
Enthält einen X.500-Distinguished-Namen der Entität, die dem öffentlichen Schlüssel zugeordnet ist, der im Zertifikat enthalten ist.
---------------------------------------------------------------------
-- Subject name
---------------------------------------------------------------------
Name ::= SEQUENCE OF RelativeDistinguishedName
RelativeDistinguishedName ::= SET OF AttributeTypeValue
AttributeTypeValue ::= SEQUENCE
{
type OBJECT IDENTIFIER,
value ANY
}
Öffentlicher Schlüssel
Enthält den öffentlichen Schlüssel und die zugehörigen Algorithmusinformationen.
---------------------------------------------------------------------
-- Subject public key information
---------------------------------------------------------------------
SubjectPublicKeyInfo ::= SEQUENCE
{
algorithm AlgorithmIdentifier,
subjectPublicKey BITSTRING
}
AlgorithmIdentifier ::= SEQUENCE
{
algorithm OBJECT IDENTIFIER,
parameters ANY OPTIONAL
}
Verwandte Themen