security - ASN.1 如何编码对象标识符?

标签 security encoding binary asn.1

我无法理解 ASN.1 的基本概念。

如果类型是 OID,相应的数字是否实际编码在二进制数据中?

例如在此定义中:

id-ad-ocsp         OBJECT IDENTIFIER ::= { id-ad 1 }

相应的 1.3.6.1.5.5.7.48.1 是否完全像这样编码在二进制文件中?

我问这个问题是因为我试图理解在 DER 文件(证书)中看到的特定值,即 04020500,但我不确定如何解释它。

最佳答案

是的,OID 被编码在二进制数据中。您提到的 OID 1.3.6.1.5.5.7.48.1 变为 2b 06 01 05 05 07 30 01 (前两个数字以单个字节编码,所有剩余的数字也以单个字节编码,因为它们都是小于 128)。

找到了 OID 编码的很好的描述 here .

但是分析 ASN.1 数据的最佳方法是将其粘贴到在线解码器中,例如http://lapo.it/asn1js/ .

关于security - ASN.1 如何编码对象标识符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5929050/

相关文章:

java - 禁用 Spring Security header 不起作用

c - 有符号整数加法,需要说明

c++ - 我如何将十进制转换为二进制?

php - Yii2 用户名密码加密

python - 对称整数到整数加密

security - 如何使 Bluemix VCAP_ID cookie 安全?

算法 : data binarization

r - 使用 R 进行序列长度编码

javascript - 最好使用的 JavaScript 文本编码是什么?

Python:将多个二进制列转换为单个分类列