一种基于近距离无线通讯技术NFC的收款方法及装置与流程

文档序号:20783426发布日期:2020-05-19 21:28阅读:259来源:国知局
一种基于近距离无线通讯技术NFC的收款方法及装置与流程

本发明涉及移动支付领域,尤其涉及一种基于近距离无线通讯技术nfc的收款方法、装置、设备、介质及智能终端。



背景技术:

在移动支付领域中,近距离无线通讯技术(nearfieldcommunication,nfc)支付大多都是利用nfc设备的卡模拟模式进行nfc空中发卡来实现的。

具体来说,此种模式需要支付系统与银行卡发卡机构进行合作,用户通过绑定实体银行卡来生成一张与之相关联的虚拟银行卡。这种方式使得用户可以不用携带多张银行卡,只需要一部手机就能够在销售终端(pointofsale,pos)机上进行付款操作。

但是,这样的nfc支付对商户来说,若商户欲利用pos机进行收款操作,则商户需要对旧pos机进行改造或者购买新的pos机,而这势必会增加商户的成本,而且收款操作依赖于pos机,无法随时随地收款,实际使用中也存在不便之处。



技术实现要素:

本发明实施例提供了一种基于近距离无线通讯技术nfc的收款方法、装置、设备、介质及智能终端,用以在不增加成本的同时进行基于nfc的支付收款操作,且提高基于nfc支付收款操作的便利性。

第一方面,本发明实施例提供了一种基于近距离无线通讯技术nfc的收款方法,包括:

获取支付订单信息,支付订单信息包括订单金额;

请求付款用户选择用于付款的金融集成电路(integratedcircuit,ic)卡;

在确定基于nfc与付款用户的金融ic卡建立连接后,获取金融ic卡的支付密码和金融ic卡的交易数据;

利用预先从支付平台获取的签名密钥,对金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码进行数字签名,生成交易报文;

将交易报文发送至支付平台进行支付。

在一种可能的实施方式中,本发明实施例提供的上述方法中,利用预先从支付平台获取的签名密钥,对金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码进行数字签名,生成交易报文,包括:

基于预先确定的支付规范,将金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码封装成数据报文;

利用预先从支付平台获取的签名密钥,对数据报文进行数字签名,生成交易报文。

在一种可能的实施方式中,本发明实施例提供的上述方法中,利用预先从支付平台获取的签名密钥,对数据报文进行数字签名,生成交易报文,包括:

利用预先从支付平台获取的加密密钥,对数据报文中的部分数据进行加密,生成加密报文;

利用预先从支付平台获取的签名密钥,对加密报文和数据报文中未加密部分数据进行数字签名,生成交易报文。

在一种可能的实施方式中,本发明实施例提供的上述方法中,预先从支付平台获取的加密密钥,采用如下步骤获取:

针对每笔支付订单信息,创建本地密钥;

向支付平台发送密钥交换请求,密钥交换请求中包括本地密钥;

接收支付平台对密钥交换请求的响应消息,从响应消息中获取加密密钥。

在一种可能的实施方式中,本发明实施例提供的上述方法中,在确定基于nfc与付款用户的金融ic卡建立连接后,获取金融ic卡的支付密码和金融ic卡的交易数据,包括:

在确定基于nfc与付款用户的金融ic卡建立连接后,利用预先存储的金融ic卡类型标识进行选卡;

在利用预先存储的金融ic卡类型标识选卡成功时,获取金融ic卡的支付密码和金融ic卡的交易数据。

在一种可能的实施方式中,本发明实施例提供的上述方法中,金融ic卡的交易数据,包括以下一种或多种:交易属性、授权金额、交易日期、交易时间、以及交易类型。

在一种可能的实施方式中,本发明实施例提供的上述方法中,金融ic卡包括以下一种或多种:实体金融ic卡、虚拟金融ic卡。

第二方面,本发明实施例提供一种基于近距离无线通讯技术nfc的收款装置,包括:

第一获取单元,用于获取支付订单信息,支付订单信息包括订单金额;

展示单元,用于请求付款用户选择用于付款的金融集成电路ic卡;

第二获取单元,用于在确定基于nfc与付款用户的金融ic卡建立连接后,获取金融ic卡的支付密码和金融ic卡的交易数据;

加密签名单元,用于利用预先从支付平台获取的签名密钥,对金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码进行数字签名,生成交易报文;

发送单元,用于将交易报文发送至支付平台进行支付。

第三方面,本发明实施例提供一种智能终端,智能终端包括近距离无线通讯技术nfc模块和本发明实施例第二方面提供的基于nfc的收款装置。

第四方面,本发明实施例还提供了一种基于近距离无线通讯技术nfc的收款设备,至少一个处理器、至少一个存储器以及存储在存储器中的计算机程序指令,当计算机程序指令被处理器执行时实现本发明实施例第一方面提供的基于近距离无线通讯技术nfc的收款方法。

第五方面,本发明实施例还提供了一种计算机存储介质,其上存储有计算机程序指令,当计算机程序指令被处理器执行时实现本发明实施例第一方面提供的基于近距离无线通讯技术nfc的收款方法。

本发明实施例提供的一种基于近距离无线通讯技术nfc的收款方法、装置、设备、介质及智能终端,获取支付订单信息,支付订单信息包括订单金额,请求付款用户选择用于付款的金融集成电路ic卡,在确定基于nfc与付款用户的金融ic卡建立连接后,获取金融ic卡的支付密码和金融ic卡的交易数据,然后利用预先从支付平台获取的签名密钥,对金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码进行数字签名,生成交易报文,并将交易报文发送至支付平台进行支付,完成收款操作。

本发明实施例提供的基于nfc的收款方案中,在获取支付订单信息后,只需要基于nfc功能与付款用户的金融ic卡建立连接,即可完成支付收款操作,与现有技术相比,无需对pos机进行改造,不增加成本,且收款操作不再依赖于pos机,提高了收款操作的便利性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1所示为本发明实施例提供的一种基于nfc的收款方法的示意流程图;

图2所示为本发明实施例提供的一种基于nfc的收款装置的结构示意图;

图3所示为本发明实施例提供的一种基于nfc的收款设备的结构示意图。

具体实施方式

以下结合附图对本申请的实施例进行说明,应当理解,此处所描述的实施例仅用于说明和解释本申请,并不用于限定本申请。

下面结合说明说附图,对本发明实施例提供的基于近距离无线通讯技术nfc的收款方法、装置、设备、介质及智能终端的具体实施方式进行说明。

如图1所示,本发明实施例提供了一种基于近距离无线通讯技术nfc的收款方法,其可以包括如下步骤:

步骤s101,获取支付订单信息,支付订单信息包括订单金额。

具体实施时,获取支付订单信息时,可以从交易平台直接获取,也可以通过其它方式获取,例如,用户手动输入,本发明实施例对此不做限定。

其中,支付订单信息可以包括但不限于:订单号、订购的商品信息、订单金额、订单交易时间和订单有效期。

步骤s102,请求付款用户选择用于付款的金融集成电路ic卡。

其中,金融ic卡可以是实体金融ic卡,例如:银行卡,也可以是虚拟金融ic卡,例如,虚拟支付应用程序,本发明实施例对此不做限定。

具体实施时,请求付款用户选择用于付款的金融集成电路ic卡时,若付款用户使用实体金融ic卡,则请求付款用户将金融ic卡放置在收款终端的指定区域;若付款用户使用虚拟金融ic卡,则请求付款用户选择用于虚拟支付的应用程序。

具体请求付款用户将金融ic卡放置在收款终端的指定区域时,或者请求付款用户选择用于虚拟支付的应用程序,可以在收款终端以文字形式展示该请求,也可以通过收款终端的语音功能语音播报该请求,本发明实施例对此不做限定。

步骤s103,在确定基于nfc与付款用户的金融ic卡建立连接后,获取金融ic卡的支付密码和金融ic卡的交易数据。

具体实施时,在确定付款用户选择用于付款的金融集成电路ic卡后,收款终端基于nfc模块与金融ic卡建立连接,在确定基于nfc与付款用户的金融ic卡建立连接后,获取金融ic卡的支付密码和金融ic卡的交易数据。

具体获取金融ic卡的支付密码,可以请求付款用户输入。具体获取金融ic卡的交易数据时,可以向金融ic卡发送apdu命令,同时接收金融ic卡返回的应答信息,然后将应答信息解析处理成tlv报文,并从tlv报文中获取需要的交易数据。

其中,交易数据包括但不限于:交易属性、授权金额、交易日期、交易时间、金融ic卡卡号、以及交易类型。

在一种可能的实施方式中,在确定基于nfc与付款用户的金融ic卡建立连接后,获取金融ic卡的支付密码和金融ic卡的交易数据之前,还需要进行选卡操作,以确定用户所使用金融ic卡的类型,具体来说:

在确定基于nfc与付款用户的金融ic卡建立连接后,利用预先存储的金融ic卡类型标识进行选卡,在利用预先存储的金融ic卡类型标识选卡成功时,获取金融ic卡的支付密码和金融ic卡的交易数据。当然,若选卡不成功,则无法完成支付收款操作。

其中,预先存储的金融ic卡类型标识包括但不限于:ppse、aid0、aid1、aid2、以及aid3。

在一个示例中,在利用预先存储的金融ic卡类型标识进行选卡时,首先从ppse开始,默认的非接触卡选择的支付系统支付环境为2pay.sys.ddf01,若选卡失败继续使用aid0进行选卡,若aid0选卡失败,则继续使用aid1进行选卡,若aid1选卡失败,则继续使用aid2进行选卡,若aid2选卡失败,则继续使用aid3进行选卡,若aid3也选卡失败,则提示用户选卡失败。

步骤s104,利用预先从支付平台获取的签名密钥,对金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码进行数字签名,生成交易报文。

具体实施时,利用预先从支付平台获取的签名密钥,对金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码进行数字签名,生成交易报文,包括:基于预先确定的支付规范,将金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码封装成数据报文;利用预先从支付平台获取的签名密钥,对数据报文进行数字签名,生成交易报文。其中,预先确定的支付规范可以是银联的支付规范。

具体实施时,按照银联支付规范重新组织成dcdata报文数据。dcdata报文处理方式包括hex转换,hexencode,hexdecode,字符缺省补齐。处理报文字段有track2、有效期、pin验证域,应用交易计数器(atc)。其中,根据金融ic卡类型的不同报文处理方式可以不相同。

具体实施时,利用预先从支付平台获取的签名密钥,对数据报文进行数字签名,生成交易报文,包括:利用预先从支付平台获取的加密密钥,对数据报文中的部分数据进行加密,生成加密报文;利用预先从支付平台获取的签名密钥,对加密报文和数据报文中未加密部分数据进行数字签名,生成交易报文。

具体在对数据报文中的部分数据进行加密时,可以对金融ic卡敏感参数进行加密,例如,对金融ic卡的卡号,交易金额,pin值,track数据,dcdata数据,有效期,交易日期等,按照报文参数字符升序排列进行报文组装追加到data数据,然后利用预先从支付平台获取的加密密钥进行aes加密,生成加密报文,然后将数据报文中未加密部分数据,也即非敏感数据进行排序处理并追加到加密报文前端,并对追加数据报文中未加密部分数据后的加密报文进行rsa签名处理,利用预先从支付平台获取的签名密钥进行签名。

其中,预先从支付平台获取的加密密钥,采用如下步骤获取:针对每笔支付订单信息,创建本地密钥;向支付平台发送密钥交换请求,密钥交换请求中包括本地密钥;接收支付平台对密钥交换请求的响应消息,从响应消息中获取加密密钥。

需要说明的是,针对每笔支付订单信息,创建本地密钥,不同支付订单信息,创建的本地密钥不同,进而从支付平台交换获取的加密密钥也不同。处理每笔支付订单信息时,从支付平台交换获取的加密密钥,仅在处理该支付订单信息的交易周期内有效,一笔支付订单信息处理完之后,针对下一笔支付订单信息,需要重新创建本地密钥,并从支付平台处交换获取新的加密密钥。

步骤s105,将交易报文发送至支付平台进行支付。

具体实施时,将交易报文发送至支付平台进行支付后,支付平台在前置模块部分对交易报文进行签名验证,使用保存的私钥对交易报文进行验证,若验证失败,则向收款终端发送支付失败的应答信息;若验证成功,则对合法有效的订单的报文进行处理,解析出交易data数据上送到加密机进行加密,再上送到支付渠道进行支付,完成收款操作。

需要说明的是,若支付平台对合法有效的订单的报文进行处理时,若确定该笔订单已经支付,则向收款终端发送支付已经成功的应答消息;若订单报文无法解密,则向收款终端发送支付失败的应答消息。

在一种可能的实施方式中,收款终端在初次使用时,需要与支付平台建立通信连接,并向支付平台发送标识身份的特征信息,例如,设备信息,以请求进行身份验证。若身份验证合法,则收款终端与支付平台建立连接,否则,初始化失败,无法进行收款操作。

在一种可能的实施方式中,收款终端还可以进行查询余额操作。若为查询余额操作,则查询成功后返回金融ic卡的余额的详细信息。

基于相同的发明构思,本发明实施例还提供一种基于近距离无线通讯技术nfc的收款装置。

如图2所示,本发明实施例提供一种基于nfc的收款装置,包括:

第一获取单元201,用于获取支付订单信息,支付订单信息包括订单金额。

展示单元202,用于请求付款用户将金融集成电路ic卡放置在收款终端的指定区域。

第二获取单元203,用于在确定基于nfc与付款用户的金融ic卡建立连接后,获取金融ic卡的支付密码和金融ic卡的交易数据。

加密签名单元204,用于利用预先从支付平台获取的签名密钥,对金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码进行数字签名,生成交易报文。

发送单元205,用于将交易报文发送至支付平台进行支付。

在一种可能的实施方式中,加密签名单元204具体用于:基于预先确定的支付规范,将金融ic卡的交易数据、订单金额、以及金融ic卡的支付密码封装成数据报文;利用预先从支付平台获取的签名密钥,对数据报文进行数字签名,生成交易报文。

在一种可能的实施方式中,加密签名单元204具体用于:利用预先从支付平台获取的加密密钥,对数据报文中的部分数据进行加密,生成加密报文;利用预先从支付平台获取的签名密钥,对加密报文和数据报文中未加密部分数据进行数字签名,生成交易报文。

在一种可能的实施方式中,加密签名单元204采用如下步骤预先从支付平台获取加密密钥:针对每笔支付订单信息,创建本地密钥;向支付平台发送密钥交换请求,密钥交换请求中包括本地密钥;接收支付平台对密钥交换请求的响应消息,从响应消息中获取加密密钥。

在一种可能的实施方式中,第二获取单元203具体用于:在确定基于nfc与付款用户的金融ic卡建立连接后,利用预先存储的金融ic卡类型标识进行选卡;在利用预先存储的金融ic卡类型标识选卡成功时,获取金融ic卡的支付密码和金融ic卡的交易数据。

在一种可能的实施方式中,金融ic卡的交易数据,包括以下一种或多种:交易属性、授权金额、交易日期、交易时间、以及交易类型。

在一种可能的实施方式中,金融ic卡包括以下一种或多种:实体金融ic卡、虚拟金融ic卡。

另外,本发明实施例提供一种智能终端,智能终端包括近距离无线通讯技术nfc模块和本发明实施例提供的基于nfc的收款装置。

另外,结合图1-图2描述的本发明实施例的基于nfc的收款方法和装置可以由基于nfc的收款设备来实现。图3示出了本发明实施例提供的基于nfc的收款备的硬件结构示意图。

基于nfc的收款设备可以包括处理器301以及存储有计算机程序指令的存储器302。

具体地,上述处理器301可以包括中央处理器(cpu),或者特定集成电路(applicationspecificintegratedcircuit,asic),或者可以被配置成实施本发明实施例的一个或多个集成电路。

存储器302可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器302可包括硬盘驱动器(harddiskdrive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universalserialbus,usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器302可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器302可在数据处理装置的内部或外部。在特定实施例中,存储器302是非易失性固态存储器。在特定实施例中,存储器302包括只读存储器(rom)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(prom)、可擦除prom(eprom)、电可擦除prom(eeprom)、电可改写rom(earom)或闪存或者两个或更多个以上这些的组合。

处理器301通过读取并执行存储器302中存储的计算机程序指令,以实现上述实施例中的任意一种基于nfc的收款方法。

在一个示例中,基于nfc的收款设备还可包括通信接口303和总线310.其中,如图3所示,处理器301、存储器302、通信接口303通过总线310连接并完成相互间的通信。

通信接口303,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。

总线310包括硬件、软件或两者,将基于nfc的收款设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(agp)或其他图形总线、增强工业标准架构(eisa)总线、前端总线(fsb)、超传输(ht)互连、工业标准架构(isa)总线、无限带宽互连、低引脚数(lpc)总线、存储器总线、微信道架构(mca)总线、外围组件互连(pci)总线、pci-express(pci-x)总线、串行高级技术附件(sata)总线、视频电子标准协会局部(vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线310可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。

基于nfc的收款设备可以基于获取到的支付订单信息,执行本发明实施例中的基于nfc的收款方法,从而实现结合图1-图2描述的基于nfc的收款方法和装置。

另外,结合上述实施例中的基于nfc的收款方法,本发明实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种基于nfc的收款方法。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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