我正在开发一个支持 EMV 卡的 POS 应用程序。我能够从 TLV 中的 Verifone MX 读卡器读取卡数据,但在将 TLV 数据解码为可读数据时遇到问题。
我能够将数据拆分为 TLV 标签及其值。结果值是十六进制而不是解码文本。
例子:
这是一个示例 TLV 数据(我在这里得到了这个示例 TLV 数据
6F2F840E325041592E5359532E4444463031A51DBF0C1A61184F07A0000000031010500A564953412044454249548701019000
当我在TLVUtil中检查此 TLV 时,我会以可读格式获取某些标签中的数据(如此处的标签 50)。
我可以在我的应用程序中获得的最接近的是:
Tag Value
50 56495341204445424954
4F A0000000031010
61 4F07A0000000031010500A56495341204445424954870101
6F 840E325041592E5359532E4444463031A51DBF0C1A61184F07A0000000031010500A56495341204445424954870101
84 325041592E5359532E4444463031
87 1
90
A5 BF0C1A61184F07A0000000031010500A56495341204445424954870101
BF0C 61184F07A0000000031010500A56495341204445424954870101
我想知道是否有任何方法可以识别需要从十六进制转换为字符串的某些标签,或者.Net 中是否有可以复制TLVUtil工具的 TLV 解析器和解码器。