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码且不压缩的格式。

时间: 2024-07-28 17:30:14

iso8583报文自学笔记的相关文章

斯坦福大学机器学习(Andrew [email protected])--自学笔记

今天学习Andrew NG老师<机器学习>之6 - 6 - Advanced Optimization,做笔记如下: 用fminunc函数求代价函数最小值,分两步: 1.自定义代价函数 function [jVal,gradient] = costFunction(theta)jVal = (theta(1)-5)^2 + (theta(2)-5)^2;gradient = zeros(2,1);gradient(1) = 2*(theta(1)-5);gradient(2) = 2*(the

(转载)解析ISO8583报文实例

本篇文章参考了中国银联POS终端规范,所以如有不明白的可以去我的资源里面下载. 现在我们有ISO8583报文如下(十六进制表示法): 60 00 03 00 00(前五个字节为TPDU) 60 31 00 31 07 30(报文头占用六个字节) 02 00(应用数据占用2个字节) 30 20 04 C0 20 C0 98 11(8个字节是位图) 00 00 00 00 00 00 00 00 01 00 03 49 02 10 00 12 30 62 25 82 21 12 99 63 01 5

CSS自学笔记(3):CSS样式表的使用

当浏览器读到一个样式表时,浏览器会根据这个样式表来格式化html文档,从而表现出各式各样的网页. 想要浏览器读到样式表,有三种方法: 1.外部样式表 外部样式表可以理解为.CSS文件.当多个页面使用同一个样式的时候,外部样式表是一个很理想的选择. 在使用外部样式表的情况下,可以通过改变一个文件来改变整个站点的外观,无需在调整html文件,尤其是多个页面使用同一个样式的时候. 每个html页面使用标签<link>来连接外部样式表: <head> <link rel="

python自学笔记

python自学笔记 python自学笔记 1.输出 2.输入 3.零碎 4.数据结构 4.1 list 类比于java中的数组 4.2 tuple 元祖 5.条件判断和循环 5.1 条件判断 5.2 循环 6.使用dict和set 6.1 dict 6.2 set 7.函数的使用 7.1函数返回多个值,同时接受多个值 7.2函数参数的默认值 7.3可变参数的函数 7.4可变个数带参数名的入参 7.5参数类型组合 8.关于函数递归 9.python的高级特性 9.1切片 9.2遍历 9.3列表生

CSS自学笔记(5):CSS的样式

CSS中拥有各种各样的样式表,而基本的样式有背景,文本,字体,链接,列表,表格,轮廓. 一.CSS-背景 CSS中允许用纯色背景,也允许用图片来创建复杂的个性背景. p {background-color: #000;} 是用纯色作为背景.这时你可以定义其他属性,生成不同效果的背景. CSS中也可以用图片作为背景,这是就需要使用background-image属性了,如果属性值为一个URL值,并且图片文件存在,那么就可以看到用该图片做为背景的网页了 body {background-image:

Android自学笔记-16-任务栈

题目链接:http://acm.fzu.edu.cn/problem.php?pid=2170 贴个baka爷的代码留念.. 数据出的有问题,输入的字符串长度不超过1000 #include<iostream> #include<cstdio> #include<cstring> #include<string> #include<algorithm> #include<map> #include<queue> #incl

Hadoop自学笔记(一)常见Hadoop相关项目一览

本自学笔记来自于Yutube上的视频Hadoop系列.网址: https://www.youtube.com/watch?v=-TaAVaAwZTs(当中一个) 以后不再赘述 自学笔记,难免有各类错误纰漏.请看者谨慎. Hadoop的使用还有大数据时代什么的就不说了.Hadoop不是一个单独的工具,而是一整个生态系统.包括一系列工具.所以首先要先介绍一下Hadoop相关的工具和各类概念,是以后经常会接触到的. 1. Hadoop Core a) HDFS  Hadoop分布式文件系统,Hadoo

jQuery:自学笔记(5)——Ajax

jQuery:自学笔记(5)--Ajax 使用Ajax快捷函数 说明 出于简化AJAX开发工作的流程,jQuery提供了若干了快捷函数. 实例 1.显示 test.php 返回值(HTML 或 XML,取决于返回值). $.get("test.php", function(data){   alert("Data Loaded: " + data); }); 2.向页面 test.php 发送数据,并输出结果(HTML 或 XML,取决于所返回的内容): $.pos

jQuery:自学笔记(2)——jQuery选择器

jQuery:自学笔记(2)--jQuery选择器 基本选择器 说明 jQuery的基本选择器与CSS的选择器相似: 实例 标签选择器 //使用标签选择器更改字体大小 $(div).css('font-size','18px') ID选择器 //使用id选择器改变背景颜色 $('#div1').css('background','red'); 说明:ID选择器中,ID前面必须加一个#,以表明这是一个jQuery的ID选择器. 类选择器 //使用类选择器设置字体样式 $('.spanclass')