基本フィールド

X.509 バージョン 1 証明書には、次のフィールドが含まれています。 バージョン 2 のフィールドについては、バージョン 2 のフィールドで説明されています。 バージョン 3 のフィールドについては、バージョン 3 拡張機能ので説明します。

バージョン

エンコードされた証明書のバージョン番号を指定します。 現在、このフィールドの使用可能な値は 0、1、または 2 ですが、将来拡張される可能性があります。

---------------------------------------------------------------------
-- Version number. Currently, this can be 0, 1, or 2.
---------------------------------------------------------------------
CertificateVersion ::= INTEGER {v1(0), v2(1), v3(2)}

シリアル番号

証明機関 (CA) によって証明書に割り当てられた正の一意の整数が含まれています。

---------------------------------------------------------------------
-- Certificate serial number
---------------------------------------------------------------------
CertificateSerialNumber ::= INTEGER

署名アルゴリズム

CA が証明書に署名するために使用するアルゴリズムを指定する オブジェクト識別子 (OID) が含まれています。 たとえば、1.2.840.113549.1.1.5 では、SHA-1 ハッシュ アルゴリズムと RSA ラボラトリーの RSA 暗号化アルゴリズムを組み合わせて指定します。

---------------------------------------------------------------------
-- Signature OID
---------------------------------------------------------------------
signature ::= AlgorithmIdentifier

AlgorithmIdentifier ::= SEQUENCE 
{
  algorithm           OBJECT IDENTIFIER,
  parameters          ANY OPTIONAL    
}

発行者

証明書を作成して署名した CA の X.500 識別名 (DN) が含まれます。

---------------------------------------------------------------------
-- Issuer name 
---------------------------------------------------------------------
Name ::= SEQUENCE OF RelativeDistinguishedName

RelativeDistinguishedName ::= SET OF AttributeTypeValue

AttributeTypeValue ::= SEQUENCE 
{
  type       OBJECT IDENTIFIER,
  value      ANY 
}

有効

証明書が有効な期間を指定します。 2049 年末までの日付は、協定世界時 (グリニッジ標準時) 形式 (yymmddhhmmssz) を使用します。 2050 年 1 月 1 日以降の日付は、一般化された時刻形式 (yyyymmddhhmmssz) を使用します。

---------------------------------------------------------------------
-- Validity period 
---------------------------------------------------------------------
Validity ::= SEQUENCE 
{
  notBefore           ChoiceOfTime,
  notAfter            ChoiceOfTime
}

ChoiceOfTime ::= CHOICE 
{
  utcTime                 UTCTime,
  generalTime             GeneralizedTime
}

件名

証明書に含まれる公開キーに関連付けられているエンティティの X.500 識別名が含まれています。

---------------------------------------------------------------------
-- Subject name 
---------------------------------------------------------------------
Name ::= SEQUENCE OF RelativeDistinguishedName

RelativeDistinguishedName ::= SET OF AttributeTypeValue

AttributeTypeValue ::= SEQUENCE 
{
  type       OBJECT IDENTIFIER,
  value      ANY 
}

公開キー

公開キーと関連するアルゴリズム情報を格納します。

---------------------------------------------------------------------
--  Subject public key information
---------------------------------------------------------------------
SubjectPublicKeyInfo ::= SEQUENCE 
{
  algorithm           AlgorithmIdentifier,
  subjectPublicKey    BITSTRING
}

AlgorithmIdentifier ::= SEQUENCE 
{
  algorithm           OBJECT IDENTIFIER,
  parameters          ANY OPTIONAL    
}

バージョン 2 のフィールド

バージョン 3 拡張機能の

X.509 公開キー証明書