zoukankan      html  css  js  c++  java
  • iso8583报文自学笔记

    一、8583报文组成

    TPDU

    报文头

    应用数据

    ISO8583 Msg

    ID

    目的

    地址

    源地址

    应用类别定义

    软件

    总版本号

    终端

    状态

    处理

    要求

    保留使用(软件分版本号)

    交易数据

    60H

    NN NN

    NN NN

    N2

    N2

    N1

    N1

    N6

    不定长度

    2字节的报文长度+5字节的tpdu+6字节的报文头+2字节的应用数据说明+(第14字节为位图的第一位,第14位若小于8,位图8字节,若大于等于8,位图16个字节)+各个域。

    二、tpdu详解

    TPDU:长度为5个字节,共10位编码,前两位为TPDN ID 一般为“60”,中间4位为TPDU 目的地址,最后4位为TPDU 源地址为“0000”,默认值为“6000030000”。

    三、报文头详解

    总长度为12字节,压缩时用BCD码表示为6个字节长度的数值

    1、应用类别定义:

    60:磁条卡金融支付类

    61:IC卡金融支付类

    62:磁条卡增值业务类支付

    63:IC卡增值业务类支付

    2、软件版本号

    软件版本号

    说   明

    10

    2001年人民银行POS规范之前版本

    11

    2001年人民银行POS规范版本

    21

    2002年银联POS规范版本

    22

    2004年银联POS规范版本

    3、终端状态

    终端状态

    含义

    0

    正常交易状态

    1

    测试交易状态

     
    4、处理要求

    处理要求编码

    处理要求说明

    0

    无处理要求

    1

    下传终端磁条卡参数

    2

    上传终端磁条卡状态信息

    3

    重新签到

    4

                                                   通知终端发起更新公钥信息操作

    5

    下载终端IC卡参数

    6

    TMS参数下载

    5、保留使用:暂时不用,填全“0”。
    四、应用数据详解
    所有域使用查看《中国银联pos终端规范》。
    五、符号定义

    ——     M   强制域(Mandatory),此域在该消息中必须出现否则将被认为消息格式出错。

    ——     C   条件域(Conditional),此域在一定条件下出现在该消息中,具体的条件请参考备注说明。

    ——     O   选用域(Optional),此域在该消息中由发送方自选。。

    ——     Space   此域在该种消息中不出现。

    ——     A       字母a-z

    ——     n       数字0-9

    ——     s       特殊字符

    ——     an      字母和数字字符

    ——     ans     字母、数字和特殊字符

    ——     MM      月

    ——     DD      日

    ——     YY      年

    ——     hh      小时

    ——     mm      分

    ——     ss      秒

    ——     LL      允许的最大长度为99

    ——     LLL     允许的最大长度为999

    ——     VAR     可变长度域

    ——     b       数据的二进制表示,后跟数字表示位(bit)的个数

    ——     B       用于表示变长的二进制数,后跟数字表示二进制数据所占字节(Byte)的个数

    ——     z       按GB/T 15120和GB/T 17552的2、3磁道编码

    cn          BCD压缩编码数值
    六、对可变长数据元,以下例说明:

    ——     变量XYZ的数据类型为ANS...999(LLLVAR),则表示:该变量中可含字母、数字和特殊符号,最长不超过999个字符,长度由三位数字确定。

    ——     变量XYZ的数据类型为N...999(LLLVAR),则在压缩时,其长度位用右靠的BCD码压缩,而其后紧随的数字内容用左靠的BCD码压缩。这是为了保证有效内容和其位数中间无缺省填充值。若不为偶数位,左靠的数字内容后补零。由于有长度位表征该域有效内容的长度,因此后补零不会改变该域的真实值。

    本文档中声明的压缩变量属性是针对POS终端与POS中心之间的消息,POS中心与任何金融机构之间的消息将全部采用ASCII码且不压缩的格式。
     
     
     
     
  • 相关阅读:
    Android启动过程介绍
    第九届蓝桥杯Java B组
    二分模板和区别
    第十届蓝桥杯Java B组
    2019 ICPC Asia Nanjing Regional(现场赛)
    PAT 甲级 1057 Stack
    P1972 [SDOI2009]HH的项链
    Python中的字典排序
    Comet OJ
    ekmp模板
  • 原文地址:https://www.cnblogs.com/anderson0/p/4777819.html
Copyright © 2011-2022 走看看