我有一个SSLX.509证书的'Subject'
Subject: C=XX, ST=XX, L=XX, O=XX, OU=XX, emailAddress=admin@adobe.pw, CN=trustasia.asia我想把它转换成二进制流,就像SSL证书在网上发送时发现的那样,我知道定义主题字段是用ASN.1符号在RFC-5280中给出的,x.609中给出的编码规则是为了将这个字段转换为二进制表示,这两个文档在代码(它给出了OID的十六进制表示,例如RDNs(RelativeDistinguishedNames) 0x04,0x06})的帮助下,能够将所有RDNs(RelativeDistinguishedNames)隐藏到二进制表示,但我被emailAdress文件困住了。我找到了它的OID:1.2.840.113549.1.9.1,但不知道它是什么十六进制表示。
你能告诉我如何把这个转化为二进制表示吗?
发布于 2016-03-15 20:04:55
我怀疑您所讨论的是使用ASN.1卓越编码规则(DER)的OID编码。我建议查看本文,以获得有关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二进制形式。
发布于 2016-03-16 10:34:01
emailAddress的类型是IA5String,因此它将以与主题行中显示的相同的形式出现在证书中:‘admin@adbe.pw’。
https://stackoverflow.com/questions/36020451
复制相似问题