8583报文

【8583】ISO8583报文解析

只愿长相守 提交于 2019-12-05 17:13:40
ISO8583报文(简称8583包)又称8583报文,是一个国际标准的包格式,最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。 【报文格式】 POS终端上送POS中心的消息报文结构包括TPDU、报文头和应用数据三部分: TPDU : 长度为10个字节,压缩时用BCD码表示为5个字节长度的数值。 报文头 : 总长度为12字节,压缩时用BCD码表示为6个字节长度的数值。 在POS上送的请求/通知报文中,该数值由POS终端应用程序在打包上送时根据POS终端参数和当前状态填入应用类别、软件总版本号、终端状态和软件分版本号(具体指各厂商的程序版本号),用于POS中心根据数值进行相应的处理。 在POS中心返回的应答报文中,由POS中心填入处理要求,其他域保持原值返回,POS将根据收到报文头中的处理要求进行相应处理。 ISO8583Msg : ISO8538的内容。 参考摘录: https://www.2cto.com/kf/201607/528427.html https://www.cnblogs.com/yiyi16801/p/7442316.html 来源: https://www.cnblogs.com/utank/p/11935792.html

ISO8583报文协议-入门

匿名 (未验证) 提交于 2019-12-02 23:48:02
https://blog.csdn.net/yuan_hong_wei/article/details/49148721 , 感谢原作者! 我刚进入金融行业时,就知道了IS08583报文协议,我想可能我还没进入这个行业都已经听过了,可知ISO8583的影响力有多大了。最初刚接触它时,确实对其中的一些细节概念不是很清晰,对有些地方比较迷惑。鉴于此,我想很多同行也必然会经历同样得阶段,所以我写下本文,以便大家能够少走一些弯路。同时,我在网上( http://blog.csdn.net/lysheng/archive/2005/03/03/309914.aspx )写下我要写“全面掌握ISO8583报文”和“符合CEN/XFS(即WOSA/XFS)规范的SP编写”两篇文章时,很多人都询问我什么时候能够写出来,可知许多人是需要了解这方面的知识的,即使我时间不是很多,也得尽量将这两篇文章写出来,给需要的人提供一些参考。 1、 我怎么知道每个字段的数据类型呢,是数字还是字符? 2、 每个传送的报文都把128个字段都传过去,那网络带宽能够承受得了,有时候我可能只需要其中5个字段,结果多收到了123个无用的字段。 3、 如果我某些字段的长度不固定,属于变长怎么办,因为你现在解包是当作数据包每个字段都是固定的,用C语言解包时直接依靠指针取固定长度的一串字符做为一个字段。 bi t

8583协议理解

坚强是说给别人听的谎言 提交于 2019-11-30 03:19:37
ISO8583报文(简称8583包)又称8583报文是一个国际标准的包格式,最多由128个字段域组成,每个域都有统一的规定,并有定长与变长之分。 8583包前面一段为位图,用来确定包的字段域组成情况。 参考文档 其中位图是8583包的灵魂,它是打包解包确定字段域的关键,而了解每个字段域的属性则是填写数据的基础。在POS机的开发上时经常要用到,例如回头客会员管理系统在POS机上的应用就是采用8583报文。 报文的类型有很多种,比如:sale,reversal,settlement等等,不同的类型组包也是不一样的, 下面是“消费”类型报文的测试和组8583报文的过程,针对我们日常使用POS机系统来说的,这里主要是模拟的POS终端发向POSP系统的8583报文。其基本业务流程图如下所示 基础知识: 1byte = 8bit 1byte = 2个16进制数 2个字节=1个字符 BCD码:用4位二进制数来表示1位十进制数中的0~9这10个数码,即1bcd码=4bit 报文结构: TPDU头 = ID(60H) + 目的地址(N4) + 源地址(N4),长度为10字节,压缩时用BCD码表示为5个字节长度的数值。 报文头 = 应用类别定义(N2 )+软件总版本号(N2) + 终端状态(N1) + 处理要求 (N1)+ 软件分版本号(N6),总长度为12字节