【发布时间】:2014-01-27 14:27:05
【问题描述】:
我想知道simple TLV和BER TLV的具体区别
为什么 BER TLV 5F05 05 48656C6C6F 无效,因为在 BER TLV 中标签可以有一个或多个连续字节???
也请举一些例子..
【问题讨论】:
标签: iso
我想知道simple TLV和BER TLV的具体区别
为什么 BER TLV 5F05 05 48656C6C6F 无效,因为在 BER TLV 中标签可以有一个或多个连续字节???
也请举一些例子..
【问题讨论】:
标签: iso
BER 表示允许携带其他 TLV 的载体
BER-TLV 数据对象包含 (TL (TLV) (TLV) 和一个标签字段,后跟一个编码数字的长度字段。 模板由一个或多个 BER-TLV 数据对象组成,每个数据对象由一个标签字段、一个编码数字的长度字段以及如果数字不为零,则包含一个值字段。
如果不清楚,请随时与我联系。
问候 阿努普
【讨论】:
我想再补充一件与我的问题相关的事情 -
为什么 BER TLV 5F05 05 48656C6C6F 无效,因为在 BER TLV 中标签可以有一个或多个连续字节???
答案是-
与 BER TLV 一样,标签字段可以按以下方式构造: (ISO/IEC 7816 支持一、二、……最多五个字节的长度字段)
如果标签长度为 1 字节,则有效值可以是 - “00”到“7F”
如果标签长度为 2 个字节,则有效值可以是 - “81”(第一个字节)和“00”到“FF”(第二个字节)
如果标签长度为 3 个字节,则有效值可以是 - “82”(第 1 个字节)和“0000”到“FFFF”(第 2 + 3 个字节)
如果标签长度为 4 个字节,则有效值可以是 - “83”(第 1 个字节)和“000000”到“FFFFFF”(第 2+3+4 个字节)
如果标签长度为 5 个字节,则有效值可以是 - “84”(第 1 个字节)和“00000000”到“FFFFFFFF”(第 2+3+4+5 个字节)
因此,在 BER TLV 5F05 05 48656C6C6F -> 标签的长度为 2 字节 (5F05) 这是错误的,因为如果标签的长度为 2 字节,那么它的第一个字节必须是“81”,第二个字节可以是任何在“00”到“FF”的范围内。
如有疑问,请随时询问。
【讨论】: