0

我一直在阅读 ASN.1 规范,但我不太确定 tag 在这个符号模式中到底做了什么,例如:

ETYPE-INFO-ENTRY ::= SEQUENCE {
etype [0] Int32,
salt [1] OCTET STRING OPTIONAL
}

在这个表示中,标签“0”和“1”传达了什么信息?本来以为标签可以作为字段数据类型的指示符,但好像不是,ASN.1规范说标签主要作为标签,有那么简单吗?从这个意义上说,我可以为字段分配任意标签编号,对吗?谢谢你。

4

1 回答 1

1

标签标识类型。从技术上讲,它们定义了类型,但以这种方式考虑它们可能没有帮助。

考虑有两个 INTEGER 类型的可选字段。如果它们只是使用 INTEGER 的标签进行编码,您将无法区分它们。通过在它们上放置独特的标签,您可以。

标记有点复杂,这不是尝试解释它们的最佳位置。我们的资源页面上列出了两本书,它们很有帮助。如果你用谷歌搜索它们,你可以在网上免费找到一些较早的(?)版本。它们应该可以帮助您更好地处理标签。

于 2011-11-01T13:12:15.397 回答