ASN.1序列(OF)实际标记值

ASN.1序列(OF)实际标记值,asn.1,ber,Asn.1,Ber,我发现了很多关于序列(of)ASN.1数据类型的标签值的矛盾信息: 维基百科声称它同时是0x10和0x30: ->0x30 ->0x10 根据Microsoft的说法,它是0x30: 在Bouncycastle的资料中可以找到: public const int Sequence = 0x10; 所以它基本上是0x10和0x30之间的联系。您知道实际值是或我遗漏了什么吗?BER编码的“标记”由几个位字段组成: --------------------------------- | 8 | 7

我发现了很多关于序列(of)ASN.1数据类型的标签值的矛盾信息:

维基百科声称它同时是0x10和0x30:

->0x30

->0x10

根据Microsoft的说法,它是0x30:

在Bouncycastle的资料中可以找到:

public const int Sequence = 0x10;
所以它基本上是0x10和0x30之间的联系。您知道实际值是或我遗漏了什么吗?

BER编码的“标记”由几个位字段组成:

--------------------------------- | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | --------------------------------- |Class |P/C| Tag Number | --------------------------------- --------------------------------- | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | --------------------------------- |类别| P/C |位号| ---------------------------------
  • 序列(通用类中)的标记号为0x10
  • 序列是一种构造类型,使P/C位为1
  • 通用类是0
  • 这使得整个八位组为0x30
请注意,有许多方法可以在BER/DER/CER中对序列进行编码,这取决于使用的确切ASN.1。e、 g.某些协议可能会覆盖该类,并将一个序列指定为应用程序特定的类,和/或如果使用隐式标记,则可能会指定自己的标记号


您可以阅读BER编码规范

谢谢您的详细解释!