1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > ISO8583报文格式分析

ISO8583报文格式分析

时间:2024-06-27 10:49:04

相关推荐

ISO8583报文格式分析

直接上例子.一段8583报文.

"02 00 70 20 00 00 20 C0 82 00 19 06 20 51 32 00 00 00 02 61 20 60 00 00 00 00 00 02 00 00 00 00 73 37 06 20 51 32 00 00 00 02 61 20 d1 91 12 01 00 00 00 00 00 30 30 30 30 31 31 31 31 31 30 32 32 35 30 31 35 33 31 31 31 31 31 31 01 56 00 44 9f 26 08 92 b6 ae 9a 9b 10 2e d6 9f 27 01 80 9f 10 13 07 01 01 03 a0 a0 10 01 0a 01 00 00 00 10 37 51 3a 22 be"

这是一串实际传输的报文, 上面显示的是这些数据的16进制表示. 你准备好了吗,我要开始分析了.

<02 00> 这个是信息类型(MTI), 是一个四位的数字, 这里为"0200", 传输时用BCD表示即为"02h,00h"(如果用ASCII呢?看看上面的内容). 这个四位数字,每一位都有它的意义, 第一位:8583 version number 第二位:message class 第三位:message sub-class 第四位:transaction originator 就不翻译了,毕竟本来就是老外的东西, 自己理解吧.

<70 20 00 00 20 C0 82 00> bit map域, 指示哪些域存在, 我们用windows自带的计算器计算出它对应的二进制是111000000100000000000000000000000100000110000001000001000000000, 由此可以看出下面几个域存在:2, 3, 4, 11, 35, 41, 42, 49, 55.

<19 06 20 51 32 00 00 00 02 61 20> field 2, 账号, n..19, LLVAR, 一字节表示长度(19), 账号是19位, 前面补0后, 用10字节BCD表示.

<60 00 00> field 3, 处理码, n6, 定长, 用3字节BCD表示

<00 00 00 02 00 00> field 4, 交易金额, n12, 定长, 用6字节BCD表示, 这里的金额是200.00元

<00 00 73> field 11, 流水号, n6, 定长, 用3字节BCD表示.流水号为"000073".

<37 06 20 51 32 00 00 00 02 61 20 d1 91 12 01 00 00 00 00 00> field 35, 二磁道数据, z..35, LLVAR, 一字节表示长度(37), 后面是19字节BCD表示的磁道数据

<30 30 30 30 31 31 31 31> field 41, 终端号, ans8, 定长, ASCII表示, 这里终端号为"00001111"

<31 30 32 32 35 30 31 35 33 31 31 31 31 31 31> field 42, 商户号, ans15, 定长, ASCII表示, 这里商户号为"102250153111111"

<01 56> field 49, 货币代码, n3, 定长, 前面补0后,用两字节BCD表示, 这里货币代码为"156"

<00 44 9f 26 08 92 b6 ae 9a 9b 10 2e d6 9f 27 01 80 9f 10 13 07 01 01 03 a0 a0 10 01 0a 01 00 00 00 10 37 51 3a 22 be> field 55, 这是IC卡交易的相关数据, 最大长度是255, 这一域用的IC卡数据一般在PBOC/EMV规范里 都有自己的定义(包括格式), 所以,一般在报文里的格式跟它们在PBOC/EMV里定义的一致.一般是TLV(tag+lenght+value)表示一个数据.简单介绍一下数据的意义. "00 44":长度, 表示44个字节 "9f 26 08 92 b6 ae 9a 9b 10 2e d6":应用密文(application cryptogram), TLV, b8 "9f 27 01 80":密文信息数据(cryptogram information data), TLV, b1

"9f 10 13 07 01 01 03 a0 a0 10 01 0a 01 00 00 00 10 37 51 3a 22 be": 发卡行应用数据(issuer application data), TLV, 变长,最大32字节,b..32.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。