首先了解8583协议设计思想:
8583实际的报文结构:
根据上面的协议,手动解包的实例:
下面来段简单的报文,我给大家详细的解析一下(根据中国银联POS终端规范)
——————————————————————————————————
005f600003000200302044c020c08810210009000000000001005018998802100006
377689200010172645673d130820147800000000303130303030313230313130303
030303130303030303131353626000000000000000011260001100000
——————————————————————————————————
<00 5f>
报文总长度 95字节
<60 00 03 00 00>
TPDU
<02 00>
这个是信息类型(MTI),是一个四位的数字,这里为“0200”(请求)
传输时用BCD码表示即为“02h 00h”, 每位都有它的意义
第一位:8583 version number
第二位:message class
第三位:message sub-class
第四位:transction originator
下面开始位图的详细解释:
<30 20 44 c0 20 c0 88 10>---这里是16进制
重点来了:
先把它专为二进制
因为第一位3他的二进制为0011,第一位了0,表示没有扩展位图
这样就可以手动解包了!!!!
下面在再看个亲自动手解包【特别主要变成的处理】的例子: