CN109240655B - 一种基于emv的中间件的实现方法、终端设备 - Google Patents

一种基于emv的中间件的实现方法、终端设备 Download PDF

Info

Publication number
CN109240655B
CN109240655B CN201810865783.8A CN201810865783A CN109240655B CN 109240655 B CN109240655 B CN 109240655B CN 201810865783 A CN201810865783 A CN 201810865783A CN 109240655 B CN109240655 B CN 109240655B
Authority
CN
China
Prior art keywords
card
interface
emv
library
middleware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810865783.8A
Other languages
English (en)
Other versions
CN109240655A (zh
Inventor
王录庄
陈囿任
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PAX Computer Technology Shenzhen Co Ltd
Original Assignee
PAX Computer Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PAX Computer Technology Shenzhen Co Ltd filed Critical PAX Computer Technology Shenzhen Co Ltd
Priority to CN201810865783.8A priority Critical patent/CN109240655B/zh
Publication of CN109240655A publication Critical patent/CN109240655A/zh
Priority to PCT/CN2019/096285 priority patent/WO2020024795A1/zh
Priority to US17/791,445 priority patent/US20230046119A1/en
Application granted granted Critical
Publication of CN109240655B publication Critical patent/CN109240655B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/22Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/352Contactless payments by cards

Abstract

本申请适用于通信技术领域,提供了一种基于EMV的中间件的实现方法、终端设备及计算机可读存储介质,所述方法包括:创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用,所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识,基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程,通过本申请可以提供具有统一接口的中间件,以缩短应用的开发周期、且支持多个卡组织的EMV流程的应用也便于维护。

Description

一种基于EMV的中间件的实现方法、终端设备
技术领域
本申请属于通信技术领域,尤其涉及一种基于EMV的中间件的实现方法、终端设备及计算机可读存储介质。
背景技术
EMV标准是由国际三大银行卡组织Europay、MasterCard和Visa共同发起制定的银行卡从磁条卡向智能集成电路卡(Integrated Circuit,IC)转移的技术标准,是基于IC卡的金融支付标准,已成为公认的全球统一标准。
EMV L2非接触式规范来源于EMV标准,但各个卡组织都有进行一些个性化的改造,形成了自己的规范,例如:银联的Qpboc,Visa的Paywave、Master Card的MCL、Discover的Daps、Express的AE等等。这样,就会出现不同的非接触式EMV L2库的应用程序编程接口(Application Programming Interface,API)存在差异,交互流程也存在差异,进而导致应用开发支持多个卡组织的EMV流程时耗费的时间较多、不便于维护的问题。
发明内容
有鉴于此,本申请实施例提供了一种基于EMV的中间件的实现方法、终端设备及计算机可读存储介质,以解决目前开发支持多个卡组织的EMV流程的应用开发周期长、且不便于维护的问题。
本申请实施例的第一方面提供了一种基于EMV的中间件的实现方法,应用于终端设备,所述方法包括:
创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用;
所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识;
基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程。
本申请实施例的第二方面提供了一种终端设备,包括:
中间件创建模块,用于创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用;
应用标识获取模块,用于所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识;
处理模块,用于基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程。
本申请实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请实施例第一方面提供的所述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现本申请实施例第一方面提供的所述方法的步骤。
本申请实施例的第五方面提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被一个或多个处理器执行时实现本申请实施例第一方面提供的所述方法的步骤。
本申请实施例提供了一种中间件的实现方法,用于EMV标准中,该方法首先需要创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用,所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识,基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程,由于本申请中创建的中间件能够提供统一的第一接口供终端设备的上层应用调用,并且,中间件在通过第一接口收到上层应用的调用请求后,可以获取上层应用当前处理的IC卡的应用标识,根据IC卡的应用标识就可以调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程。这样,在对支持多个卡组织的EMV流程的应用进行开发时,就可以不用考虑不同卡组织的EMV流程的差异,而是通过中间件屏蔽这些差异,从而缩短开发周期长,由于应用开发时不会考虑不同卡组织的EMV流程的差异也便于后期的维护。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种系统架构图;
图2是本申请实施例提供的一种基于EMV的中间件的实现方法的流程示意图;
图3是本申请实施例提供的另一种基于EMV的中间件的实现方法的流程示意图;
图4是本申请实施例提供的一种终端设备的示意框图;
图5是本申请实施例提供的另一种终端设备的示意框图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
首先介绍本申请实施例应用的系统架构,图1是本申请实施例提供的一种系统架构图,如图所示,本申请实施例提供的系统架构图包括三层:应用层、中间层、EMV L2层。
其中,应用层中的应用软件(Application,APP)在业务流程提示用户挥卡或插卡(银行卡等),当应用层检测到卡之后就可以调用中间层提供的接口以完成与银行卡的交互流程,在进行交互流程中,获取的处理结果和相关数据用于上传后后台以完成交易。
中间层能够屏蔽EMV L2层中非接触式库的差异,提供统一接口供应用层中的应用调用,中间层会根据流程和需要调用具体的EMV L2接口。
EMV L2层包含了非接触式entry库(EMV定义的入口)、各个卡组织规范对应的非接库以及辅助的工具库。
如图中所示,EMV L2层包括了多个卡组织规范的非接库:
QPBOC,在中国推出的一种快速借记/贷记非接触式支付应用卡、符合PBOC规范;
Amex,是American Express推出的一种信用卡规范;
Paypass,是MasterCard国际组织2003年推出的一种无线支付技术;
Paywave,是VISA卡在EMV的基础上推出的非接触式支付方式;
Discover Card,是美国Discover信用卡发行机构发行的发现卡所支持的规范。
EMV L2层还包括了辅助的工具库,例如公共类工具(Public)、所支持的硬件设备(Device)等。
需要说明,图1中出现的卡组织规范或者工具库等仅用于举例,并不用于限制本申请。
图2是本申请实施例提供的一种基于EMV的中间件的实现方法的实现流程示意图,如图所示该方法可以包括以下步骤:
步骤S201,创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用。
在本申请实施例中,若不存在本申请实施例中的中间件,为了保证上层应用能够支持多种银行卡,就会存在调用多种卡组织规范(EMV L2)的接口的情况,那么上层应用也需要基于EMV L2库提供的API进行开发,而不同的非接EMV L2库API存在差异,交互流程也存在差异,进而导致上层应用开发支持多个卡组织的EMV流程时耗费的时间较多、容易出错以及最终软件代码比较臃肿和杂乱,不便于维护等问题。所以本申请提供了一种基于EMVL2的中间件,这个中间件能够提供第一接口供终端设备的上层应用调用,所述第一接口是统一的接口,上层应用均可调用,那么上层应用在进行开发时就无需针对不同的非接EMVL2库API提供不同的流程。
步骤S202,所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识。
在本申请实施例中,IC卡可以是集成电路卡,也称为智能卡、芯片卡,在进行交易中,通常指银行卡。
作为本申请实施例的一个应用场景,用户在商场超市购物需要进行支付时,商场超市的收银系统会生成本次交易的相关信息,并且提示用户进行插卡或者挥卡操作,用户或者收银员可以将用于支付的银行卡插入支付设备,或者将银行卡贴在支付设备上,支付设备在检测到银行卡的信号后,上层应用会根据本次交易的信息生成调用请求,所述调用请求用于调用中间件提供的第一接口,中间件在收到调用请求后,根据所述调用请求调用EMV L2层中Entry库的接口,所述Entry库与所述银行卡进行交互,获得所述银行卡的应用标识(AID),并将所述应用标识与预先存储的支持的应用标识进行匹配;若匹配成功,则将所述IC卡的应用标识返回给所述中间件。
步骤S203,基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程。
在本申请实施例中,中间件在接收到entry库返回的IC卡的应用标识后,就可以根据所述IC卡的应用标识确定与所述IC卡匹配的EMV L2库,然后调用与所述IC卡匹配的EMVL2库的接口,与所述IC卡完成非接触式流程。
由于本申请中创建的中间件能够提供统一的第一接口供终端设备的上层应用调用,并且,中间件在通过第一接口收到上层应用的调用请求后,可以获取上层应用当前处理的IC卡的应用标识,根据IC卡的应用标识就可以调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程。这样,在对支持多个卡组织的EMV流程的应用进行开发时,就可以不用考虑不同卡组织的EMV流程的差异,而是通过中间件屏蔽这些差异,从而缩短开发周期长,由于应用开发时不会考虑不同卡组织的EMV流程的差异也便于后期的维护。
图3是本申请实施例提供的另一种基于EMV的中间件的实现方法的实现流程示意图,如图所示该方法可以包括以下步骤:
步骤S301,创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用,所述中间件还提供第二接口作为EMV L2库的代理,以与所述IC卡完成非接触式流程。
在本申请实施例中,中间件不仅提供了第一接口供上层应用调用,还提供了第二接口作为EMV L2库的代理,屏蔽不同EMV L2库接口的差异性,负责跟具体EMV L2库的接口组织完成该银行卡组织的非接流程。
步骤S302,所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识,所述调用请求包括所述IC卡本次交易的信息。
在本申请实施例中,所述上层应用在想中间件发出第一接口的调用请求时,可以将与银行卡本次交易的信息一起发送至中间件。
步骤S303,将所述应用标识传入所述第二接口,通过所述第二接口确定与所述IC卡匹配的EMV L2库。
在本申请实施例中,由于中间件提供的第二接口可以作为EMV L2库的代理,所以可以将银行卡的应用标识传入所述第二接口,通过所述第二接口确定与所述IC卡匹配的EMV L2库,所述第二接口可以是一个LoadData方法,通过方法会传入应用标识。
步骤S304,以所述第二接口作为与所述IC卡匹配的EMV L2库的代理,将所述IC卡本次交易的信息传入所述第二接口,以通过所述第二接口根据所述IC卡本次交易的信息与所述IC卡完成非接触式流程。
在本申请实施例中,在第二接口确定了与所述IC卡匹配的EMV L2库之后,就可以作为EMV L2库的代理,中间件将本次的交易信息传入所述第二接口,通过所述第二接口根据所述IC卡本次交易的信息与所述IC卡完成非接触式流程。
需要说明的是,所述应用标识和所述本次交易的信息可以同时传入所述第二接口,也可以分次传入所述第二接口,这样就将必要参数和流程控制权交给了EMV L2库的代理(第二接口)。代理则根据具体规范调用匹配的EMV L2接口完成交互处理。
作为本申请又一实施例,所述中间件还包括:满足多个EMV L2库的参数的Key-Value键值对集合;
相应的,所述将所述IC卡本次交易的信息传入所述第二接口,以通过所述第二接口根据所述IC卡本次交易的信息与所述IC卡完成非接触式流程包括:
将所述IC卡本次交易的信息和所述Key-Value键值对集合传入所述第二接口,以通过所述第二接口根据所述Key-Value键值对集合将所述IC卡本次交易的信息转化为与所述IC卡匹配的EMV L2库的接口匹配的参数。
在本申请实施例中,对于上层应用能够提供第一接口,对不同的非接触式EMV L2库提供第二接口屏蔽不同EMV L2库的接口的差异,然而,实际应用中,各个非接EMV L2库的内核需要的参数也会存在差异,所以,还需要在中间件中设置Key-Value键值对集合以同时满足不同非接触式EMV L2库对参数的差异要求。
本申请实施例中,中间件还包括:满足多个EMV L2库的参数的Key-Value键值对集合,那么就需要将所述Key-Value键值对集合也传入所述第二接口,以通过所述第二接口根据所述Key-Value键值对集合将所述IC卡本次交易的信息转化为与所述IC卡匹配的EMV L2库的接口匹配的参数。
作为本申请又一实施例,所述中间件中的Key-Value键值对集合通过所述Android平台中的Bundle组件写入和读取。
作为本申请有一实施例,若接收到新增EMV L2库的请求,则通过所述Android平台中的Bundle组件将新增的EMV L2库对应的Key-Value键值对集合写入所述中间件中。
在本申请实施例中,由于通过中间件为上层应用提供统一的第一接口,为EMV L2库提供统一的第二接口作为EMV L2库的代理,所以,在新增加EMV L2规范时,只需要实现定义的接口,根据对应非接触式流程规范完成代理的开发,以及在中间层修改相应的代码即可。同时为了保证能够满足新增的非接触式EMV L2库对参数的要求,还可以通过所述Android平台中的Bundle组件将新增的EMV L2库对应的Key-Value键值对集合写入所述中间件中。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图4是本申请一实施例提供的终端设备的示意框图,为了便于说明,仅示出与本申请实施例相关的部分。
该终端设备4可以是内置于收银系统、计算机等终端设备内的软件单元、硬件单元或者软硬结合的单元,也可以作为独立的挂件集成到收银系统、计算机等终端设备中。
所述终端设备4包括:
中间件创建模块41,用于创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用;
应用标识获取模块42,用于所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识;
处理模块43,用于基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程。
作为本申请又一实施例,所述中间件还提供第二接口作为EMV L2库的代理,以与所述IC卡完成非接触式流程。
作为本申请又一实施例,所述处理模块43包括:
确定单元431,用于将所述应用标识传入所述第二接口,通过所述第二接口确定与所述IC卡匹配的EMV L2库。
作为本申请又一实施例,所述调用请求包括所述IC卡本次交易的信息;
所述处理模块43还包括:
调用单元432,用于以所述第二接口作为与所述IC卡匹配的EMV L2库的代理,将所述IC卡本次交易的信息传入所述第二接口,以通过所述第二接口根据所述IC卡本次交易的信息与所述IC卡完成非接触式流程。
作为本申请又一实施例,所述中间件还包括:满足多个EMV L2库的参数的Key-Value键值对集合;
所述调用单元432还用于:
将所述IC卡本次交易的信息和所述Key-Value键值对集合传入所述第二接口,以通过所述第二接口根据所述Key-Value键值对集合将所述IC卡本次交易的信息转化为与所述IC卡匹配的EMV L2库的接口匹配的参数。
作为本申请又一实施例,所述中间件中的Key-Value键值对集合通过所述Android平台中的Bundle组件写入和读取。
作为本申请又一实施例,所述终端设备4还包括:
新增模块44,用于若接收到新增EMV L2库的请求,则通过所述Android平台中的Bundle组件将新增的EMV L2库对应的Key-Value键值对集合写入所述中间件中。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述终端设备的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述终端设备中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图5是本申请又一实施例提供的终端设备的示意框图。如图5所示,该实施例的终端设备5包括:一个或多个处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52。所述处理器50执行所述计算机程序52时实现上述各个基于EMV的中间件的实现方法实施例中的步骤,例如图2所示的步骤S201至S203。或者,所述处理器50执行所述计算机程序52时实现上述终端设备实施例中各模块/单元的功能,例如图4所示模块41至43的功能。
示例性的,所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述终端设备5中的执行过程。例如,所述计算机程序52可以被分割成中间件创建模块、应用标识获取模块、处理模块。
中间件创建模块,用于创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用;
应用标识获取模块,用于所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识;
处理模块,用于基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程。
其它模块或单元可参照图4所示的实施例中的描述,在此不再赘述。
所述终端设备包括但不仅限于处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端设备5的一个示例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入设备、输出设备、网络接入设备、总线等。
所述处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的终端设备和方法,可以通过其它的方式实现。例如,以上所描述的终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (7)

1.一种基于EMV的中间件的实现方法,其特征在于,应用于终端设备,所述实现方法包括:
创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用,所述中间件还提供第二接口作为EMV L2库的代理;
所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识,所述调用请求包括所述IC卡本次交易的信息;
基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程;
其中,所述基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程,包括:
将所述应用标识传入所述第二接口,通过所述第二接口确定与所述IC卡匹配的EMV L2库;
将所述IC卡本次交易的信息传入所述第二接口,以通过所述第二接口根据所述IC卡本次交易的信息与所述IC卡完成非接触式流程。
2.如权利要求1所述的基于EMV的中间件的实现方法,其特征在于,所述中间件还包括:满足多个EMV L2库的参数的Key-Value键值对集合;
相应的,所述将所述IC卡本次交易的信息传入所述第二接口,以通过所述第二接口根据所述IC卡本次交易的信息与所述IC卡完成非接触式流程包括:
将所述IC卡本次交易的信息和所述Key-Value键值对集合传入所述第二接口,以通过所述第二接口根据所述Key-Value键值对集合将所述IC卡本次交易的信息转化为与所述IC卡匹配的EMV L2库的接口匹配的参数。
3.如权利要求2所述的基于EMV的中间件的实现方法,其特征在于,所述中间件中的Key-Value键值对集合通过Android平台中的Bundle组件写入和读取。
4.如权利要求3所述的基于EMV的中间件的实现方法,其特征在于,还包括:
若接收到新增EMV L2库的请求,则通过所述Android平台中的Bundle组件将新增的EMVL2库对应的Key-Value键值对集合写入所述中间件中。
5.一种终端设备,其特征在于,包括:
中间件创建模块,用于创建基于EMV L2的中间件,所述中间件提供第一接口供终端设备的上层应用调用,所述中间件还提供第二接口作为EMV L2库的代理;
应用标识获取模块,用于所述中间件在接收到所述上层应用根据检测到的IC卡的信息发出的对所述第一接口的调用请求后,根据所述调用请求调用Entry库的接口,获得所述Entry库的返回结果,所述Entry库的返回结果包括:所述IC卡的应用标识,所述调用请求包括所述IC卡本次交易的信息;
处理模块,用于基于所述应用标识确定与所述IC卡匹配的EMV L2库,并调用与所述IC卡匹配的EMV L2库的接口,与所述IC卡完成非接触式流程;
其中,所述处理模块包括:
确定单元,用于将所述应用标识传入所述第二接口,通过所述第二接口确定与所述IC卡匹配的EMV L2库。
调用单元,用于将所述IC卡本次交易的信息传入所述第二接口,以通过所述第二接口根据所述IC卡本次交易的信息与所述IC卡完成非接触式流程。
6.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现如权利要求1至4任一项所述方法的步骤。
CN201810865783.8A 2018-08-01 2018-08-01 一种基于emv的中间件的实现方法、终端设备 Active CN109240655B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201810865783.8A CN109240655B (zh) 2018-08-01 2018-08-01 一种基于emv的中间件的实现方法、终端设备
PCT/CN2019/096285 WO2020024795A1 (zh) 2018-08-01 2019-07-17 一种基于 emv 的中间件的实现方法、终端设备
US17/791,445 US20230046119A1 (en) 2018-08-01 2019-07-17 Method for implementing middleware based on emv and terminal device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810865783.8A CN109240655B (zh) 2018-08-01 2018-08-01 一种基于emv的中间件的实现方法、终端设备

Publications (2)

Publication Number Publication Date
CN109240655A CN109240655A (zh) 2019-01-18
CN109240655B true CN109240655B (zh) 2020-10-09

Family

ID=65073443

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810865783.8A Active CN109240655B (zh) 2018-08-01 2018-08-01 一种基于emv的中间件的实现方法、终端设备

Country Status (3)

Country Link
US (1) US20230046119A1 (zh)
CN (1) CN109240655B (zh)
WO (1) WO2020024795A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109240655B (zh) * 2018-08-01 2020-10-09 百富计算机技术(深圳)有限公司 一种基于emv的中间件的实现方法、终端设备
CN111338813B (zh) * 2020-02-10 2023-05-12 北京字节跳动网络技术有限公司 一种动态生成中间件的方法、装置、介质和电子设备
CN113498136B (zh) * 2020-04-08 2022-12-27 华为技术有限公司 测量方法及装置
CN116414366B (zh) * 2023-04-17 2024-01-30 广东企企通科技有限公司 中间件接口生成方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006275A (zh) * 2010-07-21 2011-04-06 恒宝股份有限公司 用于金融ic卡交易的系统及方法
CN102842193A (zh) * 2012-08-31 2012-12-26 深圳盈烨创新通讯技术有限公司 一种带现场支付功能的智能移动终端
CN104145285A (zh) * 2012-02-29 2014-11-12 莫比威孚公司 用于在设备上进行安全金融交易的方法、设备和安全元件
CN104348951A (zh) * 2013-07-24 2015-02-11 北京握奇数据系统有限公司 一种卡片应用管理系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060287964A1 (en) * 2003-12-17 2006-12-21 Brown Kerry D Contact/contactless and magnetic-stripe data collaboration in a payment card
CN1930592A (zh) * 2004-01-16 2007-03-14 艾利森电话股份有限公司 移动终端中的emv交易
US11651343B2 (en) * 2016-07-06 2023-05-16 PowerPay, LLC Systems and method for payment transaction processing with payment application driver
CN106250113A (zh) * 2016-07-18 2016-12-21 百富计算机技术(深圳)有限公司 一种应用开发平台
US10015317B1 (en) * 2017-05-07 2018-07-03 International Business Machines Corporation Cross-process computer telephony integration (CTI) client
CN109240655B (zh) * 2018-08-01 2020-10-09 百富计算机技术(深圳)有限公司 一种基于emv的中间件的实现方法、终端设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006275A (zh) * 2010-07-21 2011-04-06 恒宝股份有限公司 用于金融ic卡交易的系统及方法
CN104145285A (zh) * 2012-02-29 2014-11-12 莫比威孚公司 用于在设备上进行安全金融交易的方法、设备和安全元件
CN102842193A (zh) * 2012-08-31 2012-12-26 深圳盈烨创新通讯技术有限公司 一种带现场支付功能的智能移动终端
CN104348951A (zh) * 2013-07-24 2015-02-11 北京握奇数据系统有限公司 一种卡片应用管理系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
android Bundle类(键值对);dyf4248;《CSDN博客 https://blog.csdn.net/dyf4281/article/details/16890993》;20131122;第1-6页 *

Also Published As

Publication number Publication date
WO2020024795A1 (zh) 2020-02-06
CN109240655A (zh) 2019-01-18
US20230046119A1 (en) 2023-02-16

Similar Documents

Publication Publication Date Title
CN109240655B (zh) 一种基于emv的中间件的实现方法、终端设备
US10755275B1 (en) Intelligent capture in mixed fulfillment transactions
AU2014237800B2 (en) System and method for using multiple payment accounts using a single payment device
US20210357903A1 (en) Systems and methods for providing near field communications
US9805361B2 (en) Security in mobile payment service
CN104584043A (zh) 用于提供非接触式协议的系统、方法和计算机程序产品
US20170017952A1 (en) Card registration method for payment service and mobile electronic device implementing the same
US9852410B1 (en) Dynamically configuring verification information at point-of-sale devices
RU2702507C1 (ru) Обход управления доступом на мобильном устройстве для общественного транспорта
US10896415B2 (en) System for executing a computer process for processing a transaction, and related computer process
CN110942311A (zh) 支付方法、装置、设备及介质
EP3022696B1 (en) Systems, methods, and computer program products for reporting contactless transaction data
CN109948383B (zh) 非接触卡的读写速度提升方法、装置及终端设备
CN110191054B (zh) 路由处理方法及装置、存储介质和电子设备
US20210350362A1 (en) System and method of using localized blockchain to enable payment card use without connectivity
KR20010044524A (ko) 휴대폰을 이용한 신용카드 결제방법
US20170372313A1 (en) Electronic device and system for payment
US10236937B2 (en) Managing contactless communications
US20160321687A1 (en) Systems and methods for dynamic price delivery
CN105512882A (zh) 一种基于hce的支付方法和装置
CN109359970B (zh) 一种智能卡管理方法、装置及终端设备
KR20200041709A (ko) 블록체인 네트워크를 구성하는 장치 및 그 장치의 동작 방법
CN114519580A (zh) 近距离通信的请求支付方法、支付方法、终端及存储介质
KR20200129748A (ko) 발급된 카드를 이용하는 결제 시스템 및 결제 방법
KR20200126792A (ko) 큐알 코드를 포함하는 카드 및 큐알 코드에 수록된 정보를 읽어 들이는 개인 휴대 단말기

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant