面向移动用户的安全支付方法和系统与流程

文档序号:11135032阅读:278来源:国知局
面向移动用户的安全支付方法和系统与制造工艺

本发明涉及计算机及其软件技术领域,特别地涉及一种面向移动用户的安全支付方法和一种面向移动用户的安全支付系统。



背景技术:

U盾,也叫USB KEY,通常是一个类似U盘的实物。当用户使用网银进行转账等操作时,网银会激活U盾弹出个密码输入框要求用户输入网银支付密码以完成转账操作。

U盾的技术原理大致如下:首先,金融机构系统先给U盾一个"冲击",它包含了随机数,以及该随机数HASH,它们都由公钥加密,这样就可以保证只有你能解密这个"冲击";然后,U盾计算该随机数的HASH,并和用私钥解出的HASH,两者相同后,便可确认金融机构系统的身份;接着,以一个只有U盾和金融机构系统知道的算法,利这个随机数和一些其它信息,生成"响应"和相应的HASH,再用私钥加密后发回金融机构系统。此时金融机构系统也以相同的算法计算该"响应";最后,金融机构系统用公钥解密,并验证HASH正确,接下来金融机构系统比较两个"响应"是否相同,相同的话也就确认了U盾持有者的身份;至于私钥的保密性由U盾来完成。U盾的控制芯片被设计为只能写入证书,不能读取证书,并且所有利用证书(私钥)进行的运算都在U盾中进行。所以,只能从U盾读出运算结果。

U盾的安全措施有如下几个方面:

1.硬件PIN码保护

U盾采用了使用以物理介质为基础的个人客户证书,建立基于公钥PKI技术的个人证书认证体系(PIN码)。黑客需要同时取得用户的U盾硬件以及用户的PIN码,才可以登录系统。即使用户的PIN码泄露,U盾没有丢失,合法用户的身份就不会被仿冒,如果用户U盾丢失,其他人不知道用户的PIN码,这也是无法假冒合法用户的身份。

2.安全的密钥存放

U盾的密钥存储于内部的智能芯片中,用户无法从外部直接读取,对密钥文件的读写和修改都必须由U盾内部的CPU调用相应的程序文件执行,从而U盾接口的外面,没有任何一条指令能对密钥区的内容进行读取、修改、更新和删除,这样可以保证黑客无法利用非法程序修改密钥。

3.双密钥密码体制

为了提高交易的安全,U盾采用了双钥密码体制保证安全性,在U盾初始化的时候,先将密码算法程序烧制在ROM中,然后通过产生公私密钥对的程序生成一对公私密钥,公私密钥产生后,密钥可以导出到U盾外,而私钥则存储于密钥区,不允许外部访问。进行数字签名时以及非对称解密运算时,凡是有私参与的密码运算只在芯片内部即可完成,全程私钥可以不出U盾介质,从而来保证以U盾为存储介质的数字证书认证在安全上无懈可击。

4.硬件实现加密算法

U盾内置CPU或智能卡芯片,可以实现数据摘要、数据加解密和签名的各种算法,加解密运算在U盾内进行,保证了用户密钥不会出现在计算机内存中。

U盾的缺点有如下两个方面:

1.成本高昂:U盾采购价目前没有金融机构进行过公示,我们不得而知。但是除了金融机构免费赠送的U盾外,各大金融机构的U盾价格基本在30至60元之间。

2.不适合移动业务:目前U盾主要以USB作为I/O接口,因此相比PC端,在手机上使用金融机构U盾显得十分冗余和不方便。



技术实现要素:

有鉴于此,本发明提供一种面向移动用户的安全支付方法和系统,可以解决现有技术中的上述问题,具有成本低廉、使用便利等优点。

为实现上述目的,根据本发明的一个方面,提供了一种面向移动用户的安全支付方法。

本发明的面向移动用户的安全支付方法包括:安全支付平台装置接收到安全支付应用装置发出的卡注册请求之后,保存所述卡注册请求携带的用户手机号码和终端标识信息,然后向所述安全服务卡应用装置发送卡注册成功通知;所述安全支付平台装置接收到金融机构系统发出的金融机构注册请求之后,向所述金融机构系统分配安全接入码;所述安全支付平台装置保存所述金融机构系统提交的金融机构公钥和合规的交易信息模板;所述安全支付平台装置接收所述金融机构系统发出的用户开通请求,所述用户开通请求携带安全接入码和用户手机号码;所述安全支付平台装置根据所述安全接入码确认金融机构身份合法,根据所述用户手机号码确认用户身份合法,利用通过安全短信通道将所述金融机构公钥加密传输给所述安全支付应用装置保存;所述安全支付应用装置生成所述金融机构公钥对应的密钥标识,然后利用所述安全短信通道将所述密钥标识加密传输给安全支付平台装置保存;所述安全支付平台装置接收交易认证请求,所述交易认证请求是所述金融机构系统接收到任意形式发起端的用户网银交易申请后发出的,所述交易认证请求携带安全接入码、用户手机号码、交易信息变量数据;所述安全支付平台装置根据所述安全接入码确认金融机构身份合法,根据所述用户手机号码确认用户身份合法,然后将所述交易信息变量数据补充到本地预存的交易信息模板中得到完整交易信息,然后通过安全短信通道将所述完整交易信息和所述密钥标识加密传输给所述安全支付应用装置;所述安全支付应用装置根据所述完整交易信息发送主动式命令以控制移动终端向用户显示交易内容并提示用户输入支付密码,然后接收所述移动终端返回的用户发出的支付密码;所述安全支付应用装置根据所述密钥标识检索出对应的金融机构公钥,然后采用所述金融机构公钥加密所述支付密码得到支付密码密文,然后通过安全短信通道将所述支付密码密文加密传输发送给安全支付平台装置;所述安全支付平台装置将所述支付密码密文发送给所述金融机构系统。

可选地,所述安全支付应用装置采用所述金融机构公钥加密所述支付密码得到支付密码密文的步骤包括:所述安全支付应用装置调用智能芯片卡提供的安全算法API,采用所述金融机构公钥加密所述支付密码得到支付密码密文。

可选地,所述终端标识信息包括:国际移动用户识别码IMSI、移动终端串码IMEI和集成电路卡识别码ICCID。

为实现上述目的,根据本发明的一个方面,提供了一种面向移动用户的安全支付系统。

本发明的面向移动用户的安全支付系统包括:安全支付平台装置和安全支付应用装置,安全支付平台装置用于:接收到安全支付应用装置发出的卡注册请求之后,保存所述卡注册请求携带的用户手机号码和终端标识信息,然后向所述安全服务卡应用装置发送卡注册成功通知;所述安全支付平台装置接收到金融机构系统发出的金融机构注册请求之后,向所述金融机构系统分配安全接入码;保存所述金融机构系统提交的金融机构公钥和合规的交易信息模板;接收所述金融机构系统发出的用户开通请求,所述用户开通请求携带安全接入码和用户手机号码;根据所述安全接入码确认金融机构身份合法,根据所述用户手机号码确认用户身份合法,利用通过安全短信通道将所述金融机构公钥加密传输给所述安全支付应用装置保存;接收交易认证请求,所述交易认证请求是所述金融机构系统接收到任意形式发起端的用户网银交易申请后发出的,所述交易认证请求携带安全接入码、用户手机号码、交易信息变量数据;根据所述安全接入码确认金融机构身份合法,根据所述用户手机号码确认用户身份合法,然后将所述交易信息变量数据补充到本地预存的交易信息模板中得到完整交易信息,然后通过安全短信通道将所述完整交易信息加密和所述密钥标识传输给所述安全支付应用装置;将所述支付密码密文发送给所述金融机构系统;所述安全支付应用装置用于生成所述金融机构公钥对应的密钥标识,然后利用所述安全短信通道将所述密钥标识加密传输给安全支付平台装置保存;根据所述完整交易信息发送主动式命令以控制移动终端向用户显示交易内容并提示用户输入支付密码,然后接收所述移动终端返回的用户发出的支付密码;根据所述密钥标识检索出对应的金融机构公钥,然后采用所述金融机构公钥加密所述支付密码得到支付密码密文,然后通过安全短信通道将所述支付密码密文加密传输给安全支付平台装置。

可选地,所述安全支付应用装置还用于:调用智能芯片卡提供的安全算法API,采用所述金融机构公钥加密所述支付密码得到支付密码密文。

可选地,所述终端标识信息包括:国际移动用户识别码IMSI、移动终端串码IMEI和集成电路卡识别码ICCID。

根据本发明的技术方案,至少具有如下有益效果。

(1)由于电信智能卡和金融智能卡本身的同构性,以及卡应用的可塑造型,使得通过改造运营商的手机卡实现银行U盾功能成为可能。据了解,运营商一张512K容量的Java卡其采购价格为6至8元,而我们的金融机构U盾应用其占用空间约在20K以内,其余卡片空间可以继续安装其他卡应用,因此可以预期通过这种卡片共享的合作模式,能够有效降低金融机构U盾业务的投入成本。

(2)通过在手机卡中集成U盾功能,可以避免用户多带一个实体“U盘”的烦恼。使用中也无需再往手机上插入任何配件,极大地提升业务的便捷性,适合移动业务需求。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是根据本发明实施方式的面向移动用户的安全支付方法的基本步骤的示意图;

图2是根据本发明实施方式的面向移动用户的安全支付系统的主要模块的示意图;

图3是根据本发明实施方式的面向移动用户的安全支付系统的工作过程的示意图。

具体实施方式

以下结合附图对本发明的示范性实施方式做出说明,其中包括本发明实施方式的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施方式做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

为了使本领域技术人员更好地理解,现对部分名词术语解释如下:

安全支付应用装置:是一个安全芯片卡上的特殊应用程序,该安全芯片卡以可插拔形式或内嵌芯片形式安装在移动终端内使用。该装置相当于安全支付平台装置所对应的客户端。

安全支付平台装置:相当于安全支付应用装置所对应的服务器。

MSISDN:Mobile Subscriber International ISDN/PSTN number,即用户手机号码。

IMSI:International Mobile Subscriber Identification Number,即国际移动用户识别码。

IMEI:International Mobile Equipment Identity,即移动终端串码。

ICCID:Integrated Circuit Card Identifier,即集成电路卡识别码。

API:Application Programming Interface,即应用程序编程接口。

MAC:Message Authentication Code,消息认证码。

图1是根据本发明实施方式的面向移动用户的安全支付方法的基本步骤的示意图。如图1所示,该实施方式的面向移动用户的安全支付方法主要包括如下的步骤101至步骤111。

步骤101:安全支付平台装置接收到安全支付应用装置发出的卡注册请求之后,保存卡注册请求携带的用户手机号码和终端标识信息,然后向安全服务卡应用装置发送卡注册成功通知。其中,终端标识信息可以包括:国际移动用户识别码IMSI、移动终端串码IMEI和集成电路卡识别码ICCID。

需要说明的是,在步骤101之后还可以包括如下步骤:安全支付应用装置在移动终端开机和卡片热插拔的情况下,检测移动终端是否变更并与安全支付平台装置保持信息同步。

步骤102:安全支付平台装置接收到金融机构系统发出的金融机构注册请求之后,向金融机构系统分配安全接入码。该安全接入码可以用于验证金融机构系统的身份,防止资质不合格的机构冒名利用安全支付平台实现非法目的。

步骤103:安全支付平台装置保存金融机构系统提交的金融机构公钥和合规的交易信息模板。需要说明的是,“合规”意味着安全支付平台装置对金融机构系统提交的交易信息模板进行了审核且审核通过了。

步骤104:安全支付平台装置接收金融机构系统发出的用户开通请求,用户开通请求携带安全接入码和用户手机号码。

步骤105:安全支付平台装置根据安全接入码确认金融机构身份合法(具体做法是将接收到的用户开通请求中的安全接入码与本地保存的安全接入码进行对比,若一致则说明合法),根据用户手机号码确认用户身份合法(具体做法是将接收到的用户开通请求中的用户手机号码在本地保存的用户手机号码名单进行检索,若存在该数据记录则说明合法),利用安全短信通道将金融机构公钥加密传输给安全支付应用装置保存。也就是说,此时安全支付平台装置向安全支付应用装置下行的安全报文中包括金融机构公钥。

需要说明的是,加密传输是指安全支付应用装置和安全支付应用装置之间采用约定的通讯密码进行数据交互,一方加密则另一方解密。安全支付应用装置和安全支付应用装置中可以采用如下表1的密钥。

表1安全支付应用装置和安全支付应用装置之间中使用的密钥

步骤106:安全支付应用装置生成金融机构公钥对应的密钥标识,然后利用安全短信通道将密钥标识加密传输给安全支付平台装置保存。也就是说,此时安全支付应用装置向安全支付平台装置上行的安全报文中包括密钥标识。

步骤107:安全支付平台装置接收交易认证请求,交易认证请求是金融机构系统接收到任意形式发起端的用户网银交易申请后发出的,交易认证请求携带安全接入码、用户手机号码、交易信息变量数据。

步骤108:安全支付平台装置根据安全接入码确认金融机构身份合法,根据用户手机号码确认用户身份合法,然后将交易信息变量数据补充到本地预存的交易信息模板中得到完整交易信息,然后通过安全短信通道将完整交易信息加密和密钥标识传输给安全支付应用装置。也就是说,此时安全支付平台装置向安全支付应用装置下行的安全报文中包括完整交易信息加密和密钥标识。

步骤109:安全支付应用装置根据完整交易信息发送主动式命令以控制移动终端向用户显示交易内容并提示用户输入支付密码,然后接收移动终端返回的用户发出的支付密码。

步骤110:安全支付应用装置根据密钥标识检索出对应的金融机构公钥,然后采用金融机构公钥加密支付密码得到支付密码密文,然后通过安全短信通道将支付密码密文加密传输给安全支付平台装置。也就是说,此时安全支付应用装置向安全支付平台装置上行的安全报文中包括支付密码密文。

优选地,步骤110中的“加密支付密码得到支付密码密文”的过程中,安全支付应用装置调用智能芯片卡提供的安全算法API来执行加密过程。由于调用卡片底层安全算法API进行的加密技术属于硬件加密,这意味着安全支付应用装置不直接参与加密过程,可以保证用户支付密码的机密性。

步骤111:安全支付平台装置将支付密码密文发送给金融机构系统。金融机构系统在接收到支付密码密文之后,采用金融机构私钥进行解密,得到支付密码,然后金融机构对该支付密码进行验证,如验证通过则整个网银交易成功。

图2是根据本发明实施方式的面向移动用户的安全支付系统的基本模块的示意图。如图2所示,该实施方式的面向移动用户的安全支付系统20主要包括安全服务平台装置21和安全服务应用装置22。

安全服务平台装置21用于:接收到安全支付应用装置发出的卡注册请求之后,保存卡注册请求携带的用户手机号码和终端标识信息,然后向安全服务卡应用装置发送卡注册成功通知;安全支付平台装置接收到金融机构系统发出的金融机构注册请求之后,向金融机构系统分配安全接入码;保存金融机构系统提交的金融机构公钥和合规的交易信息模板;接收金融机构系统发出的用户开通请求,用户开通请求携带安全接入码和用户手机号码;根据安全接入码确认金融机构身份合法,根据用户手机号码确认用户身份合法,利用通过安全短信通道将金融机构公钥加密传输给安全支付应用装置保存;接收交易认证请求,交易认证请求是金融机构系统接收到任意形式发起端的用户网银交易申请后发出的,交易认证请求携带安全接入码、用户手机号码、交易信息变量数据;根据安全接入码确认金融机构身份合法,根据用户手机号码确认用户身份合法,然后将交易信息变量数据补充到本地预存的交易信息模板中得到完整交易信息,然后通过安全短信通道将完整交易信息和密钥标识加密传输给安全支付应用装置;将支付密码密文发送给金融机构系统。

安全支付应用装置22用于:生成金融机构公钥对应的密钥标识,然后利用安全短信通道将密钥标识加密传输给安全支付平台装置保存;根据完整交易信息发送主动式命令以控制移动终端向用户显示交易内容并提示用户输入支付密码,然后接收移动终端返回的用户发出的支付密码;根据密钥标识检索出对应的金融机构公钥,然后采用金融机构公钥加密支付密码得到支付密码密文,然后通过安全短信通道将支付密码密文加密传输给安全支付平台装置。

可选地,安全支付应用装置22还用于:调用智能芯片卡提供的安全算法API,采用金融机构公钥加密支付密码得到支付密码密文。

可选地,终端标识信息包括:国际移动用户识别码IMSI、移动终端串码IMEI和集成电路卡识别码ICCID。

可选地,安全支付应用装置22还用于:在移动终端开机和卡片热插拔的情况下,检测移动终端是否变更并与安全支付平台装置保持信息同步。

为使公众更好地理解,下面结合详细实施例做具体介绍。图3是根据本发明实施方式的订购业务的系统的工作过程的示意图。如图3所示,整个工作过程可以大致划分为初始化阶段、交易信息配置阶段、服务开通阶段和交易业务阶段,除了涉及了本发明实施方式的面向移动用户的安全支付系统中的安全支付平台装置21和安全支付应用装置22之外,还涉及了金融机构系统、移动终端和用户。

一、初始化阶段

首先,确保移动终端内的智能卡中已加载安全支付应用装置。用户插卡开机(也包含开机热插拔卡的情况),移动终端将按照电信国际标准去激活卡片。

其次,卡片收到移动终端的开机通知,则激活智能卡中的手安全支付应用装置。应用激活后,将启动开机处理流程(以下操作不分先后顺序):

A.检查激活状态:通过应用程序中的一个状态标识进行判定。

B.检查终端信息:每次插卡开机时,安全支付应用装置都会向终端发送主动式命令(一种机卡通信的底层交互指令,参见电信国际标准《ETSI TS 102 223》),以获取终端的标识信息(包括但不限于:IMEI,国际移动设备标识)并进行存储。因此只要对每次新获取的终端标识信息与应用中已存储的终端标识信息比较,便可判定出两次插卡的移动终端是否是同一台。对于未激活的安全支付应用装置,其内置的终端标识信息为空。

C.检查卡片信息:对于未激活安全支付应用装置,在首次运行时会从卡片中获取卡片标识信息(包括但不限于:ICCID、IMSI等)。获取方法包括但不限于:读取卡片文件、通过卡片API获取等;

然后,上行卡片注册信息,根据上述检查结果作如下的相应处理。

A.当应用处于未激活状态:则对获取的卡片和终端标识信息进行安全报文封装(通过卡应用预置密钥进行加密),并通过短信通道上行至安全支付平台装置。

B.当应用处于终端变更状态:则对获取到的终端标识信息进行安全报文封装(通过卡应用预置密钥进行加密),并通过短信通道上行至安全支付平台装置。

最后,安全支付平台装置收到卡应用的上行注册信息后,通过预置密钥进行报文解析,并作以下相应处理:

A.若为新应用激活信息,则通过用户手机号码、终端标识信息、卡片标识信息,在平台数据库中建用户、手机卡和终端三者的对应关系。同时,平台为该用户分配一个唯一的用户标识符,并动态生成若干把业务密钥。这些数据都会利用安全短信技术,下推到用户的安全支付应用装置中,并由此完成应用的初始化工作。

B.若为终端更换通知信息,则根据用户手机号码找到该用户的关系表,并更新终端标识信息。

二、交易信息配置阶段

安全支付平台装置接收到金融机构系统发出的金融机构注册请求之后,向金融机构系统分配安全接入码。

安全支付平台装置保存金融机构系统提交的金融机构公钥。为了提高安全性,建议金融机构系统配置多把公钥,在实际使用中,针对每个用户,安全支付平台装置将随机选择其中一把公钥进行远程安装。

安全支付平台装置审批金融机构系统提交的交易信息模板,然后保存通过审批的交易信息模板。该交易信息模板中可以包括多个元素内容,银行系统可以通过平台提供的接口变量(例如银行卡号、交易金额、手续费、交易时间等),再调用服务时动态填写交易信息模板以得到完整的交易信息。

三、服务开通阶段

用户向金融机构要求开通安全支付服务,于是金融机构系统向安全支付平台装置发起请求。

安全支付平台装置接收金融机构系统发出的用户开通请求,用户开通请求携带安全接入码和用户手机号码。

安全支付平台装置根据安全接入码确认金融机构身份合法,根据用户手机号码确认用户身份合法,利用通讯密钥将金融机构公钥封装成第一下行安全报文,然后通过安全短信通道将第一下行安全报文发送给安全支付应用装置。

安全支付应用装置利用通讯密钥解析第一安全报文得到金融机构公钥,然后保存金融机构公钥并生成金融机构公钥对应的密钥标识。

此时,还可以根据得到的第一下行安全报文,给予用户响应的文字提示,例如“正在安装XX银行证书,请不要关闭手机……”,信息的展示形式包括以下三种:弹窗、输入框和列表。

安全支付应用装置利用通讯密钥将将密钥标识封装成第一上行安全报文,然后通过安全短信通道将第一上行安全报文发送给安全支付平台装置。

然后安全支付平台装置解密第一上行安全报文的到密钥标识,然后保存该密钥标识。

随后,安全支付平台装置和金融机构系统之间可以相互通知和应答。

四、网银交易阶段

安全支付平台装置接收交易认证请求,交易认证请求是金融机构系统接收到任意形式发起端的用户网页交易申请后发出的,交易认证请求携带安全接入码、用户手机号码和交易变量信息。

安全支付平台装置根据安全接入码确认金融机构身份合法,根据用户手机号码确认用户身份合法,然后将交易变量信息加入交易信息模板得到完整交易信息,利用通讯密钥将完整交易信息封装成第二下行安全报文,然后通过安全短信通道将第二下行安全报文发送给安全支付应用装置。

安全支付应用装置利用通讯密钥解析第二安全报文得到完整交易信息,然后发送主动式命令,以控制移动终端向用户显示完整交易信息,并提示用户输入支付密码。

安全支付应用装置接受到移动终端返回的用户输入支付密码后,采用金融机构公钥对用户输入支付密码加密得到支付密码密文,然后利用通讯密钥将将支付密码密文封装成第二上行安全报文,然后通过安全短信通道将第二上行安全报文发送给安全支付平台装置。

安全支付平台装置利用通讯密钥解密第二上行安全报文的到支付密码密文,然后将支付密码密文发送给金融机构系统,以便金融机构系统采用金融机构私钥解密支付密码密文确认支付过程。

后续的操作将依赖金融机构系统与用户的交互操作(如重新验证、结束本次交易、密码重置等等),另行处理。

由上可知,本发明的面向移动用户的安全支付方法和系统至少具有如下优点:

(1)由于电信智能卡和金融智能卡本身的同构性,以及卡应用的可塑造型,使得通过改造运营商的手机卡实现银行U盾功能成为可能。据了解,运营商一张512K容量的Java卡其采购价格为6至8元,而我们的金融机构U盾应用其占用空间约在20K以内,其余卡片空间可以继续安装其他卡应用,因此可以预期通过这种卡片共享的合作模式,能够有效降低金融机构U盾业务的投入成本。

(2)通过在手机卡中集成U盾功能,可以避免用户多带一个实体“U盘”的烦恼。使用中也无需再往手机上插入任何配件,极大地提升业务的便捷性,适合移动业务需求。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

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