转换&#34; emailAdress = <email-address>&#34;在x.509 SSL证书的Subject字段中找到十六进制

时间:2016-03-15 19:31:36

标签: ssl ssl-certificate x509 asn.1 der

我有一个&#39;主题的SSL x.509证书

Subject:    C=XX, ST=XX, L=XX, O=XX, OU=XX, emailAddress=admin@adobe.pw, CN=trustasia.asia

我希望将其转换为SSL证书中的二进制流,当它在线路上发送时,我知道定义主题字段在RFC-5280中以ASN.1表示法给出,DER编码规则在{{{ 3}}将这个字段转换为二进制表示,这两个文档并没有x.609的帮助(它提供了OID的十六进制表示,例如 id-at-countryName:2.5.4.6:{0x55, 0x04,0x06} )我能够将所有RDN( RelativeDistinguishedNames )转换为他们的二进制表示,但我坚持使用 emailAdress filds。 我发现它的 OID:1.2.840.113549.1.9.1 但不知道它是十六进制表示。

请您指导我如何将其转换为二进制表示。

2 个答案:

答案 0 :(得分:1)

我怀疑你是在谈论使用ASN.1可分辨编码规则(DER)的OID编码。我建议查看这篇文章以获取有关OBJECT_IDENTIFIER编码规则的详细信息:OBJECT IDENTIFIER

OID字符串值转换为ASN.1 DER将导致:

06 09 2A 86 48 86 F7 0D 01 09 01

其中,0x06 - 是OBJECT_IDENTIFIER标记标识符,0x09 - 编码的OID值长度(以字节为单位),其余字节(2A 86 48 86 F7 0D 01 09 01)表示OID二进制形式

答案 1 :(得分:1)

emailAddress的类型为IA5String,因此它将以与主题行中显示的格式相同的形式出现在证书中:'admin@adobe.pw'。