【问题标题】:OID: value is hex-codedOID:值是十六进制编码的
【发布时间】:2017-11-15 18:43:17
【问题描述】:

我尝试解析 X509-issuer-string。 由于我不知道某些属性是用 OID 编码的原因。

例如

CN=TEST,DN=my.test.com,O=My State,C=MS,2.5.4.97=#130e414141505050

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

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

414141505050 将是我期望的值 (AAAPPP)。

但是前4个字节(130e)是什么意思??

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

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

感谢您的帮助!

【问题讨论】:

  • 如果您可以发布颁发者值的精确二进制副本会更好。

标签: openssl x509


【解决方案1】:

2.5.4.97organizationIdentifier (http://oid-info.com/get/2.5.4.97) 的 OID,OpenSSL 将其打印为 OID,因为它在 OID 名称映射中没有它。

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

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

【讨论】:

猜你喜欢
  • 2016-04-17
  • 2019-11-22
  • 2023-01-29
  • 2013-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-20
相关资源
最近更新 更多