一种POS终端ISO8583报文测试方法及模拟后台挡板系统与流程

文档序号:20193756发布日期:2020-03-27 19:55阅读:1478来源:国知局
一种POS终端ISO8583报文测试方法及模拟后台挡板系统与流程

本发明涉及终端金融交易的报文及后台系统,具体是一种pos终端iso8583报文测试方法及模拟后台挡板系统。



背景技术:

金融行业的业务包括有关金融交易的电子信息交换。应用规范的约定通常局限在专业级别上。iso8583国际标准设计了一个保证在采用不同应用规范的系统间能进行信息交换的规范,在金融行业的各系统广泛应用,各应用系统的设计者可享有安全的灵活性。金融交易中,不同的银行网络系统,采用不同的iso8583规范标准。所有需要接入银行系统的pos终端,都需要遵循各银行自己定义的iso8583报文规范。



技术实现要素:

本发明要解决的技术问题是提供一种pos终端iso8583报文测试方法及模拟后台挡板系统,使得在pos终端金融交易程序的开发和测试过程中,经常碰到要和银行后台系统对接困难,环境协调麻烦的问题得到解决。

为解决上述技术问题,本发明的一种pos终端iso8583报文测试方法,方法包括以下步骤:

步骤1,模拟后台挡板系统完成端口iocp服务的启动,准备接收pos终端的请求报文;

步骤2,接收pos终端的iso8583格式请求报文,截取报文前5位为tpdu的值,根据tpdu查询模拟后台挡板系统的数据库所对应银行;

步骤3,加载对应银行的xml配置文件,根据xml文件的配置解析每个域的内容;

步骤4,根据解析的域内容获取交易码、交易类型码和网络管理码等信息,并查询模拟后台挡板系统是否存在与其匹配的交易;

步骤5,如果后台系统存在匹配的交易,根据交易配置去校验pos终端请求报文的合法性,交易逻辑的正确性;

步骤6,模拟后台根据报文校验结果,以及后台返回报文各域的配置,组模拟信息,打包成iso8583格式报文,发送回给pos终端。

进一步地,步骤1中操作支持多终端同时连接和并发处理。

进一步地,步骤1中启动iocp服务的具体步骤如下:

步骤1-1,创建一个完成端口;

步骤1-2,判断系统内安装了多少个处理器;

步骤1-3,创建工作者线程;

步骤1-4,创建一个socket套接字开始监听;

步骤1-5,使用accept接收连接;

步骤1-6,调用createiocompletionport将连接和完成端口绑定在一起;

步骤1-7,投递接收数据请求;

步骤1-8,工作者线程调用getqueuedcompletionstatus获取事件通知,处理数据;

一种pos终端iso8583报文测试方法使用的模拟后台挡板系统,其包括报文接收单元、报文解析单元、交易设置单元、交易验证单元、返回报文生成单元和报文发送单元;其中报文接收单元启动iocp服务开启监听,并接收pos终端的请求报文;报文解析单元根据xml配置文件预设的报文长度头、各域类型、长度类型,按照位置偏移解析出每个域内容值;交易设置单元用于设置交易的信息,以及每个域的数据类型,长度部分和数据部分的类型,压缩方式等;交易验证单元校验报文所获取的交易码,交易类型码,网络管理码等信息,并查询是否在后台系统中存在,如果存在再校验pos终端请求报文的合法性,交易逻辑的正确性;返回报文生成单元根据报文校验结果,以及后台返回报文各域的配置,组模拟信息,产生iso8583格式返回报文;报文发送单元将所述模拟返回报文发送给所述pos终端。

进一步地,所述报文接收单元支持多终端同时连接和交易并发处理。

进一步地,所述交易的信息包括交易的基本信息,交易名称、请求代码、响应代码、处理码、位图类型、服务点输入方式码、服务点条件码、交易类型码、网络管理码,请求域和响应域等信息。

本发明通过模拟后台挡板系统配合pos终端iso8583报文测试方法,使得利用本发明,可以模拟真实后台系统向待测的pos终端返回模拟报文。模拟后台挡板系统,不受到测试环境的制约,并且可以对pos终端进行测试,能大大减少pos终端开发人员工作量;解决了在pos终端金融交易程序的开发和测试过程中,经常碰到要和银行后台系统对接困难,环境协调麻烦的问题。

附图说明

下面结合附图与具体实施方式对本发明做进一步详细的说明:

图1为本发明报文测试方法及模拟后台挡板系统的流程示意图。

具体实施方式

为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述。

如图1所示,本发明一种pos终端iso8583报文测试方法,方法包括以下步骤:

步骤1,模拟后台挡板系统完成端口iocp服务的启动,准备接收pos终端的请求报文;

具体地,步骤1中操作支持多终端同时连接和并发处理。步骤1中启动iocp服务的具体步骤如下:步骤1-1,创建一个完成端口;步骤1-2,判断系统内安装了多少个处理器;步骤1-3,创建工作者线程;步骤1-4,创建一个socket套接字开始监听;步骤1-5,使用accept接收连接;步骤1-6,调用createiocompletionport将连接和完成端口绑定在一起;步骤1-7,投递接收数据请求;步骤1-8,工作者线程调用getqueuedcompletionstatus获取事件通知,处理数据;

步骤2,接收pos终端的iso8583格式请求报文,截取报文前5位为tpdu的值,根据tpdu查询模拟后台挡板系统的数据库所对应银行;

步骤3,加载对应银行的xml配置文件,根据xml文件的配置解析每个域的内容;

具体地,在流图程中所述的按照pos终端iso8583格式报文截取tpdu信息,并到模拟后台系统找到相应的银行,并加载对应的xml配置文件,在xml文件里面,定于报文头长度,各域类型,长度类型等信息。

配置文件具体如下:

关于配置报文具体格式如下:

field_setting:各域的长度类型定义

length域最大长度

flag数据域的类型0--fix类型1--var型

2--llvar型3--lllvar型

type长度位压缩类型0--ascii码,1--bcd码

packet_offset:报文头长度;

根据xml配置文件的报文头长度可以截取pos终端请求报文的报文头值和位图值,再根据位图值判断每个数据域有无内容,最后根据xml配置文件的各域长度类型,按照位置偏移可以解析出每个域内容值。

步骤4,根据解析的域内容获取交易码、交易类型码和网络管理码等信息,并查询模拟后台挡板系统是否存在与其匹配的交易;

具体地,模拟后台挡板系统的后台交易配置主要包括:主要定义交易名称、请求代码、响应代码、处理码、位图类型、服务点输入方式码、服务点条件码、交易类型码、网络管理码等基本信息,以及该交易请求报文需要上送的域,响应报文需要应答的域。按照各银行iso8583格式报文规范来定义交易用到的每个域的信息;域信息定义主要包括了:域号、域名称、数据类型(a、n、an、ans、as、b、hhmmss、yymm、mmdd等)、域类型(fix、var、llvar、lllvar)、长度部分的压缩方式(ascii、bcd)、数据部分的压缩方式(ascii、bcd)、请求域(强制、可选、不存在)和响应域(强制、可选、不存在);返回报文各响应域值的获值方式包括:系统生成:比如流水号等信息,原交易:跟请求报文一致,配置信息表:比如商户号、终端号、账号余额、终端的密钥等信息,手输值:设置的固定值,支持保存为手输值模板,以及按照手输值模板逐行返回(比如参数和公钥下载交易,多次交互,需要响应不同的返回包)和备注信息。定义完域信息后,整个交易的域配置如下表1:

表1

步骤5,如果后台系统存在匹配的交易,根据交易配置去校验pos终端请求报文的合法性,交易逻辑的正确性;

具体地,主要的校验内容包括了报文的准确性,即是否按照该银行的iso8583格式报文规范来组包,每个域的内容格式是否正确。报文的域和后台配置的需要上送的域是否一致。报文的mac校验是否通过。报文的交易码,交易类型码,网络管理码等信息是否能定位到后台匹配的交易。报文的商户号和终端号信息是否在后台系统存在。如果报文里面含有账号信息,需要检查账号是否域后台一致,含有pin信息,还要校验pin信息是否正确。后台配置的其他需要校验的信息,跟上送的报文域信息进行校验。

步骤6,模拟后台根据报文校验结果,以及后台返回报文各域的配置,组模拟信息,打包成iso8583格式报文,发送回给pos终端。

一种pos终端iso8583报文测试方法使用的模拟后台挡板系统,其包括报文接收单元、报文解析单元、交易设置单元、交易验证单元、返回报文生成单元和报文发送单元;其中报文接收单元启动iocp服务开启监听,并接收pos终端的请求报文;报文解析单元根据xml配置文件预设的报文长度头、各域类型、长度类型,按照位置偏移解析出每个域内容值;交易设置单元用于设置交易的信息,以及每个域的数据类型,长度部分和数据部分的类型,压缩方式等;交易验证单元校验报文所获取的交易码,交易类型码,网络管理码等信息,并查询是否在后台系统中存在,如果存在再校验pos终端请求报文的合法性,交易逻辑的正确性;返回报文生成单元根据报文校验结果,以及后台返回报文各域的配置,组模拟信息,产生iso8583格式返回报文;报文发送单元将所述模拟返回报文发送给所述pos终端。

进一步地,所述报文接收单元支持多终端同时连接和交易并发处理。

进一步地,所述交易的信息包括交易的基本信息,交易名称、请求代码、响应代码、处理码、位图类型、服务点输入方式码、服务点条件码、交易类型码、网络管理码,请求域和响应域等信息。

本发明可以模拟真实后台系统向待测的pos终端返回模拟报文。模拟后台挡板系统,不受到测试环境的制约,并且可以对pos终端进行交易测试、逻辑测试、异常测试等,实现简单、易于理解,能大大减少pos终端开发人员工作量;解决了在pos终端金融交易程序的开发和测试过程中,经常碰到要和银行后台系统对接困难,环境协调麻烦的问题。

以上所述为本发明的实施例,对于本领域的普通技术人员而言,根据本发明的教导,在不脱离本发明的原理和精神的情况下凡依本发明申请专利范围所做的均等变化、修改、替换和变型,皆应属本发明的涵盖范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1