Openssl OID:值是十六进制编码的

Openssl OID:值是十六进制编码的,openssl,x509,Openssl,X509,我尝试解析X509发行者字符串。 由于某些原因,我不知道某些属性是在OID中编码的 例如 我的问题是关于最后一个。我很好,它没有名字,但与OID 但我不知道如何解释这个值。我希望每个字符是2位十六进制。但是前4个数字呢?这将是一些控制字符 4141505050将是我期望的值(AAAPPP) 但前4个字节(130e)的含义是什么 我没有找到OID十六进制值编码的任何定义 我伪造了隐私值-因此,如果它是一种校验和形式,它将被破坏 谢谢你的帮助 2.5.4.97是organizationIdentif

我尝试解析X509发行者字符串。 由于某些原因,我不知道某些属性是在OID中编码的

例如

我的问题是关于最后一个。我很好,它没有名字,但与OID

但我不知道如何解释这个值。我希望每个字符是2位十六进制。但是前4个数字呢?这将是一些控制字符

4141505050将是我期望的值(AAAPPP)

但前4个字节(130e)的含义是什么

我没有找到OID十六进制值编码的任何定义

我伪造了隐私值-因此,如果它是一种校验和形式,它将被破坏


谢谢你的帮助

2.5.4.97
organizationIdentifier
()的OID,OpenSSL将其打印为OID,因为它在OID到名称映射中没有该OID

我们假设
#
是OpenSSL ese,表示“这是原始数据,十六进制编码”。原始值是DER编码的值
0x13
标识这是一个(原始编码)可打印字符串。下一个字节(0x0E)表示它有14个字节长


由于您的
414141505050
只有6个字节长,因此我们假设您最初有一个较长的值。

如果您可以发布发行者值的精确二进制副本,那就更好了。听起来很合法。非常感谢!我可以问一下这是否有任何记录??谈到\#打印表单(它称为转储),它看起来像是设置了转储顺序标志。然后我们需要理解(证书),(BER/DER编码)和(ASN.1语言)。都在那里,只是。。。摊开。
CN=TEST,DN=my.test.com,O=My State,C=MS,2.5.4.97=#130e414141505050