一种基于软体客户端的安全支付认证方法

文档序号:7867563阅读:137来源:国知局
专利名称:一种基于软体客户端的安全支付认证方法
一种基于软体客户端的安全支付认证方法
技术领域
本发明涉及一种安全支付认证方法。
背景技术
在网络支付领域,通常的安全支付技术手段包括以下I)手机动态口令的安全支付方法这是基于手机绑定的安全支付技术。其主要机理是当需要时由服务器端产生交易码(该校验码可认为一种特殊的动态密码),通过网络以外的渠道进行发送,安全级别高,但存在着短信滞后、需支付短信费用的问题。2)基于数字证书身份认证的安全支付方法其主要机理是由权威公正的第三方机构(如CA中心)签发的证书。通过加密技术可以对网络上传输的信息进行加密和解密、数字签名和签名验证,确保网上传递信息的机密性、完整性。主要存在着操作繁琐,浏览器兼容性差异、以及私钥证书的传递比较麻烦等方面的问题。3)基于动态口令身份认证的安全支付方法动态口令身份认证机理是根据专门的算法生成一个不可预测的随机数字组合,每个密码只能使用一次。目前主要有基于时间同步机制的、基于事件同步机制的和基于挑战/应答(异步)机制三种技术模式。动态口令应用基本特征是,用户必须持有一个用于产生动态口令的设备,用设备产生动态口令后,交给应用系统,再由应用系统转交认证系统认证。动态口令身份认的安全性相对较高,但在特定应用场景下仍然存在着诸如安全漏 洞方面的问题。例如一旦用户输入“动态密码”并通过网络传送,位于用户与网银服务器通信通道间的黑客便可通过键盘监听、内存读取等方式将其截获,使用户无法完成登录,并造成网络连接断开、连接超时等假象;另一方面黑客利用截获的“动态密码”假冒用户登录到网银,肆意作案,使用户蒙受损失。4)挑战-应答的安全支付方法挑战-应答方法主要机理是通过服务器向支付方发送一个一次性随机数(挑战),如果收到支付方发来的应答消息中包含该一次性随机数,则确认该支付方的认证。在现阶段,基于挑战-应答身份认证的具体应用一般都借助于USB Key的硬件客户端来实现,其主要存在以下问题a)采用挑战-应答认USBkey证方式,USB Key传递需借助实体渠道,此外丢失与维护成本都较高,制约了其的推广与应用;b)采用挑战-应答认USBkey证方式,其认证过程对用户来说完全透明,存在系统性漏洞,该系统性漏洞描述如下 用户登录钓鱼网站,准备输入密码前,攻击方伪造用户向服务器发出认证请求;
攻击方截获服务器反馈的挑战; 通过钓鱼网站,用截取服务器的挑战诱导客户端发出挑战应答令牌; 攻击方截获对应的挑战应答令牌;·向服务器提交挑战应答令牌。

发明内容本发明要解决的技术问题,在于提供一种基于软体客户端的安全支付认证方法,对挑战-应答支付认证方式在电子商务网络支付过程中存在的局限性进行改良,解决了usbkey硬件介质传递、成本给推广带来的限制问题; 其次,当客户在支付时需对支付信息进行二次确认,解决了上述的安全系统性漏洞的问题。本发明是这样实现的一种基于软体客户端的安全支付认证方法,其包括如下步骤步骤1、启动客户端,判断客户端运行环境是否已经通过可信授权,若是,客户端正常运行,并进行步骤3 ;若否,进入步骤2 ;步骤2、认证服务器通过手机动态口令机制对客户端运行环境进行可信授权,即提取客户端环境的机器数字指纹,在此基础上产生原始密令、客户端数字证书;客户端向认证服务器提交原始密令,认证服务器通过手机动态口令机制认证提交者身份,认证通过后产生对应的服务器密钥;并存储机器数字指纹和服务器密钥,之后回到步骤I ;步骤3、进行支付时,客户端向认证服务器发出请求,要求进行支付认证;步骤4、认证服务器验证用户合法性后产生"挑战"随机数,并加入支付信息,采用可逆加密算法生成请求支付令牌,发送给客户端;步骤5、客户端接收请求支付令牌后进行解密,客户端显示支付信息,用户确认支付信息并输入支付密码;步骤6、客户端提取支付令牌中的种子密钥,提取机器数字指纹、并载入客户端数字证书、用户输入的支付密码形成”组合密钥算子”,在此基础上利用特定的加密算法计算出应答数,生成、提交挑战应答令牌;步骤7、认证服务器将服务端“挑战”随机数、客户端的机器数字指纹进行MD5非对称加密,并根据用户服务器密钥进行RSA运算;对挑战应答令牌中包含“挑战”随机数、客户端的机器数字指纹的MD5非对称加密,并利用客户端密钥进行RSA运算;将二者的运算结果进行比较,若两者相同则可确认其支付应答令牌真实性,即认证成功,否则为认证失败;步骤8、认证服务器通知客户支付或认证成功或失败。进一步的,本发明所述步骤6中“组合密钥算子”形成方法具体是对种子密钥,机器数字指纹、客户端数字证书、支付密码进行RSA对称加密形成。进一步的,本发明所述步骤6中特定的加密算法具体是RSA、MD5、AzDGCrypt, DES加密算法的至少一种或至少两种的组合。本发明具有如下优点I)通过软体客户端取代了 USBkey硬件介质,满足了传播、管理的便捷性,同时控制了成本;
2)设计了基于手机短信验证客户端运行环境可靠的环节,将软件客户端、软件运行环境与客户进行绑定,事实上起到了利用硬件(用户手机)校验支付身份的作用;3)将支付信息通过软体客户端直接向客户呈现,以客户对该支付信息确认为前提形成支付确认令牌,即该令牌只对用户确认过的支付信息有效,避免了该令牌被截取带给用户的损失。

下面参照附图结合实施例对本发明作进一步的说明。图1为本发明方法执行流程图。
具体实施方式如图1所示,本发明基于软体客户端的安全支付认证方法,包括如下步骤步骤1、启动客户端,判断客户端运行环境是否已经通过可信授权,若是,客户端正常运行,并进行步骤3 ;若否,进入步骤2 ;步骤2、认证服务器通过手机动态口令机制对客户端运行环境进行可信授权,即提取客户端环境的机器数字指纹,在此基础上产生原始密令、客户端数字证书;客户端向认证服务器提交原始密令,认证服务器通过手机动态口令机制认证提交者身份,认证通过后产生对应的服务器密钥;存储机器数字指纹和服务器密钥,之后回到步骤I ;步骤3、进行支付时,客户端向认证服务器发出请求,要求进行支付认证;步骤4、认证服务器验证用户合法性后产生"挑战"随机数,并加入支付信息,采用可逆加密算法生成请求支付令牌,发送给客户端;步骤5、客户端接收请求支付令牌后进行解密,客户端显示支付信息,用户确认支付信息并输入支付密码;步骤6、客户端提取支付令牌中的种子密钥,提取机器数字指纹、并载入客户端数字证书、用户输入的支付密码形成“组合密钥算子”,在此基础上利用特定的加密算法计算出应答数,生成、提交挑战应答令牌;其中,“组合密钥算子”可以是对种子密钥,机器数字指纹、客户端数字证书、支付密码进行RSA对称加密形成;所述的特定的加密算法可以是RSA、MD5、AzDGCrypt、DES加密算法的至少一种或至少两种的组合。步骤7、认证服务器将服务端“挑战”随机数、客户端的机器数字指纹进行MD5非对称加密,并根据用户服务器密钥进行RSA运算;对挑战应答令牌中包含“挑战”随机数、客户端的机器数字指纹的MD5非对称加密,并利用客户端密钥进行RSA运算;将二者的运算结果进行比较,若两者相同则可确认其支付应答令牌真实性,即认证成功,否则为认证失败;步骤8、认证服务器通知客户支付(或认证)成功或失败。综上所述,本发明通过软体客户端取代了 USBkey硬件介质,满足了传播、管理的便捷性,同时控制了成本;设计了基于手机短信验证客户端运行环境可靠的环节,将软件客户端、软件运行环境与客户进行绑定,事实上起到了利用硬件(用户手机)校验支付身份的作用;将支付信息通过软体客户端直接向客户呈现,以客户对该支付信息确认为前提形成支付确认令牌,即该令牌只对用户确认过的支付信息有效,避免了该令牌被截取带给用户的损失。虽然以上描述了本发明的具体实施方式
,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
权利要求
1.一种基于软体客户端的安全支付认证方法,其特征在于包括如下步骤 步骤1、启动客户端,判断客户端运行环境是否已经通过可信授权,若是,客户端正常运行,并进行步骤3 ;若否,进入步骤2 ; 步骤2、认证服务器通过手机动态口令机制对客户端运行环境进行可信授权,即 提取客户端环境的机器数字指纹,在此基础上产生原始密令、客户端数字证书; 客户端向认证服务器提交原始密令,认证服务器通过手机动态口令机制认证提交者身份,认证通过后产生对应的服务器密钥; 并存储机器数字指纹和服务器密钥,之后回到步骤I ; 步骤3、进行支付时,客户端向认证服务器发出请求,要求进行支付认证; 步骤4、认证服务器验证用户合法性后产生“挑战”随机数,并加入支付信息,采用可逆加密算法生成请求支付令牌,发送给客户端; 步骤5、客户端接收请求支付令牌后进行解密,客户端显示支付信息,用户确认支付信息并输入支付密码; 步骤6、客户端提取支付令牌中的种子密钥,提取机器数字指纹、并载入客户端数字证书、用户输入的支付密码形成“组合密钥算子”,在此基础上利用特定的加密算法计算出应答数,生成、提交挑战应答令牌; 步骤7、认证服务器将服务端“挑战”随机数、客户端的机器数字指纹进行MD5非对称加密,并根据用户服务器密钥进行RSA运算;对挑战应答令牌中包含“挑战”随机数、客户端的机器数字指纹的MD5非对称加密,并利用客户端密钥进行RSA运算;将二者的运算结果进行比较,若两者相同则可确认其支付应答令牌真实性,即认证成功,否则为认证失败; 步骤8、认证服务器通知客户支付或认证成功或失败。
2.根据权利要求1所述的一种基于软体客户端的安全支付认证方法,其特征在于所述步骤6中“组合密钥算子”形成方法具体是对种子密钥,机器数字指纹、客户端数字证书、支付密码进行RSA对称加密形成。
3.根据权利要求1或2所述的一种基于软体客户端的安全支付认证方法,其特征在于所述步骤6中特定的加密算法具体是RSA、MD5、AzDGCrypt, DES加密算法的至少一种或至少两种的组合。
全文摘要
本发明提供一种基于软体客户端的安全支付认证方法,包括对客户端运行环境进行可信授权,即提取客户端环境的机器数字指纹,在此基础上产生原始密令、客户端数字证书,客户端向认证服务器提交原始密令,认证服务器认证提交者身份,产生对应的服务器密钥;进行支付时,客户端要求进行支付认证;认证服务器验证用户合法性后产生“挑战”随机数,并加入支付信息,采用可逆加密算法生成请求支付令牌,发送给客户端;客户端接收请求支付令牌后进行解密,客户端显示支付信息,用户确认支付信息并输入支付密码等步骤;本发明对挑战-应答支付认证方式进行改进,解决了usbkey硬件介质传递、成本给推广带来的限制问题;还解决了安全系统性漏洞的问题。
文档编号H04L29/06GK103020825SQ201210516760
公开日2013年4月3日 申请日期2012年12月5日 优先权日2012年12月5日
发明者潘春来, 潘阿龙, 雷勇, 章锡联, 何树云 申请人:福建省派活园科技信息有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1