Ic卡读卡器及其指令处理方法、服务器、支付系统的利记博彩app
【专利摘要】本发明提供一种IC卡读卡器及其指令处理方法、服务器、支付系统,该IC卡读卡器包括:接收模块,用于接收服务器发送的自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;逻辑判断模块,用于解析所述指令地图,获得所述多条指令的指令执行逻辑;指令执行模块,用于根据所述多条指令的指令执行逻辑执行所述多条指令;发送模块,用于将所述多条指令的执行结果发送至服务器。使用本发明提出的IC卡读卡器,可以减少IC卡读卡器与服务器的交互次数,提高支付效率,降低出错概率,节省了服务器资源和网络带宽的成本,同时还具有更强的扩展性。
【专利说明】
IC卡读卡器及其指令处理方法、服务器、支付系统
技术领域
[0001]本发明涉及电子银行缴费技术领域,特别涉及一种IC卡读卡器及其指令处理方法、服务器、支付系统。
【背景技术】
[0002]为满足银行卡通过互联网在线支付的安全性需要,目前存在一种可以进行有卡在线支付的小型IC(银行)卡读卡器,这种IC(银行)卡读卡器可以通过近场或插卡读取芯片方式读取卡片信息,再通过与在线服务器交互完成支付。
[0003]现有的IC卡读卡器采用单条指令驱动工作方式,在支付过程中需要服务器将指令逐条发送给IC卡读卡器执行,为了保证银行卡支付过程安全,整个过程中需要IC卡读卡器和服务器进行多次交互以对读卡器状态、卡片状态、PIN信息、指令执行结果进行校验,并完成支付。这种工作方式的IC卡读卡器存在如下问题:1、支付效率低:整个支付过程中,主要的支付时间花费在IC卡读卡器与服务器之间的网络传输上,增加了处理时间,降低了支付效率。2、出错概率高:IC卡读卡器与服务器的多次交互,增加了传输过程中由于网络连接原因的出错概率。3、服务器需要多次处理IC卡读卡器的请求,造成了服务器资源和网络带宽的浪费。4、现有的IC卡读卡器的单条指令执行功能预置于IC卡读卡器中,如果需要扩展其功能需要对IC卡读卡器作改造,减低了 IC卡读卡器的可扩展性。
【发明内容】
[0004]本发明实施例提供了一种IC卡读卡器,减少了 IC卡读卡器与服务器的交互次数,提高了支付效率,降低了出错概率,节省了服务器资源和网络带宽的成本,同时还具有更强的扩展性。该IC卡读卡器包括:
[0005]接收模块,用于接收服务器发送的自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0006]逻辑判断模块,用于解析所述指令地图,获得所述多条指令的指令执行逻辑;
[0007]指令执行模块,用于根据所述多条指令的指令执行逻辑执行所述多条指令;
[0008]发送模块,用于将所述多条指令的执行结果发送至服务器。
[0009]在一个实施例中,所述指令执行模块还用于:将每条指令的执行结果返回给逻辑判断模块;
[0010]所述逻辑判断模块具体用于:在有指令的执行结果为执行失败时,通知发送模块将执行失败的消息发送至服务器,通知指令执行模块停止执行下一条指令;在接收到的指令执行结果为执行成功时,通知指令执行模块继续按所述多条指令的指令执行逻辑执行下一条指令;在接收到全部指令的执行成功结果后,通知发送模块将执行成功的消息发送至服务器。
[0011 ] 在一个实施例中,还包括:
[0012]存储模块,用于存储所述自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0013]所述逻辑判断模块,用于从存储模块中获取所要解析的指令地图;
[0014]所述指令执行模块,用于从存储模块中获取所要执行的多条指令。
[0015]本发明实施例还提供了一种IC卡读卡器指令处理方法,包括:
[0016]接收服务器发送的自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0017]解析所述指令地图,获得所述多条指令的指令执行逻辑;
[0018]根据所述多条指令的指令执行逻辑执行所述多条指令;
[0019]将所述多条指令的执行结果发送至服务器。
[0020]在一个实施例中,还包括:
[0021]将每条指令的执行结果返回给逻辑判断模块;
[0022]在有指令的执行结果为执行失败时,通知发送模块将执行失败的消息发送至服务器,通知指令执行模块停止执行下一条指令;在接收到的指令执行结果为执行成功时,通知指令执行模块继续按所述多条指令的指令执行逻辑执行下一条指令;在接收到全部指令的执行成功结果后,通知发送模块将执行成功的消息发送至服务器。
[0023]在一个实施例中,还包括:
[0024]存储所述自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0025]从存储模块中获取所要解析的指令地图;
[0026]从存储模块中获取所要执行的多条指令。
[0027]本发明实施例还提供了一种服务器,该服务器包括:
[0028]发送模块,用于发送自适应指令集至IC卡读卡器中,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0029]接收模块,用于接收IC卡读卡器发送所述多条指令的的执行结果。
[0030]本发明实施例还提供了一种服务器方法,其特征在于,包括:
[0031 ] 发送自适应指令集至IC卡读卡器中,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0032]接收IC卡读卡器发送所述多条指令的的执行结果。
[0033]本发明实施例还提供了一种支付系统,该支付系统包括:
[0034]如上所述的IC卡读卡器;
[0035]如上所述的服务器。
[0036]在本发明实施例中,IC卡读卡器中接收的是服务器发送的自适应指令集,其中,自适应指令集包括多条指令和指令地图,多条指令只在IC卡读卡器中执行,IC卡读卡器与服务器之间无需多次交互,减少了交互次数,提高了支付效率,降低了出错概率,节省了服务器资源和网络带宽的成本;IC卡读卡器可以根据服务器发送的自适应指令集进行动态加载、执行指令,扩展IC卡读卡器的功能无需对其进行改造,扩展性更强。
【附图说明】
[0037]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
[0038]图1是本发明实施例提供的一种现有的IC卡读卡器与服务器之间的交互流程图;
[0039]图2是本发明实施例提供的一种IC卡读卡器的结构示意图;
[0040]图3是本发明实施例提供的一种在线消费的指令地图;
[0041]图4是本发明实施例提供的一种IC卡读卡器指令处理方法流程图;
[0042]图5是本发明实施例提供的一种本发明IC卡读卡器与服务器之间的交互流程图。
【具体实施方式】
[0043]为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
[0044]现有的IC银行卡读卡器只包含指令执行模块,支付流程的判断逻辑只能依靠服务器端,因此与服务器之间的工作流程一般如图1所示,具体如下(以消费为例):
[0045]1、读卡器准备好支付,向服务器发送支付开始请求指令(CMD);
[0046]2、服务器向读卡器发送终端状态查询指令,确认读卡器是否可用;
[0047]3、读卡器执行终端状态查询指令,指令完成后,将终端状态查询指令执行结果发给服务器;
[0048]4、服务器确认读卡器可用后,发送终端信息查询指令;
[0049]5、读卡器执行终端信息查询指令,执行完成后,将终端信息查询指令执行结果发给服务器;
[0050]6、服务器发送交易开始指令,通知读卡器交易开始;
[0051]7、读卡器执行交易开始指令,执行完成后,将交易开始指令执行结果发给服务器;
[0052]8、服务器发送读55域信息指令,获取IC银行卡信息;
[0053]9、读卡器执行读55域信息指令,执行完成后,将读55域信息指令执行结果发给服务器;
[0054]10、服务器发送读取非55域指令,获取支付密码PIN ;
[0055]11、读卡器执行交易开始指令,提示用户在读卡器上输入支付密码PIN ;
[0056]12、用户在读卡器上输入支付密码PIN后,将密码信息返回给服务器;
[0057]13、服务器校验密码信息之后,将交易结果下发给读卡器;
[0058]14、读卡器执行交易结果指令后,将写卡结果返回给服务器;
[0059]15、服务器下发结果通知,支付结束。
[0060]从上述流程可知,支付流程开启后,服务器将可执行的单条指令通过网络逐条串行发给IC银行卡读卡器,IC银行卡读卡器执行一条指令后,将执行结果返回给服务器,月艮务器根据执行结果,再向IC银行卡读卡器发送下一条可执行指令,如此反复,直至整个支付过程结束。
[0061]在这种单指令驱动方式下,如果支付过程中需要执行N条指令,IC银行卡读卡器和服务器之间需要交互N次,指令的请求和应答需要在网络上传输共2N次,IC银行卡读卡器和服务器各需要处理N条指令的处理结果。这种单指令驱动的IC银行卡读卡器及支付方法,服务器端资源和网络资源的消耗,随着N值的增大成倍增长。随着交互次数增多,出错次数成指数增长,假设单次交互出错概率为P,那么N次交互次数出错概率为1-(1-p)N,N值过大会导致出错概率大大增加。
[0062]针对上述说明的现有的IC卡读卡器存在的缺点,本发明对现有的IC银行卡读卡器进行了改进,即在现有的IC银行卡读卡器的基础上增加了存储模块和逻辑判断模块。本发明提出IC银行卡读卡器结构图如图2所示,包括:
[0063]接收模块201,用于接收服务器发送的自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0064]逻辑判断模块202,用于解析所述指令地图,获得所述多条指令的指令执行逻辑;
[0065]指令执行模块203,用于根据所述多条指令的指令执行逻辑执行所述多条指令;
[0066]发送模块204,用于将所述多条指令的执行结果发送至服务器。
[0067]具体实施时,指令执行模块203还用于:将每条指令的执行结果返回给逻辑判断模块202 ;
[0068]所述逻辑判断模块202具体用于:在有指令的执行结果为执行失败时,通知发送模块204将执行失败的消息发送至服务器,通知指令执行模块203停止执行下一条指令;在接收到的指令执行结果为执行成功时,通知指令执行模块203继续按所述多条指令的指令执行逻辑执行下一条指令;在接收到全部指令的执行成功结果后,通知发送模块204将执行成功的消息发送至服务器。
[0069]具体实施时,本发明IC卡读卡器还包括存储模块205,用于存储服务器发送的自适应指令集;
[0070]而逻辑判断模块202,用于从存储模块205中获取所要解析的指令地图;
[0071]指令执行模块203,用于从存储模块205中获取所要执行的多条指令。
[0072]具体实施时,服务器端发送的自适应指令集包含指令地图和指令集(基本指令组成的集合),具有可扩展、自适应、自描述等特点。自适应指令集中的指令地图样例如下:
[0073]BEG I1S9000J1F0086J7I2S9000J3F0087J7......END
[0074]其含义为BEG开始执行指令1,执行完成后成功码9000后执行指令2,执行完成后失败码0086则执行指令7,执行第二条指令后成功码9000后执行指令3,完成后失败码0087则执行指令7,以此类推,执行到END的时候,停止执行,并将当前结果返回给服务器。
[0075]当设定服务器端发送的指令集中包括5条指令,分别为:终端状态检查指令、终端信息检查指令、交易开始指令、读55域指令和读非55域指令,此时在线消费的指令地图如图3所示,具体为:
[0076]1、交易开始;
[0077]2、执行终端状态检查指令;
[0078]3、判断终端状态检查指令是否执行成功,若执行成功,执行终端信息检查指令;若执行不成功,则将执行结果返回给服务器;
[0079]4、执行终端信息检查指令;
[0080]5、判断终端信息检查指令是否执行成功,若执行成功,执行交易开始指令;若执行不成功,则将执行结果返回给服务器;
[0081]6、执行交易开始指令;
[0082]7、判断交易开始指令是否执行成功,若执行成功,执行读55域指令;若执行不成功,则将执行结果返回给服务器;
[0083]8、执行读55域指令;
[0084]9、判断读55域指令是否执行成功,若执行成功,执行读非55域指令;若执行不成功,则将执行结果返回给服务器;
[0085]10、执行读非55域指令;
[0086]11、判断读55域指令是否执行成功,若执行成功,将执行结果返回给服务器;若执行不成功,也将执行结果返回给服务器;
[0087]12、交易结束。
[0088]服务器端将自适应指令集一次性发送至本发明的IC银行卡读卡器中,IC卡读卡器可以根据逻辑判断模块按照指令地图对多条指令进行自适应性执行,只有当单条指令执行失败或者全部指令执行成功后,才会与服务器进行交互。在这种支付方式下,假设指令集包含m条指令,那么自适应指令集驱动的读卡器执行N条指令只需与服务器端交易N/m次即可实现,IC银行卡读卡器与服务器的交互次数可以大大减少,缩短了支付周期,提高了执行效率,降低了出错概率,节省的服务器资源和网络带宽的成本也成倍增加。
[0089]同时,现有的是将单条指令执行功能预置于IC卡读卡器中,如果需要扩展其功能,使IC卡读卡器能够执行更多条的指令,则需要对IC卡读卡器进行改造,这样会减低IC卡读卡器的可扩展性。而本发明提出的IC卡读卡器中包括的是指令执行模块,而具体的指令执行模块可以执行多少条指令是不会提前预设的,只需要从服务器中加载执行自适应指令集即可,当增加执行指令时不需要对读卡器做改造,本发明提出的IC卡读卡器的扩展性更强。
[0090]本发明实施例中还提供了一种IC卡读卡器指令处理方法,如图4所示,具体包括:
[0091]步骤401:接收服务器发送的自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0092]步骤402:解析所述指令地图,获得所述多条指令的指令执行逻辑;
[0093]步骤403:根据所述多条指令的指令执行逻辑执行所述多条指令;
[0094]步骤404:将所述多条指令的执行结果发送至服务器。
[0095]具体实施时,IC卡读卡器指令处理方法还包括:
[0096]将每条指令的执行结果返回给逻辑判断模块;
[0097]在有指令的执行结果为执行失败时,通知发送模块将执行失败的消息发送至服务器,通知指令执行模块停止执行下一条指令;在接收到的指令执行结果为执行成功时,通知指令执行模块继续按所述多条指令的指令执行逻辑执行下一条指令;在接收到全部指令的执行成功结果后,通知发送模块将执行成功的消息发送至服务器。
[0098]具体实施时,IC卡读卡器指令处理方法还包括:
[0099]存储所述自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0100]从存储模块中获取所要解析的指令地图;
[0101]从存储模块中获取所要执行的多条指令。
[0102]具体实施时,由于本发明提出的IC卡读卡器,是在现有IC银行卡读卡器的基础上进行的改进,所以与本发明提出的IC卡读卡器进行交互的服务器,与现有的银行服务器也存在区别。基于此,本发明实施例还提出一种服务器,该服务器包括:
[0103]发送模块,用于发送自适应指令集至IC卡读卡器中,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0104]接收模块,用于接收IC卡读卡器发送所述多条指令的的执行结果。
[0105]另外,本发明实施例还提出一种处理方法,包括:
[0106]发送自适应指令集至IC卡读卡器中,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑;
[0107]接收IC卡读卡器发送所述多条指令的的执行结果。
[0108]本发明实施例还提出一种支付系统,包括本发明提出的IC卡读卡器和服务器,图5所示为两者之间的交互流程图,该交互方式中,服务器两次发送自适应指令集,其中,第一次发送的自适应指令集中的指令集包含三条指令,即终端状态检查指令、终端信息检查指令和控件提示,第二次自适应指令集中的指令集包含四条指令,即读冲正信息可选指令、读55域指令、读非55域指令和控件提示。其中,控件提示是指在控件的显示器上给用户的提示,包括终端状态正常、密码校验结果、安全信息校验结果、提示确认等。
[0109]具体的交互流程具体为:
[0110]1、读卡器向服务器发送交互开始请求指令;
[0111]2、服务器向读卡器第一次发送自适应指令集;
[0112]3、读卡器自适应执行服务器第一次发送的自适应指令集,将执行结果返回给服务器;
[0113]4、服务器向读卡器第二次发送自适应指令集;
[0114]5、读卡器自适应执行服务器第二次发送的自适应指令集,将执行结果返回给服务器;
[0115]6、服务器将交易结果下发给读卡器,并通过控件提示。
[0116]如上图所示,在消费交易流程中,改进后的读卡器和服务器的交互次数从15次减少到6次,提升支付效率达60%。
[0117]综上所述,与现有的单指令驱动的IC银行卡读卡器相比,本发明有以下优点:
[0118]1、支付效率高:本发明公布的自适应指令集驱动的读卡器及支付方法,可以成倍减少读卡器和服务器之间的网络传输交互,从而减少支付过程总时间,降低了由于网络中断导致支付失败的概率,大大提高了支付效率。
[0119]2、节省网络及服务器资源:指令集的打包传输,减少了读卡器与服务器端的在网络上传输的数据,节省了网络流量,读卡器中增加的指令地图存储模块和逻辑判断模块使其可以进行逻辑判断,节省了服务器的计算资源。
[0120]3、功能扩展性好:本发明出的自适应指令集驱动的读卡器,可以根据服务器发来的自适应指令集动态加载、执行指令,升级指令不需对读卡器做改造,扩展性更强。
[0121]显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
[0122] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种IC卡读卡器,其特征在于,包括: 接收模块,用于接收服务器发送的自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑; 逻辑判断模块,用于解析所述指令地图,获得所述多条指令的指令执行逻辑; 指令执行模块,用于根据所述多条指令的指令执行逻辑执行所述多条指令; 发送模块,用于将所述多条指令的执行结果发送至服务器。2.如权利要求1所述的IC卡读卡器,其特征在于,所述指令执行模块还用于:将每条指令的执行结果返回给逻辑判断模块; 所述逻辑判断模块具体用于:在有指令的执行结果为执行失败时,通知发送模块将执行失败的消息发送至服务器,通知指令执行模块停止执行下一条指令;在接收到的指令执行结果为执行成功时,通知指令执行模块继续按所述多条指令的指令执行逻辑执行下一条指令;在接收到全部指令的执行成功结果后,通知发送模块将执行成功的消息发送至服务器。3.如权利要求1所述的IC卡读卡器,其特征在于,还包括: 存储模块,用于存储所述自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑; 所述逻辑判断模块,用于从存储模块中获取所要解析的指令地图; 所述指令执行模块,用于从存储模块中获取所要执行的多条指令。4.一种IC卡读卡器指令处理方法,其特征在于,包括: 接收服务器发送的自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑; 解析所述指令地图,获得所述多条指令的指令执行逻辑; 根据所述多条指令的指令执行逻辑执行所述多条指令; 将所述多条指令的执行结果发送至服务器。5.如权利要求4所述的IC卡读卡器指令处理方法,其特征在于,还包括: 将每条指令的执行结果返回给逻辑判断模块; 在有指令的执行结果为执行失败时,通知发送模块将执行失败的消息发送至服务器,通知指令执行模块停止执行下一条指令;在接收到的指令执行结果为执行成功时,通知指令执行模块继续按所述多条指令的指令执行逻辑执行下一条指令;在接收到全部指令的执行成功结果后,通知发送模块将执行成功的消息发送至服务器。6.如权利要求4所述的IC卡读卡器指令处理方法,其特征在于,还包括: 存储所述自适应指令集,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑; 从存储模块中获取所要解析的指令地图; 从存储模块中获取所要执行的多条指令。7.一种服务器,其特征在于,包括: 发送模块,用于发送自适应指令集至IC卡读卡器中,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑; 接收模块,用于接收IC卡读卡器发送所述多条指令的的执行结果。8.一种处理方法,其特征在于,包括: 发送自适应指令集至IC卡读卡器中,所述自适应指令集包括多条指令和指令地图;所述指令地图封装有所述多条指令的执行逻辑; 接收IC卡读卡器发送所述多条指令的的执行结果。9.一种支付系统,其特征在于,包括: 权利要求1至3任一项所述的IC卡读卡器; 权利要求7所述的服务器。
【文档编号】G06K17/00GK105930751SQ201510530975
【公开日】2016年9月7日
【申请日】2015年8月26日
【发明人】徐微波, 许先文, 郭弘强
【申请人】中国银联股份有限公司