初识8583协议

作者: 夜远曦白 | 来源:发表于2017-03-18 14:26 被阅读149次

好长时间没来简书总结笔记了,源于新入职适应环境要学很多东西,有点小忙,当然这也是为自己的懒惰找的借口啦,哈哈~

近来熟悉业务在看销售点终端(POS)应用规范,于是接触到了8583报文协议,来做点笔记。

8583协议是基于ISO8583报文国际标准的包格式的通讯协议,多用于POS开发,它就是一种解决金融系统之间的报文交换的协定,各个计算机设备之间通过网络来传送来交换数据,这些数据都是基于0或1这样的二进制数,8583协议等于就是对这类数据进行编码,方便人们理解这些数据的含义。

8583包最多由128个字段域组成,就是表示金融行业涉及的数据内容,比如说账户、交易类型、交易金额、密码、交易日期、时间、商户等等的数据内容,当然,每个字段域都是有统一的规定的,规定好顺序排起来一一对应的。并且这些字段域有定长与变长之分,变长的字段域数据规定了前面几位表示长度描述,还有数据类型都已经规定,如字母、数字、特殊字符、年月日等时间、二进制数据等这类。

8583包前面一段报文头为位图,用来确定包的字段域组成情况,因为有的时候,我们并不需要128个字段,而只需要其中几组字段数据,就用位图来表示后面的数据是哪几组字段数据。由于128个字段域确实很多,所以ISO8583把最最常用的字段都放到了前64个字段中,然后规定位图中的第一位如果为“1”,表示使用扩展位图(128个域),否则就使用基本位图(64个域),如使用某数据域,就在位图中相应的位设为“1”。

如使用41域,需将位图的41位设为'1'。

(64个域)0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1000 0000 0000 0000 0000 0000
第41位为1

理解了以上,就是按照8583的规定进行初始化,打包,解包,得到某域的值,然后写业务了。下面记录一些规范定义内容。

数据类型

POS终端与POS中心之间的交换消息中,各数据元类型如下所列:
——A 字母向左靠,右部多余部分填空格。
——AN 字母和/或数字,左靠,右部多余部分填空格。
——ANS 字母、数字和/或特殊符号,左靠,右部多余部分填空格。
——AS 字母和/或特殊符号,左靠,右部多余部分填空格。
——B 二进制bit位。
——DD 日。
——hh 时。
——LL 可变长域的长度值(二位数)。
——LLL 可变长域的长度值(三位数)。
——MM 月。
——mm 分。
——N 数值,右靠,首位有效数字前充零。若表示金额,则最右二位为角分。
——S 特殊符号。
——ss 秒。
——VAR 可变长域。
——X 借贷符号,在数值之前,D表示借,C表示贷。
——YY 年。
——Z 由ISO 7811和ISO 7813制定的磁条卡第二、三磁道的数据类型。
——CN BCD压缩编码数值。

对可变长数据元,以下例说明:

  • 变量XYZ的数据类型为ANS...999(LLLVAR),则表示:该变量中可含字母、数字和特殊符号,最长不超过999个字符,长度由三位数字确定。
  • 变量XYZ的数据类型为N...999(LLLVAR),则在压缩时,其长度位用右靠的BCD码压缩,而其后紧随的数字内容用左靠的BCD码压缩。这是为了保证有效内容和其位数中间无缺省填充值。若不为偶数位,左靠的数字内容后补零。由于有长度位表征该域有效内容的长度,因此后补零不会改变该域的真实值。

注:本文档中声明的压缩变量属性是针对POS终端与POS中心之间的消息,POS中心与任何金融机构之间的消息将全部采用ASCII码且不压缩的格式。

ISO8583域说明

截图取自网络 截图取自网络 截图取自网络 截图取自网络 截图取自网络 截图取自网络 截图取自网络 截图取自网络 截图取自网络
Paste_Image.png 截图取自网络

其他每个域的具体描述还是见文档吧,比较详细点。最近感觉大脑都 不够用了,要学的东西太多了,接触了不少新东西,感觉很受益,都得多做笔记总结才行呢。好好加油啦!

相关文章

  • 初识8583协议

    好长时间没来简书总结笔记了,源于新入职适应环境要学很多东西,有点小忙,当然这也是为自己的懒惰找的借口啦,哈哈~ 近...

  • 8583报文协议

    最开始的时候,金融系统只有IBM这些大的公司来提供设备,像各种主机和终端等等,在各个计算机设备之间,需要交换数据。...

  • HTTP学习笔记

    HTTP初识 HTTP协议是超文本传输协议(Hyper Text Transfer Protocol)的缩写,是用...

  • 09http初识_HTTP协议结构_关于HTTP请求GET和PO

    一、http初识(一)HTTP协议简介超文本传输协议(英文:Hyper Text Transfer Protoco...

  • 浅谈web server以及httpd的实现方式

    初识HTTP协议 HTTP(hyper text transfer protocal)作为互联网应用最广泛的协议...

  • 网络协议初识

    协议三要素语法:内容要符合一定的规则和格式语义:内容代表某种意义顺序:先做什么后做什么 网络协议的层级划分层级协议...

  • xmpp协议初识

    XMPP简介 XMPP协议简介 XMPP协议(Extensible Messaging and PresenceP...

  • TCP协议初识

    一、TCP概念 传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的...

  • 读书笔记第一周(10.3)

    每周的文档阅读 Swift 2.0之初识面向协议编程 Swift 2.0 支持协议扩展((protocol ext...

  • 2019-01-22 微信登录授权方法

    链接:https://blog.csdn.net/qq_15764943/article/details/8583...

网友评论

本文标题:初识8583协议

本文链接:https://www.haomeiwen.com/subject/tibogttx.html