1. ホーム
  2. certificate

証明書サブジェクト X.509

2023-09-09 22:23:31

質問

X.509によると、証明書にはsubjectという属性があります。

C=US、ST=Maryland、L=Pasadena、O=Brent Baccala、OU=FreeSoft,
CN=www.freesoft.org/[email protected]

これは典型的な件名の値です。問題は、これらの属性(C、ST、L、O、OU、CN)のタイプ(またはタグ)とその形式が何であるかということです。

どのように解決するのですか?

IETF PKIX (最新版 RFC 5280 ) は、証明書のためのよく受け入れられたプロファイルです。4.1.2.4項より、以下のフィールドをサポートする必要があります(括弧内はOpenSSLのロングネームとオプションのショートネームです)。

  • 国 (countryName、C)。
  • 組織(organizationName、O)。
  • 組織単位(organizationalUnitName、OU)。
  • 識別名修飾子 (dnQualifier)。
  • 州または県名 (stateOrProvinceName、ST)。
  • 一般名 (commonName、CN) および
  • シリアル番号(serialNumber)。

対応すべき要素の一覧もあります。

  • locality (地域性、L)。
  • title (タイトル)。
  • surname (surName、SN) です。
  • 与えられた名前(givenName、GN)。
  • イニシャル (initials)。
  • ペンネーム (仮名) および
  • 世代修飾子(generationQualifier)です。

値はUTF8StringまたはPrintableString(一部はPrintableStringのみ、例外的にIA5String)でエンコードされる必要があります。また、規格ではすべてのフィールドタイプについて最大長が定められています(付録A.1)。

互換性の理由から、実装はIA5Stringでエンコードされたドメインコンポーネント(domainComponent, DC)もサポートしなければならない。電子メール (emailAddress) とそのエンコーディング (IA5String, しかしそれはDNでは非推奨とされています (それはSubject Alternative Name extensionにあるべきです)) に注意が向けられているのです。