c#8583_[.NET][C#]Parse ISO8583筆記(四)TLV

十幾年前傳統磁條卡片側錄盜刷事件層出不窮,當時高安全交易保護的晶片問世,ISO8583也依循著制定晶片規格的組織EMV增加了數十個晶片交易資訊欄位,按照ISO8583標準,晶片資訊在DE55,並以BER-TLV的規格(ISO8825)組成資料區塊,由於計算驗證ARQC/ARPC需要晶片交易欄位,我們要先Parse DE55。ISO8583 晶片交易欄位是按照BER-TLV的標準制定,BER全名為B...
摘要由CSDN通过智能技术生成

十幾年前傳統磁條卡片側錄盜刷事件層出不窮,當時高安全交易保護的晶片問世,ISO8583也依循著制定晶片規格的組織EMV增加了數十個晶片交易資訊欄位,按照ISO8583標準,晶片資訊在DE55,並以BER-TLV的規格(ISO8825)組成資料區塊,由於計算驗證ARQC/ARPC需要晶片交易欄位,我們要先Parse DE55。

ISO8583 晶片交易欄位是按照BER-TLV的標準制定,BER全名為Basic Encoding Rules,TLV全名則為Tag Length Value,簡單用下圖表示:

e4b353fb878890f354612fe1a6e00295.png

9F36代表EMV Tag: ATC 交易次數,02表示Value長度,0001則是Value,這邊要注意長度是實際長度而非16進位字串長度。

這邊我們注意到TLV Tag 第1個Byte 8bit內幾個特別的地方:

0ef1c5a341b49891dc81d1f477e384f8.png

前2個bit用來表示Tag class type:通用、應用、規範還是私用。

第3個bit 表示資料屬於基本還是結構。

後5個bit 若為11111,表示Tag name有2個Byte,例如我們剛剛舉的9F36 ATC的例子。

1. Par

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值