我很难理解 RDN (RelativeDistinguishedName) 中属性 (AttributeTypeAndValue) 的顺序。
以下是相关的 ASN.1 定义(取自www.in2eps.com):
TBSC证书
TBSCertificate ::= SEQUENCE {
[...]
subject Name,
[...]
}
Run Code Online (Sandbox Code Playgroud)
姓名
Name ::= CHOICE {
rdnSequence RDNSequence
}
Run Code Online (Sandbox Code Playgroud)
RDN序列
RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
Run Code Online (Sandbox Code Playgroud)
相对专有名称
RelativeDistinguishedName ::= SET SIZE (1 .. MAX) OF AttributeTypeAndValue
Run Code Online (Sandbox Code Playgroud)
属性类型和值
AttributeTypeAndValue ::= SEQUENCE {
type AttributeType,
value AttributeValue
}
Run Code Online (Sandbox Code Playgroud)
属性类型
AttributeType ::= OBJECT IDENTIFIER
Run Code Online (Sandbox Code Playgroud)
属性值
AttributeValue ::= ANY -- DEFINED BY AttributeType
Run Code Online (Sandbox Code Playgroud)
如果我创建了一个包含“/CN=CommonNameX/O=OrganizationX/...”(按照这个特定顺序)的 CSR,CA 如何从中构建证书?
将主题设置为“.../O=OrganizationX/CN=CommonNameX/”(以相反的顺序相同)时,将如何构建证书?
据我所知,在验证证书链时,RDN 属性的顺序很重要。因此,我假设一定有一些详细的规范可用?
更重要的是,我还想知道是否有不同的 CA 使用不同的顺序。如果是这样,有人可以指出一些 CA 吗?
编辑: …