keytool を使用して、このサブジェクトで x509 証明書を作成します。
CN=alice、OU=Demo Client、O=myCompany、L=Site1、ST=wll、C=nz
しかし、CSR を作成してエントリに署名した後 (「openssl ca」を使用)、「O」と「L」が突然逆になります。
CN=alice、OU=Demo Client、L=Site1、O=myCompany、ST=wll、C=nz
両方の科目は同じと見なされますか? それとも順番が大事?
keytool を使用して、このサブジェクトで x509 証明書を作成します。
CN=alice、OU=Demo Client、O=myCompany、L=Site1、ST=wll、C=nz
しかし、CSR を作成してエントリに署名した後 (「openssl ca」を使用)、「O」と「L」が突然逆になります。
CN=alice、OU=Demo Client、L=Site1、O=myCompany、ST=wll、C=nz
両方の科目は同じと見なされますか? それとも順番が大事?
サブジェクト識別名 (DN) が CSR および証明書でどのようにエンコードされているかによって、それらは同じである場合と異なる場合があります。DN は X.501 タイプとして定義されName
ます。RFC 5280から:
Name ::= CHOICE { -- only one possibility for now --
rdnSequence RDNSequence }
RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
RelativeDistinguishedName ::=
SET SIZE (1..MAX) OF AttributeTypeAndValue
AttributeTypeAndValue ::= SEQUENCE {
type AttributeType,
value AttributeValue }
AttributeType ::= OBJECT IDENTIFIER
AttributeValue ::= ANY -- DEFINED BY AttributeType
distinguishedNameMatch
ルールは RFC 5280 セクション 7.1 で定義されています(強調は私のものです)。
2 つのネーミング属性が一致するのは、属性の型が同じであり、文字列準備アルゴリズムで処理した後に属性の値が完全に一致する場合です。 2 つの相対識別名 RDN1 と RDN2 が同じ数の命名属性を持ち、RDN1 の各命名属性に対して一致する命名属性が RDN2 にある場合、それらは一致します。DN1 と DN2 の 2 つの識別名は、RDN の数が同じである場合に一致します。DN1 の各 RDN には一致する RDN が DN2 にあり、一致する RDN は両方の DN で同じ順序で表示されます。識別名 DN1 が識別名 DN2 によって定義されるサブツリー内にあるのは、DN1 に少なくとも DN2 と同じ数の RDN が含まれており、DN1 の末尾の RDN が無視される場合に DN1 と DN2 が一致する場合です。
組織(O) および場所(L) 属性が、CSR と証明書の両方のサブジェクト DN に設定された同じ相対識別名に表示され、他のすべてが等しい場合、DN は等しい。それらが異なる RDN にある場合は、RDN の順序が変更されているため、DN が異なります。