IC卡联机交易方法及装置、计算机可读存储介质与流程

文档序号:18415357发布日期:2019-08-13 19:19阅读:352来源:国知局
IC卡联机交易方法及装置、计算机可读存储介质与流程

本发明涉及支付领域,尤其涉及一种ic卡联机交易方法及装置、计算机可读存储介质。



背景技术:

集成电路(integratedcircuit,ic)卡应用是以ic技术和中国金融ic卡规范为基础的应用,ic电子钱包/电子存折支持圈存、圈提、取现、消费等交易。在上述交易过程中,ic卡的余额同步变化。在圈存或者圈提交易时,按照规范通常联机进行处理。在进行脱机消费时,通过ic卡、pos机终端、销售点终端安全存取模块(purchasesecureaccessmodule,psam)之间一系列的数据交互实现,脱机消费交易的密钥存储在psam中。

现有技术中,在联机交易过程中,交易密钥以及交易数据均由后台服务器提供,ic卡在交易时的所有指令都是后台服务器下发,所有返回结果都需要上传到后台服务器验证。在整个交易流程中,ic卡、pos机、后台服务器之间的通信次数较多,稳定性较差。



技术实现要素:

本发明实施例解决的是降低ic卡联机交易过程中pos机与服务器的通信次数。

为解决上述技术问题,本发明实施例提供一种ic卡联机交易方法,包括:当检测到ic卡时,读取所述ic卡的信息;根据所述ic卡的信息生成交易申请,并将所述交易申请发送至服务器;接收所述服务器发送的交易过程数据以及交易密钥,并根据所述交易过程数据以及所述交易密钥生成交易指令;所述交易密钥由所述服务器向所述ic卡的发卡方请求获取;向所述ic卡发送所述交易指令。

可选的,在向所述ic卡发送所述交易指令之后,还包括:验证所述ic卡反馈的交易结果,并当所述交易结果为交易成功时向所述服务器反馈所述交易结果。

可选的,所述ic卡联机交易方法还包括:接收所述服务器下发的更新的发卡方交易预处理脚本文件;向所述服务器反馈接收结果。

可选的,在检测到工作范围内存在ic卡之前,还包括:接收所述服务器下发的虚拟pos应用安装文件以及安装指令;安装所述虚拟pos应用安装文件。

可选的,在检测到ic卡之后,还包括:当未读取到所述ic卡对应的发卡方交易预处理脚本中的指定的文件时,输出交易失败指示信号。

本发明实施例还提供了一种ic卡联机交易装置,包括:读取单元,用于当检测到ic卡时,读取所述ic卡的信息;第一发送单元,用于根据所述ic卡的信息生成交易申请,并将所述交易申请发送至服务器;接收单元,用于接收所述服务器发送的交易过程数据以及交易密钥;所述交易密钥由所述服务器向所述ic卡的发卡方请求获取;生成单元,用于根据所述交易过程数据以及所述交易密钥生成交易指令;第二发送单元,用于向所述ic卡发送所述交易指令。

可选的,所述ic卡联机交易装置还包括:验证单元,用于验证所述ic卡反馈的交易结果;所述第一发送单元,还用于当所述交易结果为交易成功时向,所述服务器反馈所述交易结果。

可选的,所述接收单元,还用于接收所述服务器下发的更新的发卡方交易预处理脚本文件;所述第一发送单元,还用于向所述服务器反馈接收结果。

可选的,所述ic卡联机交易装置还包括:安装单元,用于接收所述服务器下发的虚拟pos应用安装文件以及安装指令,并安装所述虚拟pos应用安装文件。

可选的,所述ic卡联机交易装置还包括:输出单元,用于当所述读取单元未读取到所述ic卡对应的发卡方交易预处理脚本中的指定的文件时,输出交易失败指示信号。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述任一种所述的ic卡联机交易方法的步骤。

本发明实施例还提供了另一种ic卡联机交易装置,包括存储器和处理器,所述存储器上存储有计算机指令,所述计算机指令运行时执行上述任一种所述的ic卡联机交易方法的步骤。

与现有技术相比,本发明实施例的技术方案具有以下有益效果:

ic卡联机交易装置在整个ic卡的交易过程中,向服务器发送交易申请,根据接收到的服务器发送的交易过程数据以及交易密钥生成交易指令,将交易指令发送至ic卡,从而完成ic卡的交易流程。在整个交易流程中,仅将交易申请发送至服务器,而无需每一步操作均与服务器进行操作,从而减少ic卡联机交易过程中与服务器的通信次数,提高ic卡交易的稳定性。

进一步,接收服务器下发的更新的发卡方交易流程文件,可以对支持的发卡方进行拓展,从而可以支持多个不同的发卡方发行的ic卡的交易。

附图说明

图1是本发明实施例中的一种ic卡联机交易系统的结构示意图;

图2是本发明实施例中的一种ic卡联机交易方法的流程图;

图3是本发明实施例中的另一种ic卡联机交易方法的流程图;

图4是本发明实施例中的一种ic卡联机交易装置的结构示意图。

具体实施方式

现有技术中,在联机交易过程中,交易密钥以及交易数据均由后台服务器提供,ic卡在交易时的所有指令都是后台服务器下发,所有返回结果都需要上传到后台服务器验证。在整个交易流程中,ic卡、pos机、后台服务器之间的通信次数较多,在移动通信环境下,稳定性较差。

在本发明实施例中,ic卡联机交易装置在整个ic卡的交易过程中,向服务器发送交易申请,根据接收到的服务器发送的交易过程数据以及交易密钥生成交易指令,将交易指令发送至ic卡,从而完成ic卡的交易流程。在整个交易流程中,仅将交易申请发送至服务器,而无需每一步操作均与服务器进行操作,从而减少ic卡联机交易过程中与服务器的通信次数,提高ic卡交易的稳定性。

为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

参照图1,给出了本发明实施例中的一种ic卡联机交易系统的结构示意图。图1中,ic卡联机交易系统包括服务器1以及ic卡联机交易装置2。在实际应用中,ic卡联机交易装置2可以为pos机,也可以为公交车刷卡机或者地铁闸机,还可以为其他能够执行ic卡交易的机器。

在具体实施中,服务器1可以包括第一通信接口11、业务接口12以及密钥管理接口13。第一通信接口11、业务接口12以及密钥管理接口13可以均相互独立,也可以集成在同一台设备上。业务接口12可以通过网络通信、串口通信等方式与第一通信接口11以及密钥管理接口13连接,实现对第一通信接口11以及密钥管理接口13的访问。

ic卡联机交易装置2可以包括第二通信接口21、虚拟pos应用载体22、ic卡读写接口23以及中央控制单元24。第二通信接口21、虚拟pos应用载体22、ic卡读写接口23以及中央控制单元24可以集成在同一台设备中,例如集成在同一台pos机中。第二通信接口21、虚拟pos应用载体22以及中央控制单元24可以均集成在同一台设备中,ic卡读写接口23可以通过外设的方式与虚拟pos应用载体22连接。

第二通信接口21可以通过串口通信等方式与中央控制单元24进行通信,中央控制单元也可以通过串口通信等方式与虚拟pos应用载体22进行通信。ic卡读写接口23可以通过usb接口或者其他串口与中央控制单元24进行通信。第二通信接口21、虚拟pos应用载体22、ic卡读写接口23以及中央控制单元24之间也可以采用其他通信方式进行通信,此处不做赘述。

在具体实施中,虚拟pos应用载体22中可以存储有虚拟pos应用程序数据以及发卡方交易预处理脚本文件。在本发明实施例中,发卡方交易预处理脚本文件可以为:能够支持某一个发卡方发行的ic卡进行交易流程的文件。例如,当虚拟pos应用程序数据包括发卡方a的交易预处理脚本文件时,则ic卡联机交易装置2支持发卡方a发行的ic卡的交易。反之,当虚拟pos应用程序数据不包括发卡方a的交易预处理脚本文件时,则ic卡联机交易装置2不支持发卡方a发行的ic卡的交易。

在具体实施中,虚拟pos应用载体22可以为ic卡联机交易装置2中的sd卡、sim卡、安全内置单元(se)等均有存储功能的部件,也可以为ic卡联机交易装置2中其他能够存储虚拟pos应用程序数据的存储器件。

在具体实施中,ic卡联机交易装置2在工作时,由中央控制单元24从虚拟pos应用载体22中读取虚拟pos应用程序数据并执行,也即通过中央控制单元24来执行虚拟pos应用程序。

在具体实施中,服务器1可以预先向ic卡联机交易装置2下发虚拟pos应用安装文件以及安装指令。ic卡联机交易装置2可以通过第二通信接口21接收虚拟pos应用安装文件以及安装指令。ic卡联机交易装置2在接收到虚拟pos应用安装文件以及安装指令后,中央控制单元24在接收到虚拟pos应用安装文件以及安装指令后,可以安装接收到的虚拟pos应用安装文件,并将虚拟pos应用安装文件对应的pos应用程序数据存储至虚拟pos应用载体22。

在工作过程中,ic卡联机交易装置可以与服务器1进行通信。具体而言,ic交易装置可以通过第二通信接口21与服务器1的第一通信接口11进行通信,从而实现ic交易装置与服务器1的通信。

在实际应用中,第一通信接口11与第二通信接口21可以通过无线数据传输进行通信,也可以通过有线数据传输进行通信。例如,第一通信接口11与第二通信接口21基于传输控制协议/因特网协议(transmissioncontrolprotocol/internetprotocol,tcp/ip)进行通信。又如,第一通信接口11与第二通信接口21基于2g、3g、4g、5g等移动通信技术进行通信。可以理解的是,第一通信接口11与第二通信接口21还可以采用其他的通信方式进行通信,此处不做赘述。

ic卡读写接口23与ic卡之间的通信方式可以为接触式通信,也可以为非接触式通信。当ic卡与ic卡读写接口23采用接触式通信时,接触式通信接口可以采用iso7816协议。当ic卡与ic卡读写接口23采用非接触式通信时,ic卡与ic卡读写接口23可以采用13.56mhz高频通信方式进行通信,也可以通过2.45ghz微波通信方式进行通信。

在具体实施中,服务器1中的业务接口12具有同时处理多ic卡联机交易装置2发送的交易请求的能力,也即可以同时为多个ic卡联机交易装置2提供服务。不同的ic卡联机交易装置2可以通过相同或者不同的通信方式与服务器1进行通信。

在具体实施中,服务器1中的业务接口12可以对虚拟pos应用载体22中的数据进行更新。例如,服务器1可以经由第一通信接口11向ic卡联机交易装置2发送更新的发卡方交易预处理脚本文件。ic卡联机交易装置2在接收到更新的发卡方交易预处理脚本文件后,将更新的发卡方交易预处理脚本文件存储在虚拟pos应用载体22中,从而实现对虚拟pos应用载体22中的数据进行更新。

在本发明实施例中,预设的发卡方交易预处理脚本文件可以存储在虚拟pos应用载体22中,也可以存储在ic卡联机交易装置2的其他存储器中。

在具体实施中,服务器1中的密钥管理接口13与业务接口12可以通过网络或者串口设备连接。密钥管理接口13可以为业务接口12提供密钥管理系统以及其他与交易相关的服务接口,例如ic卡黑名单、发卡方接口等。与ic卡联机交易装置2相关的交易密钥可以放置在密钥管理接口13中,以确保与ic卡联机交易装置2通信的安全性。

参照图2,给出了本发明实施例中的一种ic卡联机交易方法的流程图,以下结合图1,并通过具体步骤进行详细说明。

在本发明实施例中,如图1所示,在ic卡联机交易装置2中,设置有虚拟pos应用载体22。在虚拟pos应用载体22中,预先存储有虚拟pos应用程序数据以及至少一个发卡方对应的发卡方交易预处理脚本文件。ic卡联机交易装置2在工作时,可以由中央控制单元24运行虚拟pos应用程序。

步骤s201,当检测到ic卡时,读取所述ic卡的信息。

在具体实施中,当ic卡与ic卡联机交易装置中的ic卡读写接口之间的通信方式为非接触通信时,ic卡联机交易装置中的ic卡读写接口可以检测在工作范围内是否存在ic卡。ic卡联机交易装置在检测到工作范围内存在ic卡之后,可以向中央控制单元发送触发信号,以告知中央控制单元当前检测到ic卡。中央控制单元在获知ic卡读写接口检测到ic卡之后,可以执行预交易脚本指令,读取ic卡的信息。

例如,ic卡与ic卡读写接口通过13.56mhz高频通信进行通信,此时,ic卡读写接口为13.56mhz读写接口。当用户手持ic卡贴近ic卡读写接口时,ic卡读写接口检测到工作范围内存在ic卡,并读取ic卡的信息。ic卡与ic卡读写接口进行非接触式通信的工作原理可以参照现有的非接触式ic卡读写原理,本发明不做赘述。

当ic卡与ic卡联机交易装置中的ic卡读写接口为接触通信时,ic卡读写接口可以为接触式通信接口。当ic卡读写接口检测到有ic卡放入或插入时,即可读取ic卡的信息。

在本发明实施例中,中央控制单元在获知ic卡读写接口检测到ic卡之后,可以根据预先存储的发卡方交易预处理脚本文件来读取ic卡的信息。在发卡方交易预处理脚本文件中,包括中央控制单元读取ic卡的信息的规则。换而言之,中央控制单元根据发卡方交易预处理脚本文件,来获知从ic卡中读取哪些信息。

在具体实施中,ic卡的信息可以包括ic卡的类型、ic卡的余额、ic卡的卡片序列号等信息。例如,ic卡为上海交通卡,读取的ic卡的信息包括:ic卡的类型为上海公共交通卡,ic卡的卡片序列号为u12346789,余额为100元。

可以理解的是,在实际应用中,ic卡联机交易装置所读取到的ic卡的信息还可以包括ic的其他信息,并不仅限于上述举例。

中央控制单元在读取到ic卡的信息之后,可以执行初始化交易指令并返回数据。

在具体实施中,不同发卡方对应的发卡方交易预处理脚本文件可能不同,发卡方与发卡方交易预处理脚本文件可以是一一对应的关系。因此,当ic卡联机交易装置中仅存储一个发卡方对应的发卡方交易预处理脚本文件时,ic卡联机交易装置仅能支持一个发卡方对应的ic卡的交易;当ic卡联机交易装置中存储有多个发卡方对应的发卡方交易预处理脚本文件时,ic卡联机交易装置可以支持多个发卡方对应的ic卡的交易。

因此,在本发明实施例中,可以在ic卡联机交易装置中预先存储有多个发卡方交易预处理脚本文件,从而使得ic卡联机交易装置能够支持多个发卡方发行的ic卡的交易。

步骤s202,根据所述ic卡的信息生成交易申请,并将所述交易申请发送至服务器。

在具体实施中,中央控制单元在获取到ic卡的信息之后,可以根据读取到的ic卡的信息生成交易申请,并将所生成的交易申请发送至服务器。

在实际应用中,中央控制单元在向服务器发送交易申请之前,可以经由虚拟pos应用载体对交易申请进行加密。虚拟pos应用载体将加密后的交易申请输出至中央控制单元,由中央控制单元将加密后的交易申请发送至服务器。服务器在接收到加密的交易申请后,对加密的交易申请进行解密,从而得到ic卡联机交易装置发送的交易申请。

虚拟pos应用载体对交易申请所进行的加密算法可以为3des_ecb算法,并结合报文鉴别码(messageauthenticationcode,mac)。相应地,服务器使用的解密算法也为3des_ecb算法。可以理解的是,虚拟pos应用载体还可以采用其他加密方法对交易申请进行加密,服务器可以使用同样的解密方法对加密后的交易申请进行解密,具体的加解密方法此处不做赘述。

在具体实施中,也可以由中央控制单元对交易申请进行加密,并将加密后的交易申请发送至中央控制单元。中央控制单元对交易申请所进行的加密算法可以为3des_ecb算法,并结合报文鉴别码(messageauthenticationcode,mac)。相应地,服务器使用的解密算法也为3des_ecb算法。可以理解的是,中央控制单元还可以采用其他加密方法对交易申请进行加密,服务器可以使用同样的解密方法对加密后的交易申请进行解密,具体的加解密方法此处不做赘述。

步骤s203,接收所述服务器发送的交易过程数据以及交易密钥,并根据所述交易过程数据以及所述交易密钥生成交易指令。

在具体实施中,服务器在接收到交易申请之后,可以向ic卡的发卡方服务器请求交易密钥。ic卡的发卡方服务器在接收到服务器发送的交易密钥请求后,即可向服务器发送交易密钥。在本发明实施例中,若无特别说明,所述的服务器为ic卡联机交易装置对应的服务器。

中央控制单元在接收到交易密钥后,可以根据交易过程数据以及交易密钥生成交易指令。

在实际应用中,交易过程数据可以包括本次交易过程的一些信息,例如本次交易过程的时间、地点、进行交易的ic卡联机交易装置的标识等信息。交易过程数据还可以包括本次交易过程中的其他一些数据,此处不做赘述。

步骤s204,向所述ic卡发送所述交易指令。

在具体实施中,ic卡联机交易装置在生成交易指令后,即可将生成的交易指令发送至ic卡。ic卡在接收到交易指令后,可以生成与交易指令对应的交易结果。ic卡联机交易装置中的ic卡读写接口可以读取交易结果,中央控制单元可以验证交易结果。

当交易结果为交易成功时,中央控制单元可以将交易结果反馈至服务器,以告知服务器本次交易成功;当交易结果为交易失败时,中央控制单元可以重新执行步骤s201~步骤s204,直至完成交易。

在具体实施中,服务器还可以向ic卡联机交易装置发送更新的发卡方交易流程文件。ic卡联机交易装置在接收到发卡方交易流程文件之后,中央控制单元中已经安装的发卡方交易流程文件替换为当前接收到的发卡方交易流程文件,也即对中央控制单元中的数据进行更新。

在对中央控制单元中的数据进行更新时,只需要服务器向ic卡联机交易装置发送更新的发卡方交易流程文件,由中央控制单元采用更新的发卡方交易流程文件替代已安装的发卡方交易流程文件即可。在整个过程中,无需对ic卡联机交易装置进行物理维护,因此可以有效降低ic卡联机交易装置的维护成本。

在具体实施中,中央控制单元在完成发卡方交易流程文件的更新后,可以向服务器反馈接收结果,以告知服务器当前是否完成更新的发卡方交易流程文件的接收。

中央控制单元在向服务器反馈接收结果时,可以经由虚拟pos应用载体对接收结果进行加密处理,之后再由中央控制单元将加密后的接收结果反馈至服务器。服务器在接收到加密后的接收结果之后,采用对应的解密算法进行解密,从而获知接收结果。

例如,虚拟pos应用载体采用3des_ecb算法对接收结果进行加密,并将加密后的接收结果发送至中央控制单元。中央控制单元将加密后的接收结果发送至服务器。服务器在接收到经过3des_ecb算法加密后的接收结果后,采用3des_ecb算法对接收结果进行解密。

在具体实施中,中央控制单元也可以对接收结果进行加密处理,并将加密处理后的接收结果发送至中央控制单元。

在具体实施中,当确定不存在ic卡对应的发卡方交易预处理脚本文件时,或当确定不存在ic卡对应的发卡方交易预处理脚本中指定的文件时,ic卡联机交易装置可以输出交易失败指示信号,以告知用户使用当前的ic卡联机交易装置无法对所使用的ic卡进行交易。

当ic卡联机交易装置中设置有显示屏幕时,可以在显示屏幕上显示“不支持该ic卡交易”等字样,以提醒用户使用当前的ic卡联机交易装置无法进行交易。

在具体实施中,服务器还可以向ic卡联机交易装置发送更新的虚拟pos应用程序数据来更新交易流程。ic卡联机交易装置在接收到发卡方交易流程文件之后,中央控制单元将对已经安装的虚拟pos应用程序数据替换为当前接收到的虚拟pos应用程序数据,也即对虚拟pos应用程序数据进行更新。

在对虚拟pos应用程序数据进行更新时,只需要服务器向ic卡联机交易装置发送更新的虚拟pos应用程序数据,由中央控制单元采用虚拟pos应用程序数据替代已安装的虚拟pos应用程序数据即可。在整个过程中,无需对ic卡联机交易装置进行物理维护,因此可以有效降低ic卡联机交易装置的维护成本。

在具体实施中,中央控制单元在完成虚拟pos应用程序数据的更新后,可以向服务器反馈接收结果,以告知服务器当前是否完成更新的虚拟pos应用程序数据的接收。

下面通过具体举例,对本发明实施例中提供的ic卡联机交易方法进行说明。参照图3,给出了本发明实施例中的另一种ic卡交易联机方法的流程图,以下结合图1~图2进行说明。

步骤s301,ic卡联机交易装置读取进入工作范围内的ic卡的信息。

在具体实施中,可以由ic卡联机交易装置中的ic卡读写接口来读取处于其工作范围内的ic卡的信息。当用户手持ic卡进入ic卡读写接口的工作范围之内时,ic卡读写接口即可读取该ic卡的信息。ic卡读写接口将读取到的ic卡的信息发送至ic卡联机交易装置中的中央控制单元。

步骤s302,ic卡联机交易装置生成交易申请。

在具体实施中,ic卡联机交易装置中的中央控制单元可以根据获取到的ic卡的信息,生成与之对应的交易申请。

步骤s303,ic卡联机交易装置将交易申请发送至服务器。

步骤s304,服务器向发卡方服务器发送交易密钥申请请求。

步骤s305,发卡方服务器向服务器发送交易密钥。

步骤s306,服务器向ic卡联机交易装置发送交易过程数据以及交易密钥。

步骤s307,ic卡联机交易装置生成交易指令。

步骤s308,ic卡联机交易装置将交易指令发送至ic卡。

步骤s309,ic卡联机交易装置获取ic卡反馈的交易结果。

步骤s310,ic卡联机交易装置验证交易结果。

步骤s311,ic卡联机交易装置将交易结果反馈至服务器。

在具体实施中,当ic卡联机交易装置中的中央控制单元验证获知交易结果为交易成功时,中央控制单元将交易结果反馈至服务器,以使得服务器获知本次交易成功。

参照图4,给出了本发明实施例中的一种ic卡联机交易装置40,包括:读取单元401、第一发送单元402、接收单元403、生成单元404以及第二发送单元405,其中:

读取单元401,用于当检测到ic卡时,读取所述ic卡的信息;

第一发送单元402,用于根据所述ic卡的信息生成交易申请,并将所述交易申请发送至服务器;

接收单元403,用于接收所述服务器发送的交易过程数据以及交易密钥;所述交易密钥由所述服务器向所述ic卡的发卡方请求获取;

生成单元404,用于根据所述交易过程数据以及所述交易密钥生成交易指令;

第二发送单元405,用于向所述ic卡发送所述交易指令。

在具体实施中,所述ic卡联机交易装置40还可以包括:验证单元406,用于验证所述ic卡反馈的交易结果;所述第一发送单元402,还可以用于当所述交易结果为交易成功时向,所述服务器反馈所述交易结果。

在具体实施中,所述接收单元403,还可以用于接收所述服务器下发的更新的发卡方交易流程文件;所述第一发送单元402,还可以用于向所述服务器反馈接收结果。

在具体实施中,所述ic卡联机交易装置40还可以包括:安装单元407,可以用于接收所述服务器下发的虚拟pos应用安装文件以及安装指令,并安装所述虚拟pos应用安装文件。

在具体实施中,所述ic卡联机交易装置40还可以包括:输出单元408,用于当所述读取单元401未读取到所述ic卡对应的发卡方交易预处理脚本中指定的文件时,输出交易失败指示信号。

本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质为非易失性介质或非瞬态介质,其上存储有计算机指令,所述计算机指令运行时执行本发明上述任一实施例中提供的ic卡联机交易方法的步骤,此处不做赘述。

本发明实施例还提供了另一种ic卡联机交易装置,包括存储器和处理器,所述存储器上存储有计算机指令,所述计算机指令运行时执行本发明上述任一实施例中提供的ic卡联机交易方法的步骤,此处不做赘述。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

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