CN106529948A - 一种支付认证方法及系统 - Google Patents

一种支付认证方法及系统 Download PDF

Info

Publication number
CN106529948A
CN106529948A CN201610977393.0A CN201610977393A CN106529948A CN 106529948 A CN106529948 A CN 106529948A CN 201610977393 A CN201610977393 A CN 201610977393A CN 106529948 A CN106529948 A CN 106529948A
Authority
CN
China
Prior art keywords
request
module
authentication
user
authenticating device
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.)
Pending
Application number
CN201610977393.0A
Other languages
English (en)
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.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies 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 Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201610977393.0A priority Critical patent/CN106529948A/zh
Publication of CN106529948A publication Critical patent/CN106529948A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • 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/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • G06Q20/40145Biometric identity checks

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明公开了一种支付认证方法及系统。方法包括:客户端生成支付认证第一请求并发送至应用服务器,应用服务器根据支付认证第一请求的解析结果、订单信息和应用标识生成支付认证第二请求并发送至认证服务器,认证服务器根据支付认证第二请求的解析结果生成支付认证第二请求响应并将发送至应用服务器,应用服务器根据支付认证第二请求响应的解析结果生成支付认证第一请求响应并发送至客户端,客户端根据支付认证第一请求响应的解析结果生成待签名请求并发送至认证设备,认证设备生成验证签名请求并发送至认证服务器,认证服务器将验证签名请求中的签名值的验证结果发送至应用服务器,应用服务器根据验证结果进行允许支付操作或者拒绝支付操作。

Description

一种支付认证方法及系统
技术领域
本发明涉及安全支付认证领域,尤其涉及一种支付认证方法及系统。
背景技术
随着移动互联网技术的发展,移动支付业务越来越普及,但是支付认证的凭据又极易泄漏,移动支付领域安全问题日益突出。当前,网银、第三方支付都采用数字密码、指纹识别和短信验证码等方式,这些方式均未实现支付端与鉴权(即验证用户是否拥有访问系统的权利)的分离,导致各种安全风险时有发生。比如用户通过手机端进行鉴权操作,一旦手机感染病毒,病毒就会盗取支付验证码,盗刷用户资金,给用户造成严重损失;又如,一旦手机丢失,手机密码被破解之后,客户资金同样会遭受巨大损失,这将极大地阻碍了移动支付业务的发展,也给用户移动支付的便捷性造成了阻碍,严重影响了用户体验。
目前,移动支付安全最薄弱环节在于支付鉴权与支付端的不分离,导致了各种风险的发生。
发明内容
本发明是为了克服现有技术的不足,提供一种支付认证方法及系统。
本发明提供了一种支付认证方法,包括:
步骤A1:当客户端接收到应用服务器返回的当前应用中的订单信息时,所述客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求,并将其发送至所述应用服务器;
步骤A2:所述应用服务器接收并解析所述支付认证第一请求,根据所述支付认证第一请求的解析结果、当前应用中的订单信息和当前应用对应的应用标识生成支付认证第二请求,并将其发送至认证服务器;
步骤A3:所述认证服务器接收并解析所述支付认证第二请求,根据所述支付认证第二请求的解析结果生成挑战值参数、应用参数和待签名数据,根据所述挑战值参数、所述应用参数和所述待签名数据生成支付认证第二请求响应,并将其发送至所述应用服务器;
步骤A4:所述应用服务器接收并解析所述支付认证第二请求响应,根据所述支付认证第二请求响应的解析结果和密钥标识生成支付认证第一请求响应,并将其发送至所述客户端;
步骤A5:所述客户端接收并解析所述支付认证第一请求响应,根据所述支付认证第一请求响应的解析结果中的密钥标识、挑战值参数、应用参数、待签名数据生成待签名请求,并将其发送至所述认证设备;
步骤A6:所述认证设备接收所述待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对所述待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,所述认证设备根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,根据所述签名值和所述计数值生成验证签名请求,更新所述计数值,通过所述客户端和所述应用服务器将所述验证签名请求发送至所述认证服务器;
步骤A7:所述认证服务器接收所述验证签名请求,根据公钥对所述验证签名请求中的签名值进行验证,并将验证结果发送给所述应用服务器;
步骤A8:所述应用服务器根据所述验证结果进行允许支付操作或者拒绝支付操作。
所述步骤A1中所述客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求之前还包括:
所述客户端发送获取设备标识和用户认证方式标识的请求至所述认证设备,所述认证设备发送认证设备标识和用户认证方式标识至所述客户端。
所述步骤A1中所述客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求之前还包括:
所述客户端发送获取认证设备标识的请求至所述认证设备,所述认证设备发送认证设备标识至所述客户端;
所述客户端发送获取用户认证方式标识的请求至所述认证设备,所述认证设备发送用户认证方式标识至所述客户端。
所述步骤A1中所述客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求之前还包括:所述客户端判断是否保存有认证设备标识,
是则所述客户端发送获取用户认证方式标识的请求至所述认证设备,所述认证设备发送用户认证方式标识至所述客户端;
否则所述客户端分别发送获取认证设备标识的请求和获取用户认证方式标识的请求至所述认证设备,所述认证设备分别发送对应的认证设备标识和用户认证方式标识至所述客户端。
所述认证设备发送用户认证方式标识至所述客户端之前还包括:所述认证设备显示所支持的认证方式,提示用户进行选择并接收用户的选择信息,当接收到用户的选择信息时读取对应的用户认证方式标识。
所述认证方式包括:指纹认证和/或掌纹认证和/或虹膜认证和/或脸谱认证和/或声纹认证和/或动脉认证。
所述步骤A3中所述认证服务器生成挑战值参数、应用参数和待签名数据之前还包括:所述认证服务器根据解析所述支付认证第二请求所得的认证设备标识判断所述认证设备是否可用,是则继续,否则,报错结束。
所述步骤A3中生成所述待签名数据具体为:根据解析所述支付认证第二请求得到的订单信息和根据所述订单信息生成的时间签名值生成所述待签名数据。
在所述步骤A4中的生成支付认证第一请求响应之前还包括:根据所述订单信息中保存的用户账号或所述用户认证方式标识检索对应的密钥标识,如检索到,则继续,如未检索到,则报错结束。
在所述步骤A4中的生成支付认证第一请求响应之前还包括:所述应用服务器根据当前应用中的订单信息中保存的用户账号和用户认证方式标识检索密钥标识,如检索到,则继续,如未检索到,则报错结束。
所述步骤A6替换为:
步骤A6-1:所述认证设备接收所述待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对所述待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,所述认证设备将所述签名值和所述计数值发送给所述客户端,更新所述计数值,所述客户端根据所述签名值和所述计数值生成验证签名请求,通过所述应用服务器将所述验证签名请求发送至所述认证服务器。
所述步骤A6替换为:
步骤A6-2:所述认证设备接收所述待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对所述待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,所述认证设备根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,根据所述签名值和所述计数值生成验证签名请求,通过所述客户端和所述应用服务器将所述验证签名请求发送至所述认证服务器;
所述方法还包括步骤A9:当所述应用服务接收到所述签名值的验证结果为验证成功信息时,所述应用服务器通过所述客户端发送所述验证成功信息至所述认证设备,当所述认证设备接收到验证成功信息时,更新所述计数值。
所述步骤A6替换为:
步骤A6-3:所述认证设备接收所述待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对所述待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,所述认证设备将所述签名值和所述计数值发送给所述客户端,所述客户端根据所述签名值和所述计数值生成验证签名请求,通过所述应用服务器将所述验证签名请求发送至所述认证服务器;
所述方法还包括步骤A9:当所述应用服务器接收到所述签名值的验证结果为验证成功信息时,所述应用服务器通过所述客户端发送所述验证成功信息至所述认证设备,当所述认证设备接收到验证成功信息时,更新所述计数值。
所述步骤A6中提示并接收用户确认身份信息具体包括:当所述认证设备接收所述待签名请求时,所述认证设备提示用户输入认证密码,判断是否接收到正确的认证密码,是则继续,否则报错。
所述步骤A7中的根据公钥对所述验证签名请求中的签名值进行验证,具体为:
步骤C1:所述认证服务器保存所述计数值,根据解析所述支付认证第二请求所得订单信息中的用户账号或用户认证方式标识检索密钥标识;
步骤C2:所述认证服务器根据所述密钥标识检索公钥,并使用所述公钥解密所述签名值,将解密结果与根据所述挑战值参数、所述应用参数和所述计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败。
所述步骤A7中的根据公钥对所述验证签名请求中的签名值进行验证,具体为:
步骤G1:所述认证服务器保存所述计数值,根据解析所述支付认证第二请求所得的订单信息中的用户账号和所述用户认证方式标识检索密钥标识;
步骤G2:所述认证服务器根据所述密钥标识检索公钥,并使用所述公钥解密所述签名值,将解密结果与根据所述挑战值参数、所述应用参数和所述计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败。
本发明提供了一种支付认证系统,包括:客户端、应用服务器、认证服务器和认证设备,
所述客户端包括:
第一生成模块,用于当接收到所述应用服务器返回的当前应用中的订单信息时,根据认证设备标识和用户认证方式标识生成支付认证第一请求;
第一接收模块,用于接收所述应用服务器发送的支付认证第一请求响应和所述认证设备发送的验证签名请求;
第一解析模块,用于解析所述第一接收模块接收的所述支付认证第一请求响应;
第二生成模块,用于根据所述第一解析模块解析所述支付认证第一请求响应得到的密钥标识、挑战值参数、应用参数、待签名数据生成待签名请求;
第一发送模块,用于将所述第一生成模块生成的所述支付认证第一请求和所述第一接收模块接收到的所述验证签名请求发送至所述应用服务器,还用于将所述第二生成模块生成的所述待签名请求发送至所述认证设备;
所述应用服务器包括:
第二接收模块,用于接收所述第一发送模块发送的所述支付认证第一请求和所述验证签名请求,还用于接收所述认证服务器发送的所述支付认证第二请求响应和签名值的验证结果;
第二解析模块,用于解析所述第二接收模块接收到的所述支付认证第一请求和所述支付认证第二请求响应;
第三生成模块,用于根据所述第二解析模块解析所述支付认证第一请求的解析结果、当前应用中的订单信息和当前应用对应的应用标识生成所述支付认证第二请求;
第四生成模块,用于根据所述第二解析模块解析所述支付认证第二请求响应的解析结果和密钥标识生成所述支付认证第一请求响应;
第二发送模块,用于将所述第三生成模块生成的所述支付认证第二请求和所述第二接收模块接收到的所述验证签名请求发送至所述认证服务器,还用于将所述第四生成模块生成的所述支付认证第一请求响应发送至所述客户端;
支付模块,用于根据所述第二接收模块接收到的所述验证结果进行允许支付操作或者拒绝支付操作;
所述认证服务器包括:
第三接收模块,用于接收所述第二发送模块发送的所述支付认证第二请求和所述验证签名请求;
第三解析模块,用于解析所述第三接收模块接收到的所述支付认证第二请求和所述验证签名请求;
第五生成模块,用于根据所述第三解析模块解析所述支付认证第二请求的解析结果生成挑战值参数、应用参数和待签名数据;
第六生成模块,用于根据所述挑战值参数、所述应用参数和所述待签名数据生成支付认证第二请求响应;
验证模块,用于根据公钥对所述第三解析模块解析所述验证签名请求得到的签名值进行验证;
第三发送模块,用于发送所述第六生成模块生成的所述支付认证第二请求响应和所述验证模块的验证结果至所述应用服务器;
所述认证设备包括:
第四接收模块,用于接收所述第一发送模块发送的所述待签名请求;
提示模块,用于当所述第四接收模块接收到所述待签名请求时提示并接收用户确认身份信息;
第四解析模块,用于当所述提示模块接收到用户确认身份信息时对所述待签名请求进行解析得到待签名数据;
提取模块,用于从所述第四解析模块解析所述待签名请求得到的所述待签名数据中提取交易关键信息;
显示模块,用于显示所述提取模块提取到的所述交易关键信息,提示用户确认并接收用户确认信息;
第七生成模块,用于当所述显示模块接收到用户确认信息时,根据私钥对所述第四解析模块解析所述待签名请求得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到所述签名值;
第八生成模块,用于根据所述第七生成模块生成的所述签名值和所述计数值生成所述验证签名请求;
第四发送模块,用于发送所述第八生成模块生成的验证签名请求至所述客户端;
更新模块,用于在所述第八生成模块生成所述验证签名请求之后更新所述计数值。
所述第一发送模块,还用于发送获取认证设备标识和用户认证方式标识的请求至所述认证设备;
所述第一接收模块,还用于接收所述第四发送模块发送的所述认证设备标识和所述用户认证方式标识;
所述第四接收模块,还用于接收所述第一发送模块发送的所述获取设备标识和用户认证方式标识的请求;
所述第四发送模块,还用于发送所述认证设备标识和所述用户认证方式标识至所述客户端。
所述第一发送模块,还用于分别发送所述获取认证设备标识的请求和所述获取用户认证方式标识的请求至所述认证设备;
所述第一接收模块,还用于分别接收所述第四发送模块所发送的所述认证设备标识和所述用户认证方式标识;
所述第四发送模块,还用于分别发送所述认证设备标识和所述用户认证方式标识至所述客户端;
所述第四接收模块,还用于分别接收所述第一发送模块发送的所述获取认证设备标识的请求和所述获取用户认证方式标识的请求。
所述客户端还包括第一判断模块,用于判断是否保存有所述认证设备标识;
所述第一发送模块,还用于当所述第一判断模块判断为是时,发送所述获取用户认证方式标识的请求至所述认证设备,还用于当所述第一判断模块判断为否时,分别发送所述获取认证设备标识的请求和所述获取用户认证方式标识的请求至所述认证设备;
所述第一接收模块,还用于接收所述第四发送模块发送的所述用户认证方式标识,或还用于分别接收所述第四发送模块发送的所述认证设备标识和所述用户认证方式标识;
所述第四接收模块,还用于接收所述第一发送模块发送的获取用户认证方式标识的请求,或还用于分别接收所述第一发送模块发送的获取认证设备标识的请求和所述获取用户认证方式标识的请求;
所述第四发送模块,还用于发送所述用户认证方式标识至所述客户端,或还用于分别发送所述认证设备标识和所述用户认证方式标识至所述客户端。
所述显示模块,还用于显示所支持的认证方式,提示用户进行选择并接收用户的选择信息;
所述认证设备还包括:
读取模块,用于当所述显示模块接收到用户的选择信息时读取对应的用户认证方式标识。
所述认证设备还包括:
指纹模块,用于对用户提供的指纹进行认证;
和\或,掌纹模块,用于对用户提供的掌纹进行认证;
和\或,虹膜模块,用于对用户提供的虹膜进行认证;
和\或,脸谱模块,用于对用户提供的脸谱进行认证;
和\或,声纹模块,用于对用户提供的声纹进行认证;
和\或,动脉模块,用于对用户提供的动脉进行认证。
所述认证服务器还包括:
第一报错模块,用于报错;
第二判断模块,用于根据所述第三解析模块解析所述支付认证第二请求所得的认证设备标识判断所述认证设备是否可用,是则触发所述第五生成模块,否则触发所述第一报错模块。
所述第三生成模块,具体用于根据所述第三解析模块解析所述支付认证第二请求得到的订单信息和根据订单信息生成的时间签名值生成所述待签名数据。
所述应用服务器还包括:
第二报错模块,用于报错;
第一检索模块,用于当所述第二接收模块接收到所述支付认证第二请求响应后,根据所述订单信息中的用户账号或用户认证方式标识检索对应的密钥标识,如检索到,则触发所述第四生成模块,如未检索到,则触发所述第二报错模块。
所述应用服务器还包括:
第二报错模块,用于报错;
第二检索模块,用于根据所述订单信息中的用户账号和用户认证方式标识检索所述密钥标识,如检索到,则触发所述第四生成模块,如未检索到,则触发所述第二报错模块。
所述第四发送模块,还用于将所述签名值和所述计数值发送给所述客户端;
所述第一接收模块,还用于接收所述第四发送模块发送的所述签名值和所述计数值;
所述第八生成模块位于所述客户端;
所述更新模块,还用于在所述第四发送模块发送所述签名值和所述计数值至所述客户端后,更新所述计数值。
所述第二发送模块,还用于当所述第二接收模块接收到的签名值的验证结果为验证成功信息时将其发送至所述客户端;
所述第一接收模块,还用于接收所述第二发送模块发送的所述验证成功信息;
所述第一发送模块,还用于发送所述第一接收模块接收的所述验证成功信息至所述认证设备;
所述第四接收模块,还用于接收所述第一发送模块发送的所述验证成功信息;
所述更新模块,还用于当所述第四接收模块接收到所述验证成功信息时,更新所述计数值。
所述第四发送模块,还用于将所述签名值和所述计数值发送给所述客户端;
所述第四接收模块,还用于接收所述第一发送模块发送的验证成功信息;
所述第二发送模块,还用于当所述第二接收模块接收到的签名值的验证结果为验证成功信息时将其发送至所述客户端;
所述第一接收模块,还用于接收所述第二发送模块发送的所述验证成功信息,还用于接收所述第四发送模块发送的所述签名值和所述计数值;
所述第一发送模块,还用于发送所述第一接收模块接收的所述验证成功信息至所述认证设备;
所述第八生成模块位于所述客户端;
所述更新模块,还用于当所述第四接收模块接收到所述验证成功信息时,更新所述计数值。
所述认证设备还包括:
第三报错模块,用于报错;
第三判断模块,用于当所述第四接收模块接收所述待签名请求时,提示用户输入认证密码,判断是否接收到正确的认证密码,是则触发所述第四解析模块,否则触发所述第三报错模块。
所述验证模块具体包括:
第一保存单元,用于保存计数值;
第一检索单元,用于根据所述第三解析模块解析所述支付认证第二请求所得订单信息中的用户账号或用户认证方式标识检索密钥标识,根据所述密钥标识检索公钥;
第一解密单元,用于使用所述公钥解密所述第三解析模块解析所述验证签名请求得到的签名值;
第一比对单元,用于将所述第一解密单元的解密结果与根据所述挑战值参数、所述应用参数和所述计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败。
所述验证模块具体包括:
第二保存单元,用于保存计数值;
第二检索单元,用于根据所述第三解析模块解析所述支付认证第二请求所得订单信息中的用户账号和用户认证方式标识检索密钥标识,根据所述密钥标识检索公钥;
第二解密单元,用于使用所述公钥解密所述第三解析模块解析所述验证签名请求得到的签名值;
第二比对单元,用于将所述第二解密单元的解密结果与根据所述挑战值参数、所述应用参数和所述计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败。
本发明与现有技术相比,具有以下优点:本发明提出了一种支付认证方法及系统。支付认证系统实现了支付端与支付鉴权的分离,其是由本地认证设备保存认证凭据,在本地认证设备端完成支付认证,避免了认证凭据被泄露的风险,提高了支付认证的安全性;此外,本支付认证系统支持多种用户认证方式,使用户认证时具有可选择性,使支付认证过程更加方便,提升了用户体验。
附图说明
图1为本发明实施例一提供的一种支付认证流程图;
图2和3为本发明实施例二提供的一种支付认证流程图;
图4和5为本发明实施例三提供的一种支付认证流程图;
图6为本发明实施例四提供的一种支付认证系统方框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
如图1所示,本实施例一提供了一种支付认证方法,包括如下步骤:
步骤S1:当客户端接收到应用服务器返回的当前应用中的订单信息时,客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求;
本实施例步骤S1中客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求之前还包括步骤B、R、T中的任意一个,
步骤B:客户端发送获取设备标识和用户认证方式标识的请求至认证设备,认证设备发送认证设备标识和用户认证方式标识至客户端;
步骤R:客户端发送获取认证设备标识的请求至认证设备,认证设备发送认证设备标识至客户端;
客户端发送获取用户认证方式标识的请求至认证设备,认证设备发送用户认证方式标识至客户端;
步骤T:客户端判断是否保存有认证设备标识,是则客户端发送获取用户认证方式标识的请求至认证设备,认证设备发送用户认证方式标识至客户端;否则客户端分别发送获取认证设备标识的请求和获取用户认证方式标识的请求至认证设备,认证设备分别发送对应的认证设备标识和用户认证方式标识至客户端;
在本实施例中,认证设备发送用户认证方式标识至客户端之前还包括步骤:认证设备显示所支持的认证方式,提示用户进行选择并且接收用户的选择信息,当接收到用户的选择信息时读取对应的用户认证方式标识;
在本实施例中,认证设备支持的用户认证方式包括:指纹认证和/或掌纹认证和/或虹膜认证和/或脸谱认证和/或声纹认证和/或动脉认证;
步骤S2:客户端发送支付认证第一请求至应用服务器;
步骤S3:应用服务器接收并解析支付认证第一请求,根据支付认证第一请求的解析结果、当前应用中的订单信息和当前应用对应的应用标识生成支付认证第二请求;
步骤S4:应用服务器发送支付认证第二请求至认证服务器;
步骤S5:认证服务器接收并解析支付认证第二请求,根据支付认证第二请求的解析结果生成挑战值参数、应用参数和待签名数据,根据挑战值参数、应用参数和待签名数据生成支付认证第二请求响应;
在本实施例步骤S5中认证服务器生成挑战值参数、应用参数和待签名数据之前还包括:认证服务器根据认证设备标识判断认证设备是否可用,是则继续,否则,报错结束;
在本实施例步骤S5中生成待签名数据,具体为:根据解析支付认证第二请求得到的订单信息和根据订单信息生成的时间签名值生成待签名数据;
步骤S6:认证服务器发送支付认证第二请求响应至应用服务器;
步骤S7:应用服务器接收并解析支付认证第二请求响应,根据支付认证第二请求响应的解析结果和密钥标识生成支付认证第一请求响应;
在本实施例中,当认证设备只支持一种用户认证方式时,步骤S7中生成支付认证第一请求响应之前还包括:
根据订单信息中用户账号或用户认证方式标识检索对应的密钥标识,如检索到,则继续,如未检索到,则报错结束;
在本实施例中,当认证设备支持多种用户认证方式时,步骤S7中生成支付认证第一请求响应之前还包括:应用服务器根据订单信息中用户账号和用户认证方式标识检索密钥标识,如检索到,则继续,如未检索到,则报错结束;
步骤S8:应用服务器发送支付认证第一请求响应至客户端;
步骤S9:客户端接收并解析支付认证第一请求响应,根据支付认证第一请求响应的解析结果中的密钥标识、挑战值参数、应用参数和待签名数据生成待签名请求;
步骤S10:客户端发送待签名请求至认证设备;
步骤S11:认证设备接收待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,认证设备根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,更新计数值,根据签名值和计数值生成验证签名请求;
步骤S12:认证设备通过客户端和应用服务器发送验证签名请求至认证服务器;
步骤S13:认证服务器接收验证签名请求,根据公钥对验证签名请求中的签名值进行验证;
本实施例中,
当认证设备只支持一种用户认证方式时,步骤S13中的根据公钥对验证签名请求中的签名值进行验证,具体为:
步骤C1:认证服务器保存计数值,根据解析支付认证第二请求所得的订单信息中的用户账号或用户认证方式标识检索密钥标识;
步骤C2:认证服务器根据密钥标识检索公钥,并使用公钥解密签名值,将解密结果与根据挑战值参数、应用参数和计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败;
当认证设备支持多种用户认证方式时,步骤S13中的根据公钥对验证签名请求中的签名值进行验证,具体为:
步骤G1:认证服务器保存计数值,根据解析支付认证第二请求所得的订单信息中的用户账号和用户认证方式标识检索密钥标识;
步骤G2:认证服务器根据密钥标识检索公钥,并使用公钥解密签名值,将解密结果与根据挑战值参数、应用参数和计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败;
步骤S14:认证服务器发送验证结果至应用服务器;
步骤S15:应用服务器根据验证结果进行允许支付操作或者拒绝支付操作。
(一)本实施例步骤S11和S12可以替换为,
步骤S11-1:认证设备接收待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,认证设备将签名值和计数值发送给客户端,更新计数值;
步骤S12-1:客户端根据签名值和计数值生成验证签名请求,通过应用服务器将验证签名请求发送至认证服务器;
(二)本实施例步骤S11和S12可以替换为,
步骤S11-2:认证设备接收待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,认证设备根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,根据签名值和计数值生成验证签名请求;
步骤S12-2:认证设备通过客户端和应用服务器将验证签名请求发送至认证服务器;
上述方案(二)中还包括步骤S16:应用服务器通过客户端发送验证成功信息至认证设备,当认证设备在接收到验证成功信息时,更新计数值;
(三)本实施例步骤S11和S12可以替换为,
步骤S11-3:认证设备接收待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,认证设备将签名值和计数值发送给客户端;
步骤S12-3:客户端根据签名值和计数值生成验证签名请求,通过应用服务器将验证签名请求发送至认证服务器;
上述方案(三)中还包括步骤S16:应用服务器通过客户端发送验证成功信息至认证设备,当认证设备在接收到验证成功信息时,更新计数值;
在步骤S11、S11-1、S11-2、S11-3中,提示用户确认身份信息具体包括:当认证设备接收所述待签名请求时,认证设备提示用户输入认证密码,判断是否接收到正确的认证密码,是则继续,否则报错。
实施例二
如图2和3所示,本实施例二提供了一种支付认证方法,包括以下步骤:
步骤D1:当客户端接收应用服务器返回的当前应用中的订单信息及支付操作信息时,提示用户选择认证设备;
步骤D2:当客户端接收到用户所选择的认证设备信息时,提示用户启动相应的认证设备;
步骤D3:客户端发送获取设备标识和用户认证方式标识的请求至认证设备;
例如,获取设备标识和用户认证方式标识的请求为:0x00c7000009;
步骤D4:认证设备读取出厂时预植的认证设备标识,显示所支持的用户认证方式,提示用户进行选择并接收用户的选择信息,当接收到用户选择的用户认证方式信息时,读取对应的用户认证方式标识;
具体地,认证设备标识长度为8字节;
例如,认证设备标识为:0x0101160800002478;
具体地,认证设备显示供用户选择的用户认证方式为:指纹认证,其对应的用户认证方式标识为0x01;掌纹认证,其对应的用户认证方式标识为0x02;虹膜认证,其对应的用户认证方式标识为0x03;脸谱认证,其对应的用户认证方式标识为0x04;声纹认证,其对应的用户认证方式标识为0x05;动脉认证,其对应的用户认证方式标识为0x06等;
优选地,当认证设备未接收到用户选择的用户认证方式信息时,认证设备报错结束,或认证设备选择默认的一种用户认证方式,读取相应的用户认证方式标识;
进一步地,认证设备可以设置等待接收用户选择的用户认证方式信息的时间,例如60秒,如果在此时间段内,认证设备接收到用户选择的用户认证方式信息,则执行步骤D5,否则,认证设备报错结束;
步骤D5:认证设备发送认证设备标识和用户认证方式标识至客户端;
步骤D6:客户端接收并保存认证设备标识和用户认证方式标识;
步骤D7:客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求;
例如,支付认证第一请求为:
{
"identity":"0x0101160800002478+0x02",
"url":"https://my.alipay.com/portal/i.htm?/1234%x23abcd",
"statusReports":{status:"valid",effectiveDate:"2016-08-30"},
"timeOfLastStatusChange":"2016-08-30"
};
其中,认证设备标识为:0x0101160800002478;
用户认证方式标识为:0x02;
步骤D8:客户端发送支付认证第一请求至应用服务器;
步骤D9:应用服务器接收并解析支付认证第一请求,得到认证设备标识和用户认证方式标识,应用服务器保存认证设备标识和用户认证方式标识,结合订单信息、与当前应用对应的应用标识,生成支付认证第二请求;
例如,支付认证第二请求为:
{
"aaid":"my.alipay.com",
"orderID":"20160830001391",
"orderContent":
{"4008197197","64680362382","82171305","YS010118","2","89.0"},
"url":"https://my.alipay.com/portal/i.htm?/1234%x23abcd",
"statusReports":{status:"valid",effectiveDate:"2016-08-30"},
"timeOfLastStatusChange":"2016-08-30"
};
其中,应用标识为:"my.alipay.com";
订单信息为:
{"4008197197","64680362382","82171305","YS010118","2","89.0"};
具体地,应用标识用于识别不同种类的应用;
例如,应用标识为:"my.alipay.com";
具体地,在步骤D1之前进行绑定流程,在绑定流程中应用服务器保存与当前应用对应的应用标识;
具体地,在步骤D1之前进行订购流程,在订购流程中应用服务器生成并且保存订单信息;
具体地,订单信息包括订单号、客户信息、商户信息和商品信息等;
步骤D10:应用服务器发送支付认证第二请求至认证服务器;
步骤D11:认证服务器接收并解析支付认证第二请求,得到应用标识、订单信息、认证设备标识和用户认证方式标识;
步骤D12:认证服务器保存应用标识、订单信息、认证设备标识和用户认证方式标识;
步骤D13:认证服务器根据认证设备标识判断认证设备是否可用,是则执行步骤D14,否则,报错结束;
在步骤D1之前进行绑定流程,在绑定流程中认证服务器保存认证设备的认证设备标识,称为第一认证设备标识;
具体地,认证服务器查询自身已经保存的第一认证设备标识当中是否有与所述认证设备标识相一致的,若有,则认证设备可用,执行步骤D14,否则,报错结束;
步骤D14:认证服务器根据认证设备标识产生挑战值参数并保存,根据应用标识产生应用参数并保存,根据订单信息产生时间签名值并保存,根据订单信息和时间签名值生成待签名数据并保存;
具体地,认证服务器运用哈希算法对认证设备标识进行哈希运算得到挑战值参数;
更具体地,挑战值参数长度为32字节;
优选地,哈希算法为SM3算法,除此之外还可以为SHA-256算法等;
例如,挑战值参数为:
"1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B";
具体地,认证服务器运用哈希算法对应用标识进行哈希运算得到应用参数;
更具体地,应用参数长度为32字节;
优选地,哈希算法为SM3算法,除此之外还可以为SHA-256算法等;
例如,应用参数为:
"1EFF5CC0744F9F4CEE400F1C01B741396DD4190596C82AC4074C93C5E11893D8";
具体地,认证服务器运用哈希算法对订单信息进行哈希运算得到时间签名值;
具体地,认证服务器运用哈希算法对订单信息和时间签名值进行哈希运算得到待签名数据;
具体地,待签名数据包含订单信息和时间签名值;
更具体地,时间签名值表示订单信息的时间属性;
优选地,计算时间签名值所运用的哈希算法为SM3算法,公钥算法为SM2算法;
步骤D15:认证服务器根据挑战值参数、应用参数和待签名数据生成支付认证第二请求响应;
例如,支付认证第二请求响应为:
其中,挑战值参数为:
"1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B";
应用参数为:
"1EFF5CC0744F9F4CEE400F1C01B741396DD4190596C82AC4074C93C5E11893D8";
待签名数据为:
"RfY_RDhsf4z5PCOhnqbAtTTOezVKCjl2mPorYzbpxRrZ-_3wWroMXsF_pLYjNVm_l7bplAx4bkEwK6ibil9EHGfdfKOQ1q0tyEkNJFOgqdjVmLioZZmKxaSi10tkY_c4";
步骤D16:认证服务器发送支付认证第二请求响应至应用服务器;
步骤D17:应用服务器收到支付认证第二请求响应后,根据订单信息中的用户账号和应用服务器内部已经保存的用户认证方式标识检索对应的密钥标识,若检索到对应的密钥标识,则执行步骤D18,如未检索到,则报错结束;
具体地,在步骤D1之前进行绑定流程,在绑定流程中,认证设备生成与用户账号和用户认证方式标识一一对应的密钥标识及密钥对,应用服务器将密钥标识进行备份;用户认证方式标识在步骤D9中保存下来的;用户账号在订单信息中;
当认证设备只支持一种用户认证方式时,则步骤D17替换为:应用服务器收到支付认证第二请求响应后,根据用户账号或用户认证方式标识检索对应的密钥标识,若检索到对应的密钥标识,则执行步骤D18,如未检索到,则报错结束;
优选地,认证设备生成密钥标识及密钥对的公钥算法为SM2算法,除此之外还有RSA算法等;
例如,当选用的公钥算法为SM2算法时,SM2算法返回JSON格式的数据为:
{
"typ":"JWT",
"alg":"301SM2",
"Q#S256":
"E3A31B81B7C78B10D3D8FCEF254575D6FF8F9E336FB33B27226D9E790D681985E604C6F486AEAA9AACF7E128019825ECA9E39C668E72D82983B5611AAF07C483DC89984B9B464A57BA369E0DFEB905CA8EFB90145B2274AB9C7241371C22FF9D62F54E9A8F5EC64A4B3CD4128A50A75666224452C703FC23F4F2089B663602D9"
};
步骤D18:应用服务器解析支付认证第二请求响应,得到挑战值参数、应用参数和待签名数据,应用服务器根据密钥标识、挑战值参数、应用参数和待签名数据,生成支付认证第一请求响应;
例如,支付认证第一请求响应为:
其中,密钥标识为:"F6E7BE3CF6100DDC65C10C3CEB4B6C62";
挑战值参数为:
"1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B";
应用参数为:
"1EFF5CC0744F9F4CEE400F1C01B741396DD4190596C82AC4074C93C5E11893D8";
待签名数据为:
"RfY_RDhsf4z5PCOhnqbAtTTOezVKCjl2mPorYzbpxRrZ-_3wWroMXsF_pLYjNVm_l7bplAx4bkEwK6ibil9EHGfdfKOQ1q0tyEkNJFOgqdjVmLioZZmKxaSi10tkY_c4";
步骤D19:应用服务器发送支付认证第一请求响应至客户端;
步骤D20:客户端接收并解析支付认证第一请求响应,得到密钥标识、挑战值参数、应用参数和待签名数据,客户端保存密钥标识、挑战值参数、应用参数和待签名数据,根据密钥标识、挑战值参数、应用参数和待签名数据,生成待签名请求;
步骤D21:客户端发送待签名请求至认证设备;
例如,待签名请求为:0x00020000xx‘支付验证参数’xx;
其中,支付验证参数包括挑战值参数、应用参数、密钥标识和待签名数据;
步骤D22:认证设备收到待签名请求后,认证设备提示用户在认证设备上进行身份认证,如果用户身份合法,则执行步骤D23,如果用户身份不合法,报错结束;
具体地,步骤D22包括:认证设备提示用户输入认证密码,当接收到用户输入的认证密码信息时,判断认证密码信息是否正确,是则用户身份合法;否则用户身份不合法;例如,输入认证密码可以为PIN码信息;
进一步地,认证设备内设置错误次数阀值,步骤D22判断为否时还包括:认证设备更新操作次数,并判断操作次数是否到达错误次数阀值,是则报错,否则提示用户重新输入;
步骤D23:认证设备解析待签名请求,得到密钥标识、挑战值参数、应用参数和待签名数据;
步骤D24:认证设备从待签名数据中提取并显示交易关键信息,提示用户进行确认,当接收到确认信息时,执行步骤D25,当未接收到确认信息时,报错结束;
具体地,交易关键信息包括交易金额、商户名称和交易时间;
进一步地,认证设备在一段时间内等待接收用户的确认信息,例如60秒,如果在此时间段内认证设备接收到用户的确认信息,则执行步骤D25,否则,报错结束;
步骤D25:认证设备根据密钥标识检索认证设备内部保存的对应私钥;
具体地,在步骤D1之前进行绑定流程,在绑定流程中,认证设备生成与用户账号和用户认证方式标识一一对应的密钥标识及密钥对;
优选地,认证设备生成密钥标识及密钥对的公钥算法为SM2算法,除此之外还可以为RSA算法等;
步骤D26:认证设备使用私钥对挑战值参数、应用参数、计数值计算签名得到签名值,根据签名值和计数值生成验证签名请求,更新计数值;
步骤D26还可以为步骤D26-1:认证设备使用私钥对挑战值参数、应用参数、计数值计算签名得到签名值,将签名值和计数值发送至客户端,更新计数值,然后执行步骤D27-1;
步骤D26还可以为步骤D26-2:认证设备使用私钥对挑战值参数、应用参数、计数值计算签名得到签名值,根据签名值和计数值生成验证签名请求,然后执行步骤D27;
步骤D26还可以为步骤D26-3:认证设备使用私钥对挑战值参数、应用参数、计数值计算签名得到签名值,将签名值和计数值发送至客户端,然后执行步骤D27-1;
具体地,认证设备在第一次生成应用密钥对时,初始化计数器的计数值为0;认证设备每执行一次计算签名操作,计数器的计数值递增一次;
例如,验证签名请求为:0x00020200xx‘签名验证参数’xx;
其中,签名验证参数包括挑战值参数、应用参数和计数值;
步骤D27:认证设备通过客户端和应用服务器将验证签名请求发送至认证服务器;
当步骤D26为步骤D26-1、D26-3时,步骤D27可以替代为步骤D27-1:客户端根据签名值和计数值生成验证签名请求,并将其通过应用服务器发送至认证服务器;
例如,验证签名请求为:0x00020200xx‘签名验证参数’xx;
其中,签名验证参数包括挑战值参数、应用参数和计数值;
步骤D28:认证服务器接收到接收并解析验证签名请求,得到计数值和签名值,保存计数值,根据用户账号和之前解析得到用户认证方式标识检索对应的密钥标识;
具体地,在步骤D1之前进行绑定流程,在绑定流程中,认证设备生成与用户账号和用户认证方式标识一一对应的密钥标识及密钥对,并且认证服务器将密钥标识及公钥进行备份;订单信息在步骤D12中保存下来;用户账号在订单信息中;
当认证设备只支持一种用户认证方式时,则步骤D28替换为:
认证服务器接收并解析验证签名请求,得到计数值和签名值,保存计数值,根据用户账号或之前解析得到用户认证方式标识检索对应的密钥标识;
步骤D29:认证服务器根据检索到的密钥标识检索对应的公钥,并使用检索到的公钥解密签名值,得到第一哈希值;
步骤D30:认证服务器根据哈希算法对保存的挑战值参数、应用参数和计数值进行哈希运算,得到第二哈希值;
优选地,哈希算法为SM3算法,除此之外还可以为MD5算法等;
步骤D31:认证服务器将解密得到的第一哈希值和计算得到的第二哈希值进行比对,判断是否一致,根据判断结果生成验证响应;
步骤D32:认证服务器向应用服务器发送验证响应;
步骤D33:应用服务器收到验证响应后,判断验证响应的类型,如果验证成功,执行步骤D34,如果验证不成功,执行步骤D35;
步骤D34:应用服务器发送验证成功响应至客户端,并允许进行支付操作;
当步骤D26替换为步骤D26-2、D26-3时,步骤D34替换为步骤D34-1:
步骤D34-1:应用服务器发送验证成功响应至客户端,并允许进行支付操作,客户端将验证成功信息发送至认证设备,认证设备更新计数值;
步骤D35:应用服务器发送验证失败响应至客户端,并拒绝进行支付操作。
验证签名成功后,还可以包括以下步骤:
步骤E1:客户端显示“支付成功”;
验证签名失败后,还可以包括以下步骤:
步骤F1:客户端显示“支付失败”。
实施例三
如图3和4所示,本实施例三提供了一种支付认证方法,包括以下步骤:
步骤M1:当客户端接收到应用服务器返回的当前应用中的订单信息及支付操作信息时提示用户选择认证设备;
步骤M2:当客户端接收到用户所选择的认证设备信息时,客户端提示用户启动相应的认证设备;
步骤M3:客户端判断内部是否已经保存有对应的认证设备标识,如果客户端保存有认证设备标识,则执行步骤M12,如果客户端未保存有认证设备标识,执行步骤M4;
具体地,步骤M3包括:客户端根据订单信息中的用户账号判断内部是否已经保存有对应的认证设备标识,是则执行步骤M12,否则执行步骤M4;
步骤M4:客户端发送获取认证设备标识的请求至认证设备;
例如,获取认证设备标识的请求为:0x00c5000008;
步骤M5:认证设备读取出厂时预植的认证设备标识;
具体地,设备标识长度为8字节;
例如,认证设备标识为:0x0101160800002478;
步骤M6:认证设备发送认证设备标识至客户端;
步骤M7:客户端保存认证设备标识;
步骤M8:客户端发送获取用户认证方式标识的请求至认证设备;
例如,获取用户认证方式标识的请求为:0x00c6000001;
步骤M9:认证设备显示所支持的认证方式,提示用户进行选择并接收用户的选择信息,当接收到用户的选择信息时读取对应的用户认证方式标识;
具体地,认证设备显示供用户选择的用户认证方式为:指纹认证,其对应的用户认证方式标识为0x01;掌纹认证,其对应的用户认证方式标识为0x02;虹膜认证,其对应的用户认证方式标识为0x03;脸谱认证,其对应的用户认证方式标识为0x04;声纹认证,其对应的用户认证方式标识为0x05;动脉认证,其对应的用户认证方式标识为0x06等;
优选地,当认证设备未接收到用户选择的用户认证方式信息时,认证设备报错结束,或认证设备选择默认的一种用户认证方式,读取相应的用户认证方式标识;
进一步地,认证设备可以设置等待接收用户选择的用户认证方式信息的时间,例如60秒,如果在此时间段内,认证设备接收到用户选择的用户认证方式信息,则执行步骤M10,否则,认证设备报错结束;
步骤M10:认证设备将用户认证方式标识发送至客户端;
步骤M11:客户端保存用户认证方式标识,执行步骤M16;
步骤M12:客户端发送获取用户认证方式标识的请求至认证设备;
例如,获取用户认证方式标识的请求为:0x00c6000001;
步骤M13:认证设备显示所支持的认证方式,提示用户进行选择并接收用户的选择信息,当接收到用户的选择信息时读取对应的用户认证方式标识;
具体地,认证设备显示供用户选择的用户认证方式为:指纹认证,其对应的用户认证方式标识为0x01;掌纹认证,其对应的用户认证方式标识为0x02;虹膜认证,其对应的用户认证方式标识为0x03;脸谱认证,其对应的用户认证方式标识为0x04;声纹认证,其对应的用户认证方式标识为0x05;动脉认证,其对应的用户认证方式标识为0x06等;
优选地,当认证设备未接收到用户选择的用户认证方式信息时,认证设备报错结束,或认证设备选择默认的一种用户认证方式,读取相应的用户认证方式标识;
进一步地,认证设备可以设置等待接收用户选择的用户认证方式信息的时间,例如60秒,如果在此时间段内,认证设备接收到用户选择的用户认证方式信息,则执行步骤M14,否则,认证设备报错结束;
步骤M14:认证设备发送用户认证方式标识至客户端;
步骤M15:客户端保存用户认证方式标识,执行步骤M16;
步骤M16:客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求;
例如,支付认证第一请求为:
{
"identity":"0x0101160800002478+0x02",
"url":"https://my.alipay.com/portal/i.htm?/1234%x23abcd",
"statusReports":{status:"valid",effectiveDate:"2016-08-30"},
"timeOfLastStatusChange":"2016-08-30"
};
其中,认证设备标识为:0x0101160800002478;
用户认证方式标识为:0x02;
步骤M17:客户端向应用服务器发送支付认证第一请求;
步骤M18:应用服务器接收并解析支付认证第一请求,得到认证设备标识和用户认证方式标识,应用服务器保存认证设备标识和用户认证方式标识,结合订单信息和与当前应用对应的应用标识,生成支付认证第二请求;
例如,支付认证第二请求为:
{
"aaid":"my.alipay.com",
"orderID":"20160830001391",
"orderContent":{"4008197197","64680362382","82171305","YS010118","2","89.0"},
"url":"https://my.alipay.com/portal/i.htm?/1234%x23abcd",
"statusReports":{status:"valid",effectiveDate:"2016-08-30"},
"timeOfLastStatusChange":"2016-08-30"
};
其中,应用标识为:"my.alipay.com";
订单信息为:
{"4008197197","64680362382","82171305","YS010118","2","89.0"};
具体地,应用标识用于识别不同种类的应用;
例如,应用标识为:"my.alipay.com";
具体地,在步骤M1之前进行绑定流程,在绑定流程中应用服务器保存的与当前应用对应的应用标识;
具体地,在步骤M1之前进行订购流程,在订购流程中应用服务器生成并且保存订单信息;
具体地,订单信息包括订单号、客户信息、商户信息和商品信息等。
步骤M19:应用服务器向认证服务器发送支付认证第二请求;
步骤M20:认证服务器接收并解析支付认证第二请求,得到应用标识、订单信息、认证设备标识和用户认证方式标识;
步骤M21:认证服务器保存应用标识、订单信息、认证设备标识和用户认证方式标识;
步骤M22:认证服务器根据认证设备标识判断认证设备是否可用,是则执行步骤M23,否则,报错结束;
具体地,认证设备申请绑定应用时,认证服务器已经保存认证设备的认证设备标识,称为第一认证设备标识;
具体地,认证服务器查询自身已经保存的第一认证设备标识当中是否有与所述认证设备标识相一致的,若有,则认证设备可用,执行步骤M23,否则,报错结束;
步骤M23:认证服务器根据认证设备标识产生挑战值参数并保存,根据应用标识产生应用参数并保存,根据订单信息产生时间签名值并保存,根据订单信息和时间签名值生成待签名数据并保存;
具体地,认证服务器运用哈希算法对认证设备标识进行哈希运算得到挑战值参数;
更具体地,挑战值参数长度为32字节;
优选地,哈希算法为SM3算法,除此之外还可以为SHA-256算法等;
例如,挑战值参数为:
"1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B";
具体地,认证服务器运用哈希算法对应用标识进行哈希运算得到应用参数;
更具体地,应用参数长度为32字节;
优选地,哈希算法为SM3算法,除此之外还可以为SHA-256算法等;
例如,应用参数为:
"1EFF5CC0744F9F4CEE400F1C01B741396DD4190596C82AC4074C93C5E11893D8";
具体地,认证服务器运用哈希算法对订单信息进行哈希运算得到时间签名值;
具体地,认证服务器运用哈希算法对订单信息和时间签名值进行哈希运算得到待签名数据;
具体地,待签名数据包含订单信息和时间签名值;
更具体地,时间签名值表示订单信息的时间属性;
优选地,计算时间签名值所运用的哈希算法为SM3算法,公钥算法为SM2算法;
步骤M24:认证服务器根据挑战值参数、应用参数和待签名数据生成支付认证第二请求响应;
例如,支付认证第二请求响应为:
其中,挑战值参数为:
"1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B";
应用参数为:
"1EFF5CC0744F9F4CEE400F1C01B741396DD4190596C82AC4074C93C5E11893D8";
待签名数据为:
"RfY_RDhsf4z5PCOhnqbAtTTOezVKCjl2mPorYzbpxRrZ-_3wWroMXsF_pLYjNVm_l7bplAx4bkEwK6ibil9EHGfdfKOQ1q0tyEkNJFOgqdjVmLioZZmKxaSi10tkY_c4";
步骤M25:认证服务器向应用服务器发送支付认证第二请求响应;
步骤M26:应用服务器收到支付认证第二请求响应后,根据订单信息中的用户账号和应用服务器内部已经保存的用户认证方式标识检索对应的密钥标识,若检索到对应的密钥标识,则执行步骤M27,如未检索到,则报错结束;
具体地,在步骤M1之前进行绑定流程,在绑定流程中,认证设备生成与用户账号和用户认证方式标识一一对应的密钥标识及密钥对,应用服务器将密钥标识进行备份;用户认证方式标识在步骤M18中保存下来的;用户账号在订单信息中;
当认证设备只支持一种用户认证方式时,则步骤M26替换为:应用服务器收到支付认证第二请求响应后,根据用户账号或用户认证方式标识检索对应的密钥标识,若检索到对应的密钥标识,则执行步骤M27,如未检索到,则报错结束;
优选地,认证设备生成密钥标识及密钥对的公钥算法为SM2算法,除此之外还有RSA算法等;
例如,当选用的公钥算法为SM2算法时,SM2算法返回JSON格式的数据为:
{
"typ":"JWT",
"alg":"301SM2",
"Q#S256":
"E3A31B81B7C78B10D3D8FCEF254575D6FF8F9E336FB33B27226D9E790D681985E604C6F486AEAA9AACF7E128019825ECA9E39C668E72D82983B5611AAF07C483DC89984B9B464A57BA369E0DFEB905CA8EFB90145B2274AB9C7241371C22FF9D62F54E9A8F5EC64A4B3CD4128A50A75666224452C703FC23F4F2089B663602D9"
};
步骤M27:应用服务器解析支付认证第二请求响应,得到挑战值参数、应用参数和待签名数据,应用服务器根据密钥标识、挑战值参数、应用参数和待签名数据,生成支付认证第一请求响应;
例如,支付认证第一请求响应为:
其中,密钥标识为:"F6E7BE3CF6100DDC65C10C3CEB4B6C62";
挑战值参数为:
"1AB21D8355CFA17F8E61194831E81A8F22BEC8C728FEFB747ED035EB5082AA2B";
应用参数为:
"1EFF5CC0744F9F4CEE400F1C01B741396DD4190596C82AC4074C93C5E11893D8";
待签名数据为:
"RfY_RDhsf4z5PCOhnqbAtTTOezVKCjl2mPorYzbpxRrZ-_3wWroMXsF_pLYjNVm_l7bplAx4bkEwK6ibil9EHGfdfKOQ1q0tyEkNJFOgqdjVmLioZZmKxaSi10tkY_c4";
步骤M28:应用服务器向客户端发送支付认证第一请求响应;
步骤M29:客户端接收并解析支付认证第一请求响应,得到密钥标识、挑战值参数、应用参数和待签名数据,客户端保存密钥标识、挑战值参数、应用参数和待签名数据,根据密钥标识、挑战值参数、应用参数和待签名数据,生成待签名请求;
步骤M30:客户端向认证设备发送待签名请求;
例如,待签名请求为:0x00020000xx‘支付验证参数’xx;
其中,支付验证参数包括挑战值参数、应用参数、密钥标识和待签名数据;
步骤M31:认证设备收到待签名请求后,认证设备提示用户在认证设备上进行身份认证,如果用户身份合法,则执行步骤M32,如果用户身份不合法,报错结束;
具体地,步骤M31包括:认证设备提示用户输入认证密码,当接收到用户输入的认证密码信息时,判断认证密码信息是否正确,是则用户身份合法;否则用户身份不合法;例如,输入认证密码可以为PIN码信息;
进一步地,认证设备内设置错误次数阀值,步骤M31判断为否时还包括:认证设备接收用户输入密码信息错误时更新操作次数,并判断操作次数是否到达错误次数阀值,如果是,则报错,否则提示用户重新输入;
步骤M32:认证设备解析待签名请求,得到密钥标识、挑战值参数、应用参数和待签名数据;
步骤M33:认证设备从待签名数据中提取并显示交易关键信息,提示用户进行确认,当接收到确认信息时,执行步骤M34,当未接收到确认信息时,报错结束;
具体地,交易关键信息包括交易金额、商户名称和交易时间等;
进一步地,认证设备在一段时间内等待接收用户的确认信息,例如60秒,如果在此时间段内认证设备接收到用户的确认信息,则执行步骤M34,否则,报错结束;
步骤M34:认证设备根据密钥标识检索认证设备内部保存的对应私钥;
具体地,在步骤M1之前进行绑定流程,在绑定流程中,认证设备生成与用户账号和用户认证方式标识一一对应的密钥标识及密钥对;
优选地,认证设备生成密钥标识及密钥对的公钥算法为SM2算法,除此之外还可以为RSA算法等;
步骤M35:认证设备使用私钥对挑战值参数、应用参数和计数值计算签名得到签名值,根据签名值和计数值生成验证签名请求,更新计数值;
步骤M35还可以为步骤M35-1:认证设备使用私钥对挑战值参数、应用参数和计数值计算签名得到签名值,将签名值和计数值发送至客户端,更新计数值,然后执行步骤M36-1;
当步骤M35替换为步骤M35-2时:认证设备使用私钥对挑战值参数、应用参数和计数值计算签名得到签名值,根据签名值和计数值生成验证签名请求,然后执行步骤M36;
当步骤M35替换为步骤M35-3时:认证设备使用私钥对挑战值参数、应用参数和计数值计算签名得到签名值,将签名值和计数值发送至客户端,然后执行步骤M36-1;
例如,验证签名请求为:0x00020200xx‘签名验证参数’xx;
其中,签名验证参数包括挑战值参数、应用参数和计数值;
具体地,认证设备在第一次生成应用密钥对时,初始化计数器的计数值为0;认证设备每执行一次计算签名操作,计数器的计数值递增一次;
步骤M36:认证设备通过客户端和应用服务器将验证签名请求发送至认证服务器;
当步骤M35为步骤M35-1、M35-3时,步骤M36还可以为步骤M36-1:
步骤M36-1:客户端根据签名值和计数值生成验证签名请求,并将其通过应用服务器发送至认证服务器;
例如,验证签名请求为:0x00020200xx‘签名验证参数’xx;
其中,签名验证参数包括挑战值参数、应用参数和计数值;
步骤M37:认证服务器接收并解析验证签名请求,得到计数值和签名值,保存计数值,根据用户账号和之前解析得到用户认证方式标识检索对应的密钥标识;
具体地,在步骤M1之前进行绑定流程,在绑定流程中,认证设备生成与用户账号和用户认证方式标识一一对应的密钥标识及密钥对,并且认证服务器将密钥标识及公钥进行备份;订单信息在步骤M21中保存下来;用户账号在订单信息中;
当认证设备只支持一种用户认证方式时,则步骤M37替换为:
认证服务器接收并解析验证签名请求,得到计数值和签名值,保存计数值,根据用户账号或之前解析得到用户认证方式标识检索对应的密钥标识;
步骤M38:认证服务器根据检索到的密钥标识检索对应的公钥,并使用检索到的公钥解密签名值,得到第一哈希值;
步骤M39:认证服务器根据哈希算法对保存的挑战值参数、应用参数和计数值进行哈希运算,得到第二哈希值;
优选地,哈希算法为SM3算法,除此之外还可以为MD5算法等;
步骤M40:认证服务器将解密得到的第一哈希值和计算得到的第二哈希值进行比对,判断是否一致,根据判断结果生成产生验证响应;
步骤M41:认证服务器向应用服务器发送验证响应;
步骤M42:应用服务器收到验证响应后,判断验证响应的类型,如果验证成功,执行步骤M43,如果验证不成功,执行步骤M44;
步骤M43:应用服务器发送验证成功响应至客户端,并允许进行支付操作;
当步骤M35替换为步骤M35-2、M35-3,步骤M43替换为步骤M43-1:
步骤M43-1:应用服务器发送验证成功响应至客户端,并允许进行支付操作,客户端将验证成功信息发送至认证设备,认证设备更新计数值;
步骤M44:应用服务器发送验证失败响应至客户端,并拒绝进行支付操作。
验证签名成功后,还可以包括以下步骤:
步骤G1:客户端显示“支付成功”;
验证签名失败后,还可以包括以下步骤:
步骤H1:客户端显示“支付失败”。
本实施例中,步骤M4-M11还可以用以下步骤代替:
步骤N4:客户端发送获取用户认证方式标识的请求至认证设备;
例如,获取用户认证方式标识的请求为:0x00c6000001;
步骤N5:认证设备显示所支持的认证方式,提示用户进行选择并接收用户的选择信息,当接收到用户的选择信息时读取对应的用户认证方式标识;
具体地,认证设备显示供用户选择的用户认证方式为:指纹认证,其对应的用户认证方式标识为0x01;掌纹认证,其对应的用户认证方式标识为0x02;虹膜认证,其对应的用户认证方式标识为0x03;脸谱认证,其对应的用户认证方式标识为0x04;声纹认证,其对应的用户认证方式标识为0x05;动脉认证,其对应的用户认证方式标识为0x06等;
优选地,当认证设备未接收到用户选择的用户认证方式信息时,认证设备报错结束,或认证设备选择默认的一种用户认证方式,读取相应的用户认证方式标识;
进一步地,认证设备可以设置等待接收用户选择的用户认证方式信息的时间,例如60秒,如果在此时间段内,认证设备接收到用户选择的用户认证方式信息,则执行步骤N6,否则,认证设备报错结束;
步骤N6:认证设备发送用户认证方式标识至客户端;
步骤N7:客户端保存用户认证方式标识;
步骤N8:客户端发送获取认证设备标识的请求至认证设备;
例如,获取认证设备标识的请求为:0x00c5000008;
步骤N9:认证设备读取出厂时预植的认证设备标识;
具体地,设备标识长度为8字节;
例如,认证设备标识为:0x0101160800002478;
步骤N10:认证设备发送认证设备标识至客户端;
步骤N11:客户端保存认证设备标识,执行步骤M16。
实施例四
本实施例四提供了一种支付认证系统,如图6所示,包括客户端10、应用服务器20、认证服务器30和认证设备40,
客户端10包括:
第一生成模块101,用于当接收到应用服务器20返回的当前应用中的订单信息时,根据认证设备标识和用户认证方式标识生成支付认证第一请求;
第一接收模块102,用于接收应用服务器20发送的支付认证第一请求响应和认证设备发送的验证签名请求;
第一解析模块103,用于解析第一接收模块102接收的支付认证第一请求响应;
第二生成模块104,用于根据第一解析模块103解析支付认证第一请求响应的得到的密钥标识、挑战值参数、应用参数、待签名数据生成待签名请求;
第一发送模块105,用于将第一生成模块101生成的支付认证第一请求和第一接收模块102接收到的验证签名请求发送至应用服务器20,还用于将第二生成模块104生成的待签名请求发送至认证设备40;
应用服务器20包括:
第二接收模块201,用于接收第一发送模块105发送的支付认证第一请求和验证签名请求,还用于接收认证服务器30发送的支付认证第二请求响应和签名值的验证结果;
第二解析模块202,用于解析第二接收模块201接收的支付认证第一请求和支付认证第二请求响应;
第三生成模块203,用于根据支付认证第一请求的解析结果、当前应用中的订单信息和当前应用对应的应用标识生成支付认证第二请求;
第三生成模块203具体用于根据第三解析模块302解析支付认证第二请求得到的订单信息和根据订单信息生成的时间签名值生成待签名数据;
第四生成模块204,用于根据第二解析模块202解析支付认证第二请求响应的解析结果和密钥标识生成支付认证第一请求响应;
第二发送模块205,用于将第三生成模块203生成的支付认证第二请求和第二接收模块201接收到的验证签名请求发送至认证服务器30,还用于将第四生成模块204生成的支付认证第一请求响应发送至客户端10;
支付模块206,用于根据第二接收模块201接收到的验证结果进行允许支付操作或者拒绝支付操作;
认证服务器30包括:
第三接收模块301,用于接收应用服务器20发送的支付认证第二请求和验证签名请求;
第三解析模块302,用于解析第三接收模块301接收到的支付认证第二请求和验证签名请求;
第五生成模块303,用于根据第三解析模块302解析支付认证第二请求得到的解析结果生成挑战值参数、应用参数和待签名数据;
第六生成模块304,用于根据第五生成模块303生成的挑战值参数、应用参数和待签名数据生成支付认证第二请求响应;
验证模块305,用于根据公钥对第三解析模块302解析验证签名请求得到的签名值进行验证;
具体的,当认证设备40只支持一种用户认证方式时,验证模块305具体包括:
第一保存单元,用于保存计数值;
第一检索单元,用于根据第三解析模块302解析支付认证第二请求所得的订单信息中用户账号或用户认证方式标识检索密钥标识,根据密钥标识检索公钥;
第一解密单元,用于使用公钥解密第三解析模块302解析所述验证签名请求得到的签名值;
第一比对单元,用于将第一解密单元的解密结果与根据挑战值参数、应用参数和计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败;
具体的,当认证设备40支持多种用户认证方式时,验证模块305具体包括:
第二保存单元,用于保存计数值;
第二检索单元,用于根据第三解析模块302解析支付认证第二请求所得的订单信息中的用户账号和用户认证方式标识检索密钥标识,根据密钥标识检索公钥;
第二解密单元,用于使用公钥解密第三解析模块302解析所述验证签名请求得到的签名值;
第二比对单元,用于将第二解密单元的解密结果与根据挑战值参数、应用参数和计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败;
第三发送模块306,用于发送第六生成模块304生成的支付认证第二请求响应和验证模块305的验证结果至应用服务器20;
认证设备40包括:
第四接收模块401,用于接收第一发送模块105发送的待签名请求;
提示模块402,用于当所述第四接收模块401接收到所述待签名请求时提示用户并接收确认身份信息;
第四解析模块403,用于当提示模块402接收到用户确认身份信息时对待签名请求进行解析得到待签名数据;
提取模块404,用于从第四解析模块403解析待签名请求得到的待签名数据中提取交易关键信息;
显示模块405,用于显示提取模块404提取到的交易关键信息,提示用户确认并接收用户确认信息;
第七生成模块406,用于当显示模块405接收到用户确认信息时,根据私钥对第四解析模块403解析待签名请求得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值;
第八生成模块407,用于根据第七生成模406生成的签名值和计数值生成验证签名请求;
第四发送模块408,用于将第八生成模块407生成的验证签名请求发送至客户端10;
更新模块409,用于在第八生成模块407生成验证签名请求之后更新计数值;
本实施例中,关于验证签名请求和计数值可以分为以下三种情况:
(一)客户端10生成验证签名请求,并且认证设备40在发送签名值和计数值至客户端之后就更新计数值时:
第四发送模块408,还用于将签名值和所述计数值发送给客户端10;
第一接收模块102,还用于接收第四发送模块408发送的签名值和计数值;
第八生成模块407位于客户端10;
更新模块409,还用于在第四发送模块408发送所述签名值和计数值至客户端10后,更新计数值。
(二)认证设备40生成验证签名请求,并且认证设备40在收到验证成功信息之后更新计数值时:
第二发送模块205,还用于当第二接收模块201接收到的签名值的验证结果为验证成功信息时将其发送至客户端10;
第一接收模块102,还用于接收第二发送模块205发送的验证成功信息;
第一发送模块105,还用于发送第一接收模块102接收的验证成功信息至认证设备40;
第四接收模块401,还用于接收第一发送模块105发送的验证成功信息;
更新模块409,还用于当第四接收模块401接收到所述验证成功信息时,更新所述计数值。
(三)客户端10生成验证签名请求,并且认证设备40在收到验证成功信息之后更新计数值时:
第四发送模块408,还用于将签名值和计数值发送给客户端10;
第四接收模块401,还用于接收第一发送模块105发送的验证成功信息;
第二发送模块205,还用于当第二接收模块201接收到的签名值的验证结果为验证成功信息时将其发送至客户端10;
第一接收模块102,还用于接收第二发送模块205发送的验证成功信息,还用于接收第四发送模块408发送签名值和计数值;
第一发送模块105,还用于发送第一接收模块102接收的验证成功信息至认证设备40;
第八生成模块407位于客户端10;
更新模块409,还用于当第四接收模块401接收到验证成功信息时,更新计数值。
本实施例中,认证设备还包括:
指纹模块,用于对用户提供的指纹进行认证;
和\或,掌纹模块,用于对用户提供的掌纹进行认证;
和\或,虹膜模块,用于对用户提供的虹膜进行认证;
和\或,脸谱模块,用于对用户提供的脸谱进行认证;
和\或,声纹模块,用于对用户提供的声纹进行认证;
和\或,动脉模块,用于对用户提供的动脉进行认证;
在本实施例中,
第一发送模块105,还用于发送获取认证设备标识和用户认证方式标识的请求至认证设备40;
第一接收模块102,还用于接收第四发送模块408发送的认证设备标识和用户认证方式标识;
第四接收模块401,还用于接收第一发送模块105发送的获取设备标识和用户认证方式标识的请求;
第四发送模块408,还用于发送认证设备标识和用户认证方式标识至客户端10;
显示模块405,还用于显示所支持的认证方式,提示用户进行选择并接收用户的选择信息;
认证设备40还包括:
读取模块,用于当接收到用户的选择信息时读取对应的用户认证方式标识;
在本实施例中,
第一发送模块105,还用于分别发送获取认证设备标识的请求和获取用户认证方式标识的请求至认证设备40;
第一接收模块102,还用于分别接收第四发送模块408发送的认证设备标识和用户认证方式标识;
第四发送模块408,还用于分别发送认证设备标识和用户认证方式标识至客户端10;
第四接收模块401,还用于分别接收第一发送模块105发送的获取认证设备标识的请求和获取用户认证方式标识的请求;
在本实施例中,客户端10还包括:
第一判断模块,用于判断是否保存有认证设备标识;
第一发送模块105,还用于当第一判断模块判断为是时,发送获取用户认证方式标识的请求至认证设备40,还用于当第一判断模块判断为否时,分别发送获取认证设备标识的请求和获取用户认证方式标识的请求至认证设备40;
第一接收模块102,还用于接收第四发送模块408发送的用户认证方式标识,或接收第四发送模块408分别发送的认证设备标识和用户认证方式标识;
第四接收模块401,还用于接收获取用户认证方式标识的请求,或分别接收获取认证设备标识的请求和获取用户认证方式标识的请求;
第四发送模块408,还用于发送用户认证方式标识至客户端10,或分别发送认证设备标识和用户认证方式标识至客户端10;
本实施例中,认证服务器30还包括:
第一报错模块,用于报错;
第二判断模块,用于根据认证设备标识判断认证设备40是否可用,是则触发第五生成模块303,否则触发第一报错模块;
本实施例中,应用服务器20还包括:
第二报错模块,用于报错;
当认证设备40只支持一种用户认证方式时,应用服务器20还包括:
第一检索模块,用于收到支付认证第二请求响应后,根据当前应用中的订单信息中用户账号或用户认证方式标识检索对应的密钥标识,如检索到,则触发第四生成模块204,如未检索到,则触发第二报错模块;
当认证设备40支持多种用户认证方式时,应用服务器20还包括:
第二检索模块,用于根据当前应用中的订单信息中的用户账号和用户认证方式标识检索密钥标识,如检索到,则触发第四生成模块204,如未检索到,则触发第二报错模块;
本实施例中,认证设备40还包括:
第三报错模块,用于报错;
第三判断模块,用于提示用户输入认证密码,判断是否接收到正确的认证密码,是则触发第四解析模块403,否则触发第三报错模块。
以上所述四个实施例的前提是:在同一个应用中,一个账号至多绑定一个认证设备,一个认证设备可以对应多个应用;
当认证设备支持一种认证方式时,实施例中的用户账号、认证设备标识、应用标识、用户认证方式标识和密钥标识是一一对应的关系,可以根据用户账号或认证设备标识或应用标识或用户认证方式标识检索密钥标识;
当认证设备支持多种认证方式时,实施例中的用户账号、认证设备标识和应用标识是一一对应的关系,而认证设备标识与用户认证方式标识是一对多的关系,可以根据用户账号或认证设备标识或应用标识再结合用户认证方式标识共同检索密钥标识。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (32)

1.一种支付认证方法,其特征在于,包括:
步骤A1:当客户端接收到应用服务器返回的当前应用中的订单信息时,所述客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求,并将其发送至所述应用服务器;
步骤A2:所述应用服务器接收并解析所述支付认证第一请求,根据所述支付认证第一请求的解析结果、当前应用中的订单信息和当前应用对应的应用标识生成支付认证第二请求,并将其发送至认证服务器;
步骤A3:所述认证服务器接收并解析所述支付认证第二请求,根据所述支付认证第二请求的解析结果生成挑战值参数、应用参数和待签名数据,根据所述挑战值参数、所述应用参数和所述待签名数据生成支付认证第二请求响应,并将其发送至所述应用服务器;
步骤A4:所述应用服务器接收并解析所述支付认证第二请求响应,根据所述支付认证第二请求响应的解析结果和密钥标识生成支付认证第一请求响应,并将其发送至所述客户端;
步骤A5:所述客户端接收并解析所述支付认证第一请求响应,根据所述支付认证第一请求响应的解析结果中的密钥标识、挑战值参数、应用参数、待签名数据生成待签名请求,并将其发送至所述认证设备;
步骤A6:所述认证设备接收所述待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对所述待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,所述认证设备根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,根据所述签名值和所述计数值生成验证签名请求,更新所述计数值,通过所述客户端和所述应用服务器将所述验证签名请求发送至所述认证服务器;
步骤A7:所述认证服务器接收所述验证签名请求,根据公钥对所述验证签名请求中的签名值进行验证,并将验证结果发送给所述应用服务器;
步骤A8:所述应用服务器根据所述验证结果进行允许支付操作或者拒绝支付操作。
2.根据权利要求1所述的方法,其特征在于,所述步骤A1中所述客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求之前还包括:所述客户端发送获取设备标识和用户认证方式标识的请求至所述认证设备,所述认证设备发送认证设备标识和用户认证方式标识至所述客户端。
3.根据权利要求1所述的方法,其特征在于,所述步骤A1中所述客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求之前还包括:
所述客户端发送获取认证设备标识的请求至所述认证设备,所述认证设备发送认证设备标识至所述客户端;
所述客户端发送获取用户认证方式标识的请求至所述认证设备,所述认证设备发送用户认证方式标识至所述客户端。
4.根据权利要求1所述的方法,其特征在于,所述步骤A1中所述客户端根据认证设备标识和用户认证方式标识生成支付认证第一请求之前还包括:所述客户端判断是否保存有认证设备标识,
是则所述客户端发送获取用户认证方式标识的请求至所述认证设备,所述认证设备发送用户认证方式标识至所述客户端;
否则所述客户端分别发送获取认证设备标识的请求和获取用户认证方式标识的请求至所述认证设备,所述认证设备分别发送对应的认证设备标识和用户认证方式标识至所述客户端。
5.根据权利要求2或3或4所述的方法,其特征在于,所述认证设备发送用户认证方式标识至所述客户端之前还包括:所述认证设备显示所支持的认证方式,提示用户进行选择并接收用户的选择信息,当接收到用户的选择信息时读取对应的用户认证方式标识。
6.根据权利要求5所述的方法,其特征在于,所述认证方式包括:指纹认证和/或掌纹认证和/或虹膜认证和/或脸谱认证和/或声纹认证和/或动脉认证。
7.根据权利要求1所述的方法,其特征在于,所述步骤A3中所述认证服务器生成挑战值参数、应用参数和待签名数据之前还包括:所述认证服务器根据解析所述支付认证第二请求所得的认证设备标识判断所述认证设备是否可用,是则继续,否则,报错结束。
8.根据权利要求1所述的方法,其特征在于,所述步骤A3中生成所述待签名数据具体为:根据解析所述支付认证第二请求得到的订单信息和根据所述订单信息生成的时间签名值生成所述待签名数据。
9.根据权利要求1所述的方法,其特征在于,在所述步骤A4中的生成支付认证第一请求响应之前还包括:根据所述订单信息中保存的用户账号或所述用户认证方式标识检索对应的密钥标识,如检索到,则继续,如未检索到,则报错结束。
10.根据权利要求5所述的方法,其特征在于,在所述步骤A4中的生成支付认证第一请求响应之前还包括:所述应用服务器根据当前应用中的订单信息中保存的用户账号和用户认证方式标识检索密钥标识,如检索到,则继续,如未检索到,则报错结束。
11.根据权利要求1所述的方法,其特征在于,所述步骤A6替换为:
步骤A6-1:所述认证设备接收所述待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对所述待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,所述认证设备将所述签名值和所述计数值发送给所述客户端,更新所述计数值,所述客户端根据所述签名值和所述计数值生成验证签名请求,通过所述应用服务器将所述验证签名请求发送至所述认证服务器。
12.根据权利要求1所述的方法,其特征在于,所述步骤A6替换为:
步骤A6-2:所述认证设备接收所述待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对所述待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,所述认证设备根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,根据所述签名值和所述计数值生成验证签名请求,通过所述客户端和所述应用服务器将所述验证签名请求发送至所述认证服务器;
所述方法还包括步骤A9:当所述应用服务接收到所述签名值的验证结果为验证成功信息时,所述应用服务器通过所述客户端发送所述验证成功信息至所述认证设备,当所述认证设备接收到验证成功信息时,更新所述计数值。
13.根据权利要求1所述的方法,其特征在于,所述步骤A6替换为:
步骤A6-3:所述认证设备接收所述待签名请求,提示并接收用户确认身份信息,当收到用户确认身份信息时对所述待签名请求进行解析,从解析得到的待签名数据中提取交易关键信息并显示,提示用户确认并接收用户确认信息,当接收到用户确认信息时,根据私钥对解析得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到签名值,所述认证设备将所述签名值和所述计数值发送给所述客户端,所述客户端根据所述签名值和所述计数值生成验证签名请求,通过所述应用服务器将所述验证签名请求发送至所述认证服务器;
所述方法还包括步骤A9:当所述应用服务器接收到所述签名值的验证结果为验证成功信息时,所述应用服务器通过所述客户端发送所述验证成功信息至所述认证设备,当所述认证设备接收到验证成功信息时,更新所述计数值。
14.根据权利要求1所述的方法,其特征在于,所述步骤A6中提示并接收用户确认身份信息具体包括:当所述认证设备接收所述待签名请求时,所述认证设备提示用户输入认证密码,判断是否接收到正确的认证密码,是则继续,否则报错。
15.根据权利要求1所述的方法,其特征在于,所述步骤A7中的根据公钥对所述验证签名请求中的签名值进行验证,具体为:
步骤C1:所述认证服务器保存所述计数值,根据解析所述支付认证第二请求所得订单信息中的用户账号或用户认证方式标识检索密钥标识;
步骤C2:所述认证服务器根据所述密钥标识检索公钥,并使用所述公钥解密所述签名值,将解密结果与根据所述挑战值参数、所述应用参数和所述计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败。
16.根据权利要求10所述的方法,其特征在于,所述步骤A7中的根据公钥对所述验证签名请求中的签名值进行验证,具体为:
步骤G1:所述认证服务器保存所述计数值,根据解析所述支付认证第二请求所得的订单信息中的用户账号和所述用户认证方式标识检索密钥标识;
步骤G2:所述认证服务器根据所述密钥标识检索公钥,并使用所述公钥解密所述签名值,将解密结果与根据所述挑战值参数、所述应用参数和所述计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败。
17.一种支付认证的系统,其特征在于,包括客户端、应用服务器、认证服务器和认证设备,所述客户端包括:
第一生成模块,用于当接收到所述应用服务器返回的当前应用中的订单信息时,根据认证设备标识和用户认证方式标识生成支付认证第一请求;
第一接收模块,用于接收所述应用服务器发送的支付认证第一请求响应和所述认证设备发送的验证签名请求;
第一解析模块,用于解析所述第一接收模块接收的所述支付认证第一请求响应;
第二生成模块,用于根据所述第一解析模块解析所述支付认证第一请求响应得到的密钥标识、挑战值参数、应用参数、待签名数据生成待签名请求;
第一发送模块,用于将所述第一生成模块生成的所述支付认证第一请求和所述第一接收模块接收到的所述验证签名请求发送至所述应用服务器,还用于将所述第二生成模块生成的所述待签名请求发送至所述认证设备;
所述应用服务器包括:
第二接收模块,用于接收所述第一发送模块发送的所述支付认证第一请求和所述验证签名请求,还用于接收所述认证服务器发送的所述支付认证第二请求响应和签名值的验证结果;
第二解析模块,用于解析所述第二接收模块接收到的所述支付认证第一请求和所述支付认证第二请求响应;
第三生成模块,用于根据所述第二解析模块解析所述支付认证第一请求的解析结果、当前应用中的订单信息和当前应用对应的应用标识生成所述支付认证第二请求;
第四生成模块,用于根据所述第二解析模块解析所述支付认证第二请求响应的解析结果和密钥标识生成所述支付认证第一请求响应;
第二发送模块,用于将所述第三生成模块生成的所述支付认证第二请求和所述第二接收模块接收到的所述验证签名请求发送至所述认证服务器,还用于将所述第四生成模块生成的所述支付认证第一请求响应发送至所述客户端;
支付模块,用于根据所述第二接收模块接收到的所述验证结果进行允许支付操作或者拒绝支付操作;
所述认证服务器包括:
第三接收模块,用于接收所述第二发送模块发送的所述支付认证第二请求和所述验证签名请求;
第三解析模块,用于解析所述第三接收模块接收到的所述支付认证第二请求和所述验证签名请求;
第五生成模块,用于根据所述第三解析模块解析所述支付认证第二请求的解析结果生成挑战值参数、应用参数和待签名数据;
第六生成模块,用于根据所述挑战值参数、所述应用参数和所述待签名数据生成支付认证第二请求响应;
验证模块,用于根据公钥对所述第三解析模块解析所述验证签名请求得到的签名值进行验证;
第三发送模块,用于发送所述第六生成模块生成的所述支付认证第二请求响应和所述验证模块的验证结果至所述应用服务器;
所述认证设备包括:
第四接收模块,用于接收所述第一发送模块发送的所述待签名请求;
提示模块,用于当所述第四接收模块接收到所述待签名请求时提示并接收用户确认身份信息;
第四解析模块,用于当所述提示模块接收到用户确认身份信息时对所述待签名请求进行解析得到待签名数据;
提取模块,用于从所述第四解析模块解析所述待签名请求得到的所述待签名数据中提取交易关键信息;
显示模块,用于显示所述提取模块提取到的所述交易关键信息,提示用户确认并接收用户确认信息;
第七生成模块,用于当所述显示模块接收到用户确认信息时,根据私钥对所述第四解析模块解析所述待签名请求得到的挑战值参数、应用参数、待签名数据和内部保存的计数值进行计算签名得到所述签名值;
第八生成模块,用于根据所述第七生成模块生成的所述签名值和所述计数值生成所述验证签名请求;
第四发送模块,用于发送所述第八生成模块生成的验证签名请求至所述客户端;
更新模块,用于在所述第八生成模块生成所述验证签名请求之后更新所述计数值。
18.根据权利要求17所述的系统,其特征在于,
所述第一发送模块,还用于发送获取认证设备标识和用户认证方式标识的请求至所述认证设备;
所述第一接收模块,还用于接收所述第四发送模块发送的所述认证设备标识和所述用户认证方式标识;
所述第四接收模块,还用于接收所述第一发送模块发送的所述获取设备标识和用户认证方式标识的请求;
所述第四发送模块,还用于发送所述认证设备标识和所述用户认证方式标识至所述客户端。
19.根据权利要求17所述的系统,其特征在于,
所述第一发送模块,还用于分别发送所述获取认证设备标识的请求和所述获取用户认证方式标识的请求至所述认证设备;
所述第一接收模块,还用于分别接收所述第四发送模块所发送的所述认证设备标识和所述用户认证方式标识;
所述第四发送模块,还用于分别发送所述认证设备标识和所述用户认证方式标识至所述客户端;
所述第四接收模块,还用于分别接收所述第一发送模块发送的所述获取认证设备标识的请求和所述获取用户认证方式标识的请求。
20.根据权利要求17所述的系统,其特征在于,所述客户端还包括第一判断模块,用于判断是否保存有所述认证设备标识;
所述第一发送模块,还用于当所述第一判断模块判断为是时,发送所述获取用户认证方式标识的请求至所述认证设备,还用于当所述第一判断模块判断为否时,分别发送所述获取认证设备标识的请求和所述获取用户认证方式标识的请求至所述认证设备;
所述第一接收模块,还用于接收所述第四发送模块发送的所述用户认证方式标识,或还用于分别接收所述第四发送模块发送的所述认证设备标识和所述用户认证方式标识;
所述第四接收模块,还用于接收所述第一发送模块发送的获取用户认证方式标识的请求,或还用于分别接收所述第一发送模块发送的获取认证设备标识的请求和所述获取用户认证方式标识的请求;
所述第四发送模块,还用于发送所述用户认证方式标识至所述客户端,或还用于分别发送所述认证设备标识和所述用户认证方式标识至所述客户端。
21.根据权利要求18或19或20所述的系统,其特征在于,
所述显示模块,还用于显示所支持的认证方式,提示用户进行选择并接收用户的选择信息;
所述认证设备还包括:
读取模块,用于当所述显示模块接收到用户的选择信息时读取对应的用户认证方式标识。
22.根据权利要求21所述的系统,其特征在于,所述认证设备还包括:
指纹模块,用于对用户提供的指纹进行认证;
和\或,掌纹模块,用于对用户提供的掌纹进行认证;
和\或,虹膜模块,用于对用户提供的虹膜进行认证;
和\或,脸谱模块,用于对用户提供的脸谱进行认证;
和\或,声纹模块,用于对用户提供的声纹进行认证;
和\或,动脉模块,用于对用户提供的动脉进行认证。
23.根据权利要求17所述的系统,其特征在于,所述认证服务器还包括:
第一报错模块,用于报错;
第二判断模块,用于根据所述第三解析模块解析所述支付认证第二请求所得的认证设备标识判断所述认证设备是否可用,是则触发所述第五生成模块,否则触发所述第一报错模块。
24.根据权利要求17所述的系统,其特征在于,所述第三生成模块,具体用于根据所述第三解析模块解析所述支付认证第二请求得到的订单信息和根据订单信息生成的时间签名值生成所述待签名数据。
25.根据权利要求17所述的系统,其特征在于,所述应用服务器还包括:
第二报错模块,用于报错;
第一检索模块,用于当所述第二接收模块接收到所述支付认证第二请求响应后,根据所述订单信息中的用户账号或用户认证方式标识检索对应的密钥标识,如检索到,则触发所述第四生成模块,如未检索到,则触发所述第二报错模块。
26.根据权利要求21所述的系统,其特征在于,所述应用服务器还包括:
第二报错模块,用于报错;
第二检索模块,用于根据所述订单信息中的用户账号和用户认证方式标识检索所述密钥标识,如检索到,则触发所述第四生成模块,如未检索到,则触发所述第二报错模块。
27.根据权利要求17所述的系统,其特征在于,
所述第四发送模块,还用于将所述签名值和所述计数值发送给所述客户端;
所述第一接收模块,还用于接收所述第四发送模块发送的所述签名值和所述计数值;
所述第八生成模块位于所述客户端;
所述更新模块,还用于在所述第四发送模块发送所述签名值和所述计数值至所述客户端后,更新所述计数值。
28.根据权利要求17所述的系统,其特征在于,
所述第二发送模块,还用于当所述第二接收模块接收到的签名值的验证结果为验证成功信息时将其发送至所述客户端;
所述第一接收模块,还用于接收所述第二发送模块发送的所述验证成功信息;
所述第一发送模块,还用于发送所述第一接收模块接收的所述验证成功信息至所述认证设备;
所述第四接收模块,还用于接收所述第一发送模块发送的所述验证成功信息;
所述更新模块,还用于当所述第四接收模块接收到所述验证成功信息时,更新所述计数值。
29.根据权利要求17所述的系统,其特征在于,
所述第四发送模块,还用于将所述签名值和所述计数值发送给所述客户端;
所述第四接收模块,还用于接收所述第一发送模块发送的验证成功信息;
所述第二发送模块,还用于当所述第二接收模块接收到的签名值的验证结果为验证成功信息时将其发送至所述客户端;
所述第一接收模块,还用于接收所述第二发送模块发送的所述验证成功信息,还用于接收所述第四发送模块发送的所述签名值和所述计数值;
所述第一发送模块,还用于发送所述第一接收模块接收的所述验证成功信息至所述认证设备;
所述第八生成模块位于所述客户端;
所述更新模块,还用于当所述第四接收模块接收到所述验证成功信息时,更新所述计数值。
30.根据权利要求17所述的系统,其特征在于,所述认证设备还包括:
第三报错模块,用于报错;
第三判断模块,用于当所述第四接收模块接收所述待签名请求时,提示用户输入认证密码,判断是否接收到正确的认证密码,是则触发所述第四解析模块,否则触发所述第三报错模块。
31.根据权利要求17所述的系统,其特征在于,所述验证模块具体包括:
第一保存单元,用于保存计数值;
第一检索单元,用于根据所述第三解析模块解析所述支付认证第二请求所得订单信息中的用户账号或用户认证方式标识检索密钥标识,根据所述密钥标识检索公钥;
第一解密单元,用于使用所述公钥解密所述第三解析模块解析所述验证签名请求得到的签名值;
第一比对单元,用于将所述第一解密单元的解密结果与根据所述挑战值参数、所述应用参数和所述计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败。
32.根据权利要求26所述的系统,其特征在于,所述验证模块具体包括:
第二保存单元,用于保存计数值;
第二检索单元,用于根据所述第三解析模块解析所述支付认证第二请求所得订单信息中的用户账号和用户认证方式标识检索密钥标识,根据所述密钥标识检索公钥;
第二解密单元,用于使用所述公钥解密所述第三解析模块解析所述验证签名请求得到的签名值;
第二比对单元,用于将所述第二解密单元的解密结果与根据所述挑战值参数、所述应用参数和所述计数值进行哈希运算所得结果进行比对,若一致,则验证成功,否则验证失败。
CN201610977393.0A 2016-11-07 2016-11-07 一种支付认证方法及系统 Pending CN106529948A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610977393.0A CN106529948A (zh) 2016-11-07 2016-11-07 一种支付认证方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610977393.0A CN106529948A (zh) 2016-11-07 2016-11-07 一种支付认证方法及系统

Publications (1)

Publication Number Publication Date
CN106529948A true CN106529948A (zh) 2017-03-22

Family

ID=58350104

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610977393.0A Pending CN106529948A (zh) 2016-11-07 2016-11-07 一种支付认证方法及系统

Country Status (1)

Country Link
CN (1) CN106529948A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109104432A (zh) * 2018-09-26 2018-12-28 深圳竹云科技有限公司 一种基于jwt协议的信息传递安全方法
CN109977643A (zh) * 2019-03-29 2019-07-05 安信数字(广州)科技有限公司 用户认证方法、装置和电子设备
CN110324361A (zh) * 2019-08-05 2019-10-11 中国工商银行股份有限公司 信息认证的方法、装置、计算设备和介质
CN111901321A (zh) * 2020-07-17 2020-11-06 云账户技术(天津)有限公司 一种认证鉴权方法、装置、电子设备和可读存储介质
CN114448729A (zh) * 2022-04-07 2022-05-06 中国信息通信研究院 工业互联网中客户端的身份认证方法和装置
CN114584328A (zh) * 2022-05-09 2022-06-03 武汉四通信息服务有限公司 Api接口的访问方法、计算机设备及计算机存储介质
CN116976891A (zh) * 2023-07-21 2023-10-31 杭州易景数通科技有限公司 一种金融数据安全管理系统、装置及其方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005276066A (ja) * 2004-03-26 2005-10-06 Oki Consulting Solutions Co Ltd 電子認証システムおよび方法
CN105187450A (zh) * 2015-10-08 2015-12-23 飞天诚信科技股份有限公司 一种基于认证设备进行认证的方法和设备
CN105847247A (zh) * 2016-03-21 2016-08-10 飞天诚信科技股份有限公司 一种认证系统及其工作方法
CN105871867A (zh) * 2016-04-27 2016-08-17 腾讯科技(深圳)有限公司 身份认证方法、系统及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005276066A (ja) * 2004-03-26 2005-10-06 Oki Consulting Solutions Co Ltd 電子認証システムおよび方法
CN105187450A (zh) * 2015-10-08 2015-12-23 飞天诚信科技股份有限公司 一种基于认证设备进行认证的方法和设备
CN105847247A (zh) * 2016-03-21 2016-08-10 飞天诚信科技股份有限公司 一种认证系统及其工作方法
CN105871867A (zh) * 2016-04-27 2016-08-17 腾讯科技(深圳)有限公司 身份认证方法、系统及设备

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109104432A (zh) * 2018-09-26 2018-12-28 深圳竹云科技有限公司 一种基于jwt协议的信息传递安全方法
CN109104432B (zh) * 2018-09-26 2020-06-09 深圳竹云科技有限公司 一种基于jwt协议的信息传递安全方法
CN109977643A (zh) * 2019-03-29 2019-07-05 安信数字(广州)科技有限公司 用户认证方法、装置和电子设备
CN110324361A (zh) * 2019-08-05 2019-10-11 中国工商银行股份有限公司 信息认证的方法、装置、计算设备和介质
CN111901321A (zh) * 2020-07-17 2020-11-06 云账户技术(天津)有限公司 一种认证鉴权方法、装置、电子设备和可读存储介质
CN114448729A (zh) * 2022-04-07 2022-05-06 中国信息通信研究院 工业互联网中客户端的身份认证方法和装置
CN114448729B (zh) * 2022-04-07 2022-06-07 中国信息通信研究院 工业互联网中客户端的身份认证方法和装置
CN114584328A (zh) * 2022-05-09 2022-06-03 武汉四通信息服务有限公司 Api接口的访问方法、计算机设备及计算机存储介质
CN114584328B (zh) * 2022-05-09 2022-08-02 武汉四通信息服务有限公司 Api接口的访问方法、计算机设备及计算机存储介质
CN116976891A (zh) * 2023-07-21 2023-10-31 杭州易景数通科技有限公司 一种金融数据安全管理系统、装置及其方法

Similar Documents

Publication Publication Date Title
CN106529948A (zh) 一种支付认证方法及系统
EP2624160B1 (en) Biometric authentication system, communication terminal device, biometric authentication device, and biometric authentication method
CN107800725B (zh) 一种数字证书远程在线管理装置及方法
CN105337977B (zh) 一种动态双向认证的安全移动通讯系统及其实现方法
CN105847247A (zh) 一种认证系统及其工作方法
CN106101136A (zh) 一种生物特征对比的认证方法及系统
CN109150535A (zh) 一种身份认证方法、设备、计算机可读存储介质及装置
CN102761557B (zh) 一种终端设备认证方法及装置
CN106713279A (zh) 一种视频终端身份认证系统
CN106789077A (zh) 一种实名认证方法及系统
US20150170144A1 (en) System and method for signing and authenticating secure transactions through a communications network
CN103580872A (zh) 一种用于密钥生成与管理的系统及方法
CN105119721B (zh) 一种基于智能卡的三因素远程身份认证方法
CN109088865A (zh) 用户身份认证方法、装置、可读存储介质和计算机设备
CN106921663A (zh) 基于智能终端软件/智能终端的身份持续认证系统及方法
CN112437068B (zh) 认证及密钥协商方法、装置和系统
CN102281138A (zh) 一种提高验证码安全性的方法和系统
CN106056419A (zh) 利用电子签名设备实现独立交易的方法、系统和设备
CN103391194B (zh) 对用户的安全设备进行解锁的方法和系统
CN109190343A (zh) 一种基于指纹识别的身份验证安全认证系统
CN105320865A (zh) 鉴权方法、采集装置、鉴权装置及系统、机柜及解锁方法
CN107784501A (zh) 一种安全的基于人脸识别的支付方法及系统
CN104077690A (zh) 一次性密码生成的方法、装置及认证方法、认证系统
WO2018148900A1 (zh) 基于指纹识别的校验方法、装置、以及交易系统
CN109327446A (zh) 身份认证方法、服务器、客户端及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170322

RJ01 Rejection of invention patent application after publication