我正在尝试使用 X509V3_EXT_conf_nid
函数将二进制数据嵌入到 otherName 字段。我在指定正确的 ASN1 类型时遇到问题。
当给出 otherName:0.4.0.127.0.7;OCT:AABB
时,结果是 41 41 42 42
,我猜这是提到的默认 ASCII 格式 here 。如果我希望 OpenSSL 将 AABB 解释为二进制值,我应该使用 HEX 选项。但无论我做什么,都没有效果。
使用all present FORMAT:HEX,OCT:AABB
给出错误:220A4093:X509 V3 例程:a2i_GENERAL_NAME:其他名称错误。
使用反复试验并使用诸如 HEX,OCT:AABB
或 OCT,HEX:AABB
之类的东西,不会出现“未知标签”和“不支持的选项”错误.
那么我应该怎么做才能说服 OpenSSL 接受所提供的数据?
也许值得一提的是,我通过 ManagedOpenSSL 包装器调用 OpenSSL 函数。
最佳答案
因此,在获得风滚草成就后,将其搁置一个月然后返回,我想我已经破解了它。
我使用了arbitrary extension 。当然,我必须知道如何为适当的 ASN1 结构构建 DER 格式,但这并不难。
如果有人发现这种方法存在缺陷,请告诉我。
关于openssl - 带有二进制值的SubjectAltName otherName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25889571/