银联Iso8583报文 POS终端报文结构

来源:互联网 发布:网络上的占豪是谁啊 编辑:程序博客网 时间:2024/06/02 12:41

终端则

(一)   基础知识

1byte = 8bit

1byte = 2个16进制数

BCD码:4位二进制数来表示1十进制数中的0~910个数码,即1bcd=4bit

(二)   报文结构

报文长度

TPDU头

报文头

应用数据

2字节16进制表示的报文长度(不包括本身)

5字节

12字节

交易数据(不定长度)

TPDU头 =  ID(60H) + 目的地址(N4) + 源地址(N4),长度为10字节,压缩时用BCD码表示为5个字节长度的数值。

报文头 = 应用类别定义(N2 )+软件总版本号(N2) + 终端状态(N1) + 处理要求 (N1)+ 软件分版本号(N6),总长度为12字节,压缩时用BCD码表示为6个字节长度的数值。

上面的参数值大家只需知道有这回事就行了,具体开发时参见开发文档对号入座

(三)   报文域属性和数据格式(以消费报文为例)

================================

 

[F002]type=[  LLVAR] len=[016]value=[6225561620345170]

[F003]type=[NUMERIC] len=[006] value=[280000]

[F004]type=[ AMOUNT] len=[012] value=[0.02]

[F011]type=[NUMERIC] len=[006] value=[7]

[F022]type=[NUMERIC] len=[003] value=[22]

[F025]type=[NUMERIC] len=[002] value=[82]

[F035]type=[  LLVAR] len=[037]value=[6225561620345170=17061010000015500000]

[F036]type=[ LLLVAR] len=[104] value=[996225561620345170=1561562915590002

170013300000010101017061=000000000000=00000=0000000622556155000004000]

[F037]type=[  ALPHA] len=[012]value=[110153000006]

[F041]type=[  ALPHA] len=[008] value=[05740001]

[F042]type=[  ALPHA] len=[015]value=[000000000000001]

[F049]type=[  ALPHA] len=[003] value=[156]

[F053]type=[NUMERIC] len=[016] value=[600000000000000]

[F064]type=[ BINARY] len=[064] value=[A99E90F8B08FEE85]

 

================================

16进制报文:

0173600003000060310031100402007020048038C08801166225561620345170280000000000000002000007022082376225561620345170D

1706101000001550000000104996225561620345170D1561562915590002170013300000010101017061D000000000000D00000D00000006

2255615500000400031313031353330303030303630353734303030313030303030303030303030303030313135360600000000000000

A99E90F8B08FEE85

青色背景:报文长度

黄色背景:TUDU头

红色背景:报文头

灰色背景:消息类型

绿色背景:bitmap位图,转成bit显示,

0111000000100000000001001000000000111000110000001000100000000001

“1”代表包含该位置的域

“0”代表不包含该位置的域

首位如果为0表示只有64bit,为1表示有128bit

 

如下解析图:

图图

(四)   密钥简介

(五)   PIN的加密与解密

(六)   MAC的加密

POS终端采用ECB的加密方式,简述如下:

A)     将欲发送给POS中心的消息中,从消息类型(MIT)到63域之间的部分构成MAC ELEMENT BLOCK(MAB)。

B)     使用ECB算法做加密,取前8个字节作为MAC值

1 0
原创粉丝点击