CN105871867B - 身份认证方法、系统及设备 - Google Patents

身份认证方法、系统及设备 Download PDF

Info

Publication number
CN105871867B
CN105871867B CN201610272591.7A CN201610272591A CN105871867B CN 105871867 B CN105871867 B CN 105871867B CN 201610272591 A CN201610272591 A CN 201610272591A CN 105871867 B CN105871867 B CN 105871867B
Authority
CN
China
Prior art keywords
party application
intelligent hardware
information
hardware
server
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
CN201610272591.7A
Other languages
English (en)
Other versions
CN105871867A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201610272591.7A priority Critical patent/CN105871867B/zh
Publication of CN105871867A publication Critical patent/CN105871867A/zh
Priority to US15/771,511 priority patent/US10637668B2/en
Priority to PCT/CN2017/081894 priority patent/WO2017186100A1/zh
Application granted granted Critical
Publication of CN105871867B publication Critical patent/CN105871867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3265Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

Abstract

本发明公开了一种身份认证方法、系统及设备。所述方法包括:第三方应用客户端在获取到用于请求执行目标操作的操作指示后,向第三方应用服务器发送操作请求;第三方应用服务器从认证服务器请求获取待签名信息,通过第三方应用客户端向智能硬件转发待签名信息;智能硬件采用第三方应用对应的应用私钥对待签名信息作签名,得到第一签名结果并发送给认证服务器;认证服务器在采用第三方应用对应的应用公钥验证第一签名结果正确之后,向第三方应用服务器发送验证成功指示;第三方应用服务器执行目标操作。本发明通过智能硬件实现身份认证,无需用户手动输入供身份认证的相关信息,使得用户在进行需要身份认证的网络操作时,更加便捷高效。

Description

身份认证方法、系统及设备
技术领域
本发明实施例涉及互联网技术领域,特别涉及一种身份认证方法、系统及设备。
背景技术
随着互联网技术的发展,用户的日常活动与网络息息相关。
用户在进行一些网络操作时,需要对用户进行身份认证。身份认证也称为“身份验证”或“身份鉴别”,是指在计算机及计算机网络系统中确认操作者身份的过程,从而确定该用户是否具有对某种资源的访问和使用权限,进而使计算机和网络系统的访问策略能够可靠、有效地执行,防止攻击者假冒合法用户获得资源的访问权限,保证系统和数据的安全,以及授权访问者的合法利益。例如,对于登录操作,需要用户输入用户帐号和密码以完成登录流程;再例如,对于支付操作,需要用户输入支付密码以完成支付流程。
由于现有的身份认证方式需要用户手动输入供身份认证的相关信息(如用户帐号和密码),因此导致用户在进行需要身份认证的网络操作时,操作较为复杂低效。
发明内容
为了解决现有的身份认证方式需要用户手动输入供身份认证的相关信息,因此导致用户在进行需要身份认证的网络操作时,操作较为复杂低效的问题,本发明实施例提供了一种认证方法、系统及设备。所述技术方案如下:
第一方面,提供了一种身份认证方法,所述方法包括:
第三方应用客户端在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
所述第三方应用服务器从认证服务器请求获取待签名信息,通过所述第三方应用客户端向智能硬件转发所述待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器;
所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,若所述第一签名结果正确,则向所述第三方应用服务器发送验证成功指示;
所述第三方应用服务器在接收到所述验证成功指示之后,执行所述目标操作。
第二方面,提供了一种身份认证方法,应用于第三方应用客户端中,所述方法包括:
在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
接收所述第三方应用服务器发送的待签名信息,所述待签名信息由所述第三方应用服务器在接收到所述操作请求之后从认证服务器请求获取,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
向智能硬件转发所述待签名信息;
接收所述智能硬件发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到;
通过所述第三方应用服务器向所述认证服务器透传所述第一签名结果,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作。
第三方面,提供了一种身份认证方法,应用于第三方应用服务器中,所述方法包括:
接收第三方应用客户端发送的操作请求,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
从认证服务器请求获取待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
通过所述第三方应用客户端向智能硬件转发所述待签名信息;
接收所述第三方应用客户端发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到,并由所述智能硬件发送给所述第三方应用客户端;
将所述第一签名结果透传给所述认证服务器;
接收所述认证服务器发送的验证成功指示,所述验证成功指示由所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果正确的情况下发送;
在接收到所述验证成功指示之后,执行所述目标操作。
第四方面,提供了一种身份认证方法,应用于智能硬件中,所述方法包括:
接收第三方应用客户端发送的待签名信息,所述待签名信息由第三方应用服务器在接收到所述第三方应用客户端发送的操作请求之后从认证服务器获取,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果;
依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作。
第五方面,提供了一种身份认证方法,应用于认证服务器中,所述方法包括:
在接收到第三方应用服务器发送的鉴权请求之后,向所述第三方应用服务器发送待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;所述鉴权请求由所述第三方应用服务器在接收到第三方应用客户端发送的操作请求之后向所述认证服务器发送,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
接收智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器透传的第一签名结果,所述第一签名结果由所述智能硬件在接收到所述第三方应用服务器发送的所述待签名信息之后,采用所述第三方应用对应的应用私钥对所述待签名信息作签名得到;
采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确;
若所述第一签名结果正确,则向所述第三方应用服务器发送验证成功指示,以触发所述第三方应用服务器执行所述目标操作。
第六方面,提供了一种身份认证系统,所述系统包括:第三方应用客户端、第三方应用服务器、智能硬件和认证服务器;
所述第三方应用客户端,用于在获取到用于请求执行目标操作的操作指示之后,向所述第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
所述第三方应用服务器,用于从所述认证服务器请求获取待签名信息,通过所述第三方应用客户端向所述智能硬件转发所述待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
所述智能硬件,用于采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器;
所述认证服务器,用于采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,若所述第一签名结果正确,则向所述第三方应用服务器发送验证成功指示;
所述第三方应用服务器,还用于在接收到所述验证成功指示之后,执行所述目标操作。
第七方面,提供了一种第三方应用客户端,所述第三方应用客户端包括:
第一请求发送模块,用于在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
第一信息接收模块,用于接收所述第三方应用服务器发送的待签名信息,所述待签名信息由所述第三方应用服务器在接收到所述操作请求之后从认证服务器请求获取,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
第一信息发送模块,用于向智能硬件转发所述待签名信息;
第一结果接收模块,用于接收所述智能硬件发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到;
第一透传模块,用于通过所述第三方应用服务器向所述认证服务器透传所述第一签名结果,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作。
第八方面,提供了一种第三方应用服务器,所述第三方应用服务器包括:
第二请求接收模块,用于接收第三方应用客户端发送的操作请求,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
信息获取模块,用于从认证服务器请求获取待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
信息转发模块,用于通过所述第三方应用客户端向智能硬件转发所述待签名信息;
第二结果接收模块,用于接收所述第三方应用客户端发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到,并由所述智能硬件发送给所述第三方应用客户端;
第三透传模块,用于将所述第一签名结果透传给所述认证服务器;
指示接收模块,用于接收所述认证服务器发送的验证成功指示,所述验证成功指示由所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果正确的情况下发送;
第一操作执行模块,用于在接收到所述验证成功指示之后,执行所述目标操作。
第九方面,提供了一种智能硬件,所述智能硬件包括:
第四信息接收模块,用于接收第三方应用客户端发送的待签名信息,所述待签名信息由第三方应用服务器在接收到所述第三方应用客户端发送的操作请求之后从认证服务器获取,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
第一信息签名模块,用于采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果;
第五透传模块,用于依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作。
第十方面,提供了一种认证服务器,所述认证服务器包括:
第三信息发送模块,用于在接收到第三方应用服务器发送的鉴权请求之后,向所述第三方应用服务器发送待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;所述鉴权请求由所述第三方应用服务器在接收到第三方应用客户端发送的操作请求之后向所述认证服务器发送,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
第三结果接收模块,用于接收智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器透传的第一签名结果,所述第一签名结果由所述智能硬件在接收到所述第三方应用服务器发送的所述待签名信息之后,采用所述第三方应用对应的应用私钥对所述待签名信息作签名得到;
第一结果验证模块,用于采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确;
指示发送模块,用于在所述第一签名结果正确的情况下向所述第三方应用服务器发送验证成功指示,以触发所述第三方应用服务器执行所述目标操作。
本发明实施例提供的技术方案带来的有益效果包括:
通过智能硬件对待签名信息作签名得到第一签名结果,认证服务器在验证第一签名结果正确的情况下指示第三方应用服务器执行目标操作;解决了现有的身份认证方式需要用户手动输入供身份认证的相关信息,因此导致用户在进行需要身份认证的网络操作时,操作较为复杂低效的问题;由于通过智能硬件实现身份认证,无需用户手动输入供身份认证的相关信息,使得用户在进行需要身份认证的网络操作时,更加便捷高效。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的实施环境的示意图;
图2是本发明一个实施例提供的身份认证方法的流程图;
图3是本发明另一实施例提供的身份认证方法的流程图;
图4是本发明另一实施例提供的身份认证方法的流程图;
图5是本发明另一实施例提供的身份认证方法的流程图;
图6是本发明一个实施例提供的注册绑定方法的流程图;
图7是本发明另一实施例提供的注册绑定方法的流程图;
图8是本发明一个实施例提供的注销方法的流程图;
图9是本发明一个实施例提供的解绑方法的流程图;
图10是本发明另一实施例提供的解绑方法的流程图;
图11是本发明一个实施例提供的挂失方法的流程图;
图12是本发明另一实施例提供的挂失方法的流程图;
图13是本发明一个实施例提供的身份认证系统的框图;
图14是本发明一个实施例提供的第三方应用客户端的框图;
图15是本发明一个实施例提供的第三方应用服务器的框图;
图16是本发明一个实施例提供的智能硬件的框图;
图17是本发明一个实施例提供的认证服务器的框图;
图18是本发明一个实施例提供的电子设备的结构示意图;
图19是本发明一个实施例提供的服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图1,其示出了本发明一个实施例提供的实施环境的示意图,该实施环境包括:智能硬件120、第三方应用客户端140、第三方应用服务器160和认证服务器180。
智能硬件120是具有数字签名、密钥管理功能,用于提供身份认证的硬件设备。智能硬件120一般采用蓝牙或者NFC(Near Field Communication,近场通信)接口。例如,智能硬件120可以是诸如智能手环、智能手表之类的可穿戴设备。
第三方应用客户端140也可称为第三方应用中间件,是指第三方APP(Application,应用)搭载的驱动或者控件。第三方应用客户端140是用户登录、认证的主入口。第三方应用客户端140可由系统平台提供,也可由第三方应用商提供。第三方应用客户端140可用于提供以下服务:1、第三方应用中的用户帐号的注册申请和登录;2、记录用户默认的认证方式;3、远程查看支付记录;4、管理已授权的智能硬件120。第三方应用客户端140可安装运行于诸如手机、平板电脑之类的终端中。
第三方应用服务器160是第三方应用客户端140既有或新建的后台管理系统,用于负责第三方应用服务器160与认证服务器180之间的数据转发或路由。第三方应用服务器160可由系统平台提供,也可由第三方应用商提供。第三方应用服务器160可用于提供以下服务:1、在第三方应用客户端140和认证服务器180之间转发消息;2、管理第三方应用中的用户帐号,包括维护帐号状态(如停用、注销等);3、处理认证服务器180返回的数据;4、有效认证数据存储。
认证服务器180用于向被认证方(即智能硬件120、第三方应用客户端140和第三方应用服务器160的统称)提供一套配置选项,被认证方可通过相关协议的设置,管理与应用帐户有关的参数。认证服务器180可以是云平台服务器。为了保持用户体验的一致性,认证服务器180应支持必要功能,包括:注册绑定、登录、支付、解绑和挂失。认证服务器180可实现以下功能:1、智能硬件120注册绑定;2、认证授权被认证方;3、关键信息安全存储;4、智能硬件120的标识发行;5、多应用管理;6、智能硬件120的状态管理与远程配置。
此外,智能硬件120可通过诸如蓝牙、NFC之类的近距离无线通信技术与第三方应用客户端140通信,第三方应用客户端140通过无线或有线网络与第三方应用服务器160通信,第三方应用服务器160通过无线或有线网络与认证服务器180通信。
为了便于理解,对本文中涉及的一些名词作介绍和说明。
1、硬件证书
硬件证书是指用于标识智能硬件的身份的唯一数字证书。硬件证书可符合X.509标准的DER(Distinguished Encoding Rules,可辨别编码规则)编码格式。每一个智能硬件在预个人化时均会写入相应的硬件证书。硬件证书是由认证服务器的CA(CertificationAuthority,证书管理机构)采用系统根证书签发、存放于智能硬件中的证书,用于确保智能硬件的真实性。
智能硬件在生产时生成硬件公钥、硬件私钥、智能硬件的标识。智能硬件的硬件证书同时在生产时预植到智能硬件中,内容包括硬件公钥和智能硬件的标识。
2、智能硬件的标识
智能硬件的标识也可称为硬件序列号,可以H-ID表示。智能硬件的标识用于唯一标识智能硬件,在智能硬件出厂时预植到智能硬件中。
示例性地,智能硬件的标识共16位,格式如下:
第1至2位为产品型号,表示智能硬件的产品类型,范围从“01”至“99”;
第3至4位为厂商编号,表示智能硬件的生产厂商的编号,范围从“01”至“99”;
第5至6位为生产年份,取自然年的后两位,如:2016年,则取值为“16”;
第7至8位为生产月份,范围从“01”至“12”;
第9至16位为自然序列号,范围从“00000001”至“99999999”,满足每月1亿台生产量。
3、应用密钥索引
应用密钥索引由智能硬件生成,用于索引智能硬件内部生成的应用密钥。应用密钥索引可以Keyhandle表示,其长度可变从0x00至0xff。应用密钥索引在注册绑定第三方应用时生成,在登录、支付等流程中由智能硬件进行验证。
4、第三方应用的标识
第三方应用的标识用于唯一标识第三方应用,是指应用商提供的不同种类的应用的标识符,可以AppID表示。
请参考图2,其示出了本发明一个实施例提供的身份认证方法的流程图,该方法可用于图1所示的实施环境中。该方法可以包括如下几个步骤。
步骤201,第三方应用客户端在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求,操作请求用于请求第三方应用服务器执行目标操作。
相应地,第三方应用服务器接收第三方应用客户端发送的操作请求。
步骤202,第三方应用服务器从认证服务器请求获取待签名信息。
步骤203,第三方应用服务器通过第三方应用客户端向智能硬件转发待签名信息。
相应地,智能硬件接收第三方应用服务器通过第三方应用客户端转发的待签名信息。
步骤204,智能硬件采用第三方应用对应的应用私钥对待签名信息作签名,得到第一签名结果。
步骤205,智能硬件依次通过第三方应用客户端和第三方应用服务器将第一签名结果透传给认证服务器。
相应地,认证服务器接收智能硬件依次通过第三方应用客户端和第三方应用服务器透传的第一签名结果。
步骤206,认证服务器采用第三方应用对应的应用公钥验证第一签名结果是否正确。
步骤207,若第一签名结果正确,则认证服务器向第三方应用服务器发送验证成功指示。
相应地,第三方应用服务器接收认证服务器发送的验证成功指示。
步骤208,第三方应用服务器在接收到验证成功指示之后,执行目标操作。
综上所述,本实施例提供的方法,通过智能硬件对待签名信息作签名得到第一签名结果,认证服务器在验证第一签名结果正确的情况下指示第三方应用服务器执行目标操作;解决了现有的身份认证方式需要用户手动输入供身份认证的相关信息,因此导致用户在进行需要身份认证的网络操作时,操作较为复杂低效的问题;由于通过智能硬件实现身份认证,无需用户手动输入供身份认证的相关信息,使得用户在进行需要身份认证的网络操作时,更加便捷高效。
通过智能硬件实现身份认证之前,需要完成注册绑定流程,以建立智能硬件与第三方应用的用户帐号之间的绑定关系。注册绑定流程的具体过程可参见下述图6和图7所示实施例中的介绍和说明。
在注册绑定流程中,智能硬件生成第三方应用对应的应用公钥和应用私钥,将应用公钥发送给认证服务器,并将应用私钥在本地保存。可选地,智能硬件还生成应用密钥索引,应用密钥索引用于索引第三方应用对应的应用公钥和应用私钥。智能硬件中存储有第三方应用对应的应用私钥和应用密钥索引之间的绑定关系。
在完成注册绑定流程之后,认证服务器中存储有第一绑定关系,该第一绑定关系至少包括智能硬件的标识、用户帐号和第三方应用对应的应用公钥之间的绑定关系。可选地,第一绑定关系中还包括应用密钥索引。可选地,第一绑定关系中还包括第三方应用的标识。
在完成注册绑定流程之后,第三方应用服务器中存储有第二绑定关系,该第二绑定关系至少包括智能硬件的标识和用户帐号之间的绑定关系。可选地,第二绑定关系中还包括应用密钥索引。
在完成注册绑定流程之后,便可通过智能硬件实现身份认证,实现快捷登录和快捷支付。
请参考图3,其示出了本发明另一实施例提供的身份认证方法的流程图,该方法可用于图1所示的实施环境中。该方法可以包括如下几个步骤。
步骤301,第三方应用客户端在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求。
操作请求用于请求第三方应用服务器执行目标操作。目标操作是指需要对用户进行身份认证的网络操作。例如,目标操作为登录操作或者支付操作。其中,登录操作是指登录用户在第三方应用中注册的用户帐号;支付操作是指通过第三方应用向目标对象进行网络支付。上述用于请求执行目标操作的操作指示由用户触发。例如,用户在第三方应用客户端提供的登录界面中点击第一操作控件,触发用于请求执行登录操作的操作指示;再例如,用户在第三方应用客户端提供的支付界面中点击第二操作控件,触发用于请求执行支付操作的操作指示。
可选地,在目标操作为登录操作的情况下,第三方应用客户端在获取到用于请求执行登录操作的操作指示之后,向智能硬件发送标识获取请求,标识获取请求用于请求获取智能硬件的标识;智能硬件在接收到第三方应用客户端发送的标识获取请求之后,将智能硬件的标识发送给第三方应用客户端;第三方应用客户端接收智能硬件发送的智能硬件的标识,向第三方应用服务器发送登录请求,登录请求中包括登录请求信息和智能硬件的标识。其中,登录请求信息用于请求第三方应用服务器登录在第三方应用中的目标用户帐号,该目标用户帐号是第三方应用中与智能硬件的标识绑定的用户帐号。
可选地,在目标操作为支付操作的情况下,第三方应用客户端在获取到用于请求执行支付操作的操作指示之后,向第三方应用服务器发送支付请求,支付请求中包括支付请求信息,支付请求信息用于请求第三方应用服务器完成目标订单的支付流程,该目标订单是在请求执行支付操作之前已生成并发送给第三方应用服务器的订单。
第三方应用服务器接收到第三方应用客户端发送的操作请求之后,从认证服务器请求获取待签名信息,具体包括如下步骤302至步骤306。
步骤302,第三方应用服务器获取智能硬件的标识。
在目标操作为登录操作的情况下,智能硬件的标识由第三方应用客户端提供给第三方应用服务器,例如在登录请求中携带智能硬件的标识。
在目标操作为支付操作的情况下,由于第三方应用客户端中的用户帐号已经处于登录状态,第三方应用服务器可根据第二绑定关系,查询获取与该用户帐号绑定的智能硬件标识。上述第二绑定关系由第三方应用服务器在注册绑定流程中存储,注册绑定流程参见下文介绍和说明。当然,在其它可能的实施方式中,智能硬件的标识也可由第三方应用客户端提供给第三方应用服务器,例如在支付请求中携带智能硬件的标识。
步骤303,第三方应用服务器向认证服务器发送鉴权请求。
鉴权请求中至少包括鉴权请求信息和智能硬件的标识,鉴权请求信息用于请求认证服务器生成待签名信息。
可选地,鉴权请求中还包括第三方应用的标识。由于一个智能硬件可与多种不同的第三方应用绑定,也即与多种不同的第三方应用中的用户帐号绑定,因此为了区分第三方应用,第三方应用服务器将第三方应用的标识添加至鉴权请求中。
可选地,在目标操作为支付操作的情况下,鉴权请求中还包括订单信息。订单信息可包括订单号和交易关键信息,如交易金额、商户名称、交易时间、物品名称、物品数量等。
相应地,认证服务器接收第三方应用服务器发送的鉴权请求。
步骤304,认证服务器根据智能硬件的标识,获取智能硬件的可用状态。
可用状态可包括绑定状态、未绑定状态、挂失状态。绑定状态是指存在与智能硬件的标识相绑定的该第三方应用中的用户帐号。未绑定状态是指不存在与智能硬件的标识相绑定的该第三方应用中的用户帐号。挂失状态是指不存在与智能硬件的标识相绑定的所有第三方应用中的用户帐号。如果智能硬件的可用状态为绑定状态,则指示智能硬件可用;如果智能硬件的可用状态为未绑定状态或者挂失状态,则指示智能硬件不可用。
步骤305,若智能硬件的可用状态指示智能硬件可用,则认证服务器生成待签名信息。
可选地,待签名信息包括挑战随机数(challenge parameter),挑战随机数由认证服务器根据预设规则随机生成。可选地,待签名信息还包括应用参数(applicationparameter),应用参数与第三方应用相对应。
在目标操作为登录操作的情况下,待签名信息可包括挑战随机数和应用参数。在目标操作为支付操作的情况下,待签名信息可包括挑战随机数、应用参数、订单信息、时间戳等。
步骤306,认证服务器向第三方应用服务器发送待签名信息。
相应地,第三方应用服务器接收认证服务器发送的待签名信息。
此外,若智能硬件的可用状态指示智能硬件不可用,则认证服务器不执行任何操作,或者向第三方应用服务器发送用于指示智能硬件不可用的反馈信息。第三方应用服务器在超过预定时间未收到待签名信息或者接收到上述反馈信息之后,向第三方应用客户端反馈失败指示。
步骤307,第三方应用服务器通过第三方应用客户端向智能硬件转发待签名信息。
此步骤中,第三方应用客户端透传待签名信息。
相应地,智能硬件接收第三方应用服务器通过第三方应用客户端转发的待签名信息。
步骤308,智能硬件生成确认提示信息。
确认提示信息用于询问是否确认执行目标操作。例如,在目标操作为登录操作的情况下,确认提示信息可用于询问用户是否确认登录第三方应用;再例如,在目标操作为支付操作的情况下,确认提示信息可用于询问用户是否确认支付目标订单。在本实施例中,对确认提示信息的提示方式不作限定,例如显示提示、声光提示、震动提示或者语音提示等。
步骤309,智能硬件获取对应于确认提示信息的确认指示。
用户获取到确认提示信息之后,若确认执行目标操作,则触发确认指示。例如,用户通过按确认键、刷指纹、刷虹膜等方式触发确认指示。
可选地,确认指示由用户通过生物信息触发。也即,智能硬件采集用户的生物信息,并在验证采集的生物信息通过的情况下,确认获取到对应于确认提示信息的确认指示。其中,生物信息包括但不限于:指纹、虹膜、视网膜、基因、声音、人脸、手掌几何、静脉、步态和笔迹中的任意一种。由于用户的生物信息具有唯一性,通过上述方式,可实现对操作者的身份验证,避免因智能硬件被他人恶意获取后发生误确认的情况,进一步提高安全性。
智能硬件在获取到对应于确认提示信息的确认指示之后,执行下述步骤310,否则若未获取到确认指示则不执行下述步骤310。
步骤310,智能硬件采用第三方应用对应的应用私钥对待签名信息作签名,得到第一签名结果。
第三方应用对应的应用私钥由智能硬件在注册绑定流程中生成。
可选地,第三方应用服务器从认证服务器请求获取待签名信息之后,还执行如下步骤:第三方应用服务器根据智能硬件的标识或者用户帐号,查询第二绑定关系获取对应的应用密钥索引,通过第三方应用客户端向智能硬件转发应用密钥索引。智能硬件根据应用密钥索引,获取第三方应用对应的应用私钥。其中,第二绑定关系包括智能硬件的标识、用户帐号和应用密钥索引之间的绑定关系,第二绑定关系由第三方应用服务器在注册绑定流程中存储。应用密钥索引由智能硬件在注册绑定流程中生成,用于索引第三方应用对应的应用公钥和应用私钥。智能硬件通过应用密钥索引检测是否存在相应的应用私钥,可实现对第三方应用服务器进行验证,提高安全性。
步骤311,智能硬件依次通过第三方应用客户端和第三方应用服务器将第一签名结果透传给认证服务器。
相应地,认证服务器接收智能硬件依次通过第三方应用客户端和第三方应用服务器透传的第一签名结果。
步骤312,认证服务器采用第三方应用对应的应用公钥验证第一签名结果是否正确。
第三方应用对应的应用公钥由智能硬件在注册绑定流程中生成。认证服务器在注册绑定流程中存储第一绑定关系,该第一绑定关系至少包括智能硬件的标识、用户帐号和第三方应用对应的应用公钥之间的绑定关系。认证服务器查询第一绑定关系,获取与智能硬件的标识绑定的第三方应用对应的应用公钥,而后采用该第三方应用对应的应用公钥对第一签名结果验证。
步骤313,若第一签名结果正确,则认证服务器向第三方应用服务器发送验证成功指示。
相应地,第三方应用服务器接收认证服务器发送的验证成功指示。
步骤314,第三方应用服务器在接收到验证成功指示之后,执行目标操作。
在目标操作为登录操作的情况下,第三方应用服务器将与智能硬件的标识绑定的用户帐号从非登录态置为登录态,实现通过智能硬件登录,无需用户输入用户帐号和密码。
在目标操作为支付操作的情况下,第三方应用服务器完成上述订单信息所对应的目标订单的支付流程,实现通过智能硬件支付,无需用户输入支付密码。
可选地,上述步骤310可由如下步骤替代实现:智能硬件获取计数器的数值,计数器用于统计第三方应用对应的应用私钥的引用计数;智能硬件采用第三方应用对应的应用私钥,对待签名信息和计数器的数值作签名,得到第一签名结果。上述步骤311可由如下步骤替代实现:智能硬件依次通过第三方应用客户端和第三方应用服务器,将第一签名结果和计数器的数值透传给认证服务器。相应地,认证服务器接收智能硬件依次通过第三方应用客户端和第三方应用服务器透传的第一签名结果和计数器的数值。
综上所述,本实施例提供的方法,通过智能硬件对待签名信息作签名得到第一签名结果,认证服务器在验证第一签名结果正确的情况下指示第三方应用服务器执行目标操作;解决了现有的身份认证方式需要用户手动输入供身份认证的相关信息,因此导致用户在进行需要身份认证的网络操作时,操作较为复杂低效的问题;由于通过智能硬件实现身份认证,无需用户手动输入供身份认证的相关信息,使得用户在进行需要身份认证的网络操作时,更加便捷高效。
请参考图4,其示出了本发明另一实施例提供的身份认证方法的流程图。在本实施例中,目标操作为登录操作,对登录流程进行介绍和说明。该方法可以包括如下几个步骤。
步骤401,用户在第三方应用客户端中选择智能硬件方式登录。
相应地,第三方应用客户端获取用于请求执行登录操作的操作指示。
步骤402,第三方应用客户端在获取上述操作指示之后,向智能硬件发送标识获取请求。
相应地,智能硬件接收第三方应用客户端发送的标识获取请求。
步骤403,智能硬件将智能硬件的标识发送给第三方应用客户端。
相应地,第三方应用客户端接收智能硬件发送的智能硬件的标识。
步骤404,第三方应用客户端向第三方应用服务器发送登录请求,登录请求中包括登录请求信息和智能硬件的标识。
相应地,第三方应用服务器接收第三方应用客户端发送的登录请求。
步骤405,第三方应用服务器检测是否存在与智能硬件的标识绑定的用户帐号,若存在,则向认证服务器发送鉴权请求,鉴权请求中包括鉴权请求信息、智能硬件的标识和第三方应用的标识。
相应地,认证服务器接收第三方应用服务器发送的鉴权请求。
步骤406,认证服务器根据智能硬件的标识,获取智能硬件的可用状态。
步骤407,若智能硬件的可用状态指示智能硬件可用,则认证服务器向第三方应用服务器发送待签名信息,待签名信息包括挑战随机数和应用参数。
相应地,第三方应用服务器接收认证服务器发送的待签名信息。
步骤408,第三方应用服务器通过智能硬件的标识,查询第二绑定关系获取对应的应用密钥索引。
步骤409,第三方应用服务器向第三方应用客户端发送待签名信息和应用密钥索引。
相应地,第三方应用客户端接收第三方应用服务器发送的待签名信息和应用密钥索引。
步骤410,第三方应用客户端向智能硬件发送待签名信息和应用密钥索引。
相应地,智能硬件接收第三方应用客户端发送的待签名信息和应用密钥索引。
步骤411,智能硬件生成确认提示信息。
步骤412,智能硬件获取对应于确认提示信息的确认指示。
步骤413,智能硬件通过应用密钥索引,查询第三绑定关系获取对应的应用私钥,采用应用私钥对待签名信息和计数器的数值作签名,得到第一签名结果。
步骤414,智能硬件依次通过第三方应用客户端和第三方应用服务器,将第一签名结果和计数器的数值透传给认证服务器。
相应地,认证服务器接收智能硬件依次通过第三方应用客户端和第三方应用服务器透传的第一签名结果和计数器的数值。
步骤415,认证服务器通过智能硬件的标识和第三方应用的标识,查询第一绑定关系获取对应的应用密钥索引,并通过应用密钥索引进一步获取对应的应用公钥,采用应用公钥对第一签名结果验签。
步骤416,若验签成功,则认证服务器向第三方应用服务器发送验证成功指示和智能硬件的标识。
相应地,第三方应用服务器接收认证服务器发送的验证成功指示和智能硬件的标识。
步骤417,第三方应用服务器通过智能硬件的标识,查询第二绑定关系获取对应的用户帐号,将该用户帐号从非登录态置为登录态,向第三方应用客户端发送登录成功信息。
登录成功信息中可携带用户帐号。
相应地,第三方应用客户端接收第三方应用服务器发送的登录成功信息。
步骤418,第三方应用客户端将该用户帐号从非登录态置为登录态。
步骤419,第三方应用客户端向用户显示登录成功页面。
通过本实施例提供的方法,用户可通过智能硬件完成帐号登录,无需输入用户帐号和密码,登录过程便捷高效;且由于智能硬件相较于第三方应用客户端的安全性更高,也保证了登录过程的安全性。
请参考图5,其示出了本发明另一实施例提供的身份认证方法的流程图。在本实施例中,目标操作为支付操作,对支付流程进行介绍和说明。该方法可以包括如下几个步骤。
步骤501,用户在第三方应用客户端中选择智能硬件方式支付。
相应地,第三方应用客户端获取用于请求执行支付操作的操作指示。
步骤502,第三方应用客户端在获取上述操作指示之后,向第三方应用服务器发送支付请求,支付请求中包括支付请求信息。
相应地,第三方应用服务器接收第三方应用客户端发送的支付请求。
步骤503,第三方应用服务器向认证服务器发送鉴权请求,鉴权请求中包括鉴权请求信息、智能硬件的标识、第三方应用的标识和订单信息。
相应地,认证服务器接收第三方应用服务器发送的鉴权请求。
步骤504,认证服务器根据智能硬件的标识,获取智能硬件的可用状态。
步骤505,若智能硬件的可用状态指示智能硬件可用,则认证服务器向第三方应用服务器发送待签名信息,待签名信息包括挑战随机数、应用参数、订单信息和时间戳。
相应地,第三方应用服务器接收认证服务器发送的待签名信息。
步骤506,第三方应用服务器通过智能硬件的标识或者用户帐号,查询第二绑定关系获取对应的应用密钥索引。
步骤507,第三方应用服务器向第三方应用客户端发送待签名信息和应用密钥索引。
相应地,第三方应用客户端接收第三方应用服务器发送的待签名信息和应用密钥索引。
步骤508,第三方应用客户端向智能硬件发送待签名信息和应用密钥索引。
相应地,智能硬件接收第三方应用客户端发送的待签名信息和应用密钥索引。
步骤509,智能硬件生成确认提示信息。
其中,确认提示信息中可包括从订单信息中提取的交易关键信息,如交易金额、商户名称、交易时间等。
步骤510,智能硬件获取对应于确认提示信息的确认指示。
可选地,如果交易金额大于预设值,可增加第二验证措施,如提示用户输入密码,该密码的形式可以是数字、指纹、虹膜等。
步骤511,智能硬件通过应用密钥索引,查询第三绑定关系获取对应的应用私钥,采用应用私钥对待签名信息和计数器的数值作签名,得到第一签名结果。
本步骤中的待签名信息可以仅包括挑战随机数和应用参数,也即智能硬件采用应用私钥对挑战随机数、应用参数和计数器的数值作签名。
步骤512,智能硬件依次通过第三方应用客户端和第三方应用服务器,将第一签名结果和计数器的数值透传给认证服务器。
相应地,认证服务器接收智能硬件依次通过第三方应用客户端和第三方应用服务器透传的第一签名结果和计数器的数值。
步骤513,认证服务器通过智能硬件的标识和第三方应用的标识,查询第一绑定关系获取对应的应用密钥索引,并通过应用密钥索引进一步获取对应的应用公钥,采用应用公钥对第一签名结果验签。
步骤514,若验签成功,则认证服务器向第三方应用服务器发送验证成功指示和订单信息。
相应地,第三方应用服务器接收认证服务器发送的验证成功指示和订单信息。
步骤515,第三方应用服务器完成上述订单信息所对应的目标订单的支付流程,向第三方应用客户端发送支付成功信息。
相应地,第三方应用客户端接收第三方应用服务器发送的支付成功信息。
步骤516,第三方应用客户端从未支付状态变为支持成功状态。
步骤517,第三方应用客户端向用户显示支付成功页面。
通过本实施例提供的方法,用户可通过智能硬件完成订单支付,无需输入支付密码,登录过程便捷高效;且由于智能硬件相较于第三方应用客户端的安全性更高,也保证了支付过程的安全性。
下面,通过图6所示实施例,对注册绑定流程进行介绍和说明。
请参考图6,其示出了本发明一个实施例提供的注册绑定方法的流程图,该方法可用于图1所示的实施环境中。该方法可以包括如下几个步骤。
步骤601,第三方应用客户端在获取到用于请求绑定智能硬件的操作指示之后,获取智能硬件的标识。
第三方应用客户端在获取到用于请求绑定智能硬件的操作指示之后,向智能硬件发送标识获取请求,标识获取请求用于请求获取智能硬件的标识;智能硬件在接收到第三方应用客户端发送的标识获取请求之后,将智能硬件的标识发送给第三方应用客户端;第三方应用客户端接收智能硬件发送的智能硬件的标识。
在实际应用中,对于一种第三方应用,支持一个智能硬件可与该种第三方应用中的一个用户帐号绑定;而对于多种不同的第三方应用,支持一个智能硬件可与多种不同的第三方应用绑定,也即与多种不同的第三方应用中的用户帐号绑定。
步骤602,第三方应用客户端向第三方应用服务器发送绑定请求。
绑定请求中包括绑定请求信息和智能硬件的标识,绑定请求信息用于请求建立智能硬件与登录第三方应用客户端的用户帐号之间的绑定关系。
相应地,第三方应用服务器接收第三方应用客户端发送的绑定请求。
步骤603,第三方应用服务器向认证服务器转发绑定请求。
绑定请求中至少包括绑定请求信息和智能硬件的标识。
相应地,认证服务器接收第三方应用服务器转发的绑定请求。
可选地,第三方应用服务器在绑定请求请求中添加第三方应用的标识之后,将绑定请求发送给认证服务器。
步骤604,认证服务器在接收到绑定请求之后,依次通过第三方应用服务器和第三方应用客户端向智能硬件透传注册请求。
其中,注册请求用于指示智能硬件生成第三方应用对应的应用密钥。可选地,注册请求中包括注册请求信息和应用参数。注册请求信息用于指示智能硬件生成第三方应用对应的应用密钥。应用参数与第三方应用相对应。可选地,注册请求中还包括挑战随机数,挑战随机数由认证服务器根据预设规则随机生成。
相应地,智能硬件依次通过第三方应用服务器和第三方应用客户端接收认证服务器透传的注册请求。
步骤605,智能硬件在接收到注册请求之后,生成第三方应用对应的应用公钥和应用私钥。
步骤606,智能硬件采用智能硬件对应的硬件私钥对第三方应用对应的应用公钥作签名,得到第二签名结果。
步骤607,智能硬件依次通过第三方应用客户端和第三方应用服务器向认证服务器透传待验证信息。
待验证信息包括第三方应用对应的应用公钥、第二签名结果和智能硬件的硬件证书,智能硬件的硬件证书包括智能硬件对应的硬件公钥和智能硬件的标识。
相应地,认证服务器依次通过第三方应用客户端和第三方应用服务器接收智能硬件透传的待验证信息。
可选地,智能硬件在接收到注册请求之后,还执行如下步骤:智能硬件生成应用密钥索引,应用密钥索引用于索引第三方应用对应的应用公钥和应用私钥;智能硬件依次通过第三方应用客户端和第三方应用服务器将应用密钥索引发送给认证服务器。可选地,应用密钥索引可采用智能硬件对应的硬件私钥作签名后发送给认证服务器。认证服务器向智能硬件发送的注册请求中可包括应用参数,智能硬件可通过如下步骤生成应用密钥索引:智能硬件生成应用参数和第三方应用对应的应用私钥的摘要值;智能硬件生成随机数;智能硬件根据摘要值和随机数生成应用密钥索引。
步骤608,认证服务器在采用根证书公钥验证智能硬件的硬件证书合法的情况下,从智能硬件的硬件证书中提取智能硬件对应的硬件公钥。
步骤609,认证服务器采用智能硬件对应的硬件公钥验证第二签名结果是否正确。
步骤610,若第二签名结果正确,则认证服务器存储第一绑定关系。
第一绑定关系包括智能硬件的标识、用户帐号和第三方应用对应的应用公钥之间的绑定关系。可选地,第一绑定关系中还包括第三方应用的标识。
步骤611,认证服务器向第三方应用服务器发送智能硬件的标识。
相应地,第三方应用服务器接收认证服务器发送的智能硬件的标识。
步骤612,第三方应用服务器存储第二绑定关系。
第二绑定关系包括智能硬件的标识和用户帐号之间的绑定关系。
此外,在认证服务器还获取到应用密钥索引的情况下,认证服务器存储的第一绑定关系包括智能硬件的标识、用户帐号、应用密钥索引和第三方应用对应的应用公钥之间的绑定关系。认证服务器在验证第二签名结果正确之后,还向第三方应用服务器发送应用密钥索引。相应地,第三方应用服务器存储的第二绑定关系包括智能硬件的标识、用户帐号和应用密钥索引之间的绑定关系。
本实施例提供的方法,由于硬件证书是由认证服务器采用系统根证书签发且存放于智能硬件中的证书,以系统根证书作为信任根,用来认证智能硬件以确保智能硬件的真实性,并且保障应用公钥的安全传输,有利于实现更加安全和稳定的系统。
请参考图7,其示出了本发明另一实施例提供的注册绑定方法的流程图。该方法可以包括如下几个步骤。
步骤701,用户在第三方应用客户端上使用用户帐号和密码登录。
步骤702,第三方应用客户端将用户登录信息发送给第三方应用服务器,用户登录信息包括用户帐号和密码。
相应地,第三方应用服务器接收第三方应用客户端发送的用户登录信息。
步骤703,第三方应用服务器验证用户登录信息通过后,向第三方应用客户端返回登录成功信息,第三方应用客户端显示用户已进入登录状态。
步骤704,第三方应用客户端登录成功后,用户在第三方应用客户端中选择绑定智能硬件。
相应地,第三方应用客户端获取用于请求绑定智能硬件的操作指示。
步骤705,第三方应用客户端搜索附近的智能硬件,显示设备列表,用户从设备列表中选择自身对应的智能硬件。
其中,设备列表中包含第三方应用客户端在附近搜索到的智能硬件。
步骤706,第三方应用客户端向被选择的智能硬件发送标识获取请求。
标识获取请求用于请求获取智能硬件的标识。
相应地,智能硬件接收第三方应用客户端发送的标识获取请求。
步骤707,智能硬件将智能硬件的标识发送给第三方应用客户端。
相应地,第三方应用客户端接收智能硬件发送的智能硬件的标识。
步骤708,第三方应用客户端获取智能硬件的绑定状态,若绑定状态指示智能硬件为未绑定,则向第三方应用服务器发送绑定请求。
绑定请求中包括绑定请求信息和智能硬件的标识,绑定请求信息用于请求建立智能硬件与登录第三方应用客户端的用户帐号之间的绑定关系。智能硬件的绑定状态可由智能硬件发送给第三方应用客户端。
相应地,第三方应用服务器接收第三方应用客户端发送的绑定请求。
另外,若绑定状态指示智能硬件为已绑定,则退出注册绑定流程。
步骤709,第三方应用服务器向认证服务器转发绑定请求。
绑定请求中包括绑定请求信息、智能硬件的标识和第三方应用的标识。
相应地,认证服务器接收第三方应用服务器转发的绑定请求。
步骤710,认证服务器在接收到绑定请求之后,通过第三方应用服务器向第三方应用客户端发送注册请求。
注册请求中包括注册请求信息、挑战随机数和应用参数。
相应地,第三方应用客户端通过第三方应用服务器接收认证服务器发送的注册请求。
步骤711,第三方应用客户端将注册请求转发给智能硬件。
相应地,智能硬件接收第三方应用客户端转发的注册请求。
步骤712,智能硬件生成确认提示信息。
在本实施例中,确认提示信息用于询问是否确认绑定智能硬件。
步骤713,智能硬件获取对应于确认提示信息的确认指示。
用户获取到确认提示信息之后,若确认绑定智能硬件,则触发确认指示。例如,用户通过按确认键、刷指纹、刷虹膜等方式触发确认指示。
步骤714,智能硬件生成第三方应用对应的应用公钥和应用私钥,并生成相应的应用密钥索引,采用硬件私钥对应用密钥索引和应用公钥作签名,得到第二签名结果。
步骤715,智能硬件依次通过第三方应用客户端和第三方应用服务器向认证服务器透传待验证信息。
待验证信息包括第三方应用对应的应用公钥、第二签名结果和智能硬件的硬件证书,智能硬件的硬件证书包括智能硬件对应的硬件公钥和智能硬件的标识。
相应地,认证服务器依次通过第三方应用客户端和第三方应用服务器接收智能硬件透传的待验证信息。
步骤716,认证服务器在采用根证书公钥验证智能硬件的硬件证书合法的情况下,从智能硬件的硬件证书中提取智能硬件对应的硬件公钥。
步骤717,认证服务器采用智能硬件对应的硬件公钥对第二签名结果验签。
步骤718,若验签成功,则认证服务器存储第一绑定关系。
第一绑定关系包括智能硬件的标识、第三方应用的标识、用户帐号、应用密钥索引和第三方应用对应的应用公钥之间的绑定关系。
步骤719,认证服务器向第三方应用服务器发送智能硬件的标识和应用密钥索引。
相应地,第三方应用服务器接收认证服务器发送的智能硬件的标识和应用密钥索引。
步骤720,第三方应用服务器存储第二绑定关系。
第二绑定关系包括智能硬件的标识、用户帐号和应用密钥索引之间的绑定关系。第三方应用服务器存储第二绑定关系,用于后续用户采用智能硬件进行登录和支付时,进行身份认证。
步骤721,第三方应用服务器向第三方应用客户端发送绑定成功信息。
相应地,第三方应用客户端接收第三方应用服务器发送的绑定成功信息。
步骤722,第三方应用客户端从未绑定状态变为已绑定状态。
步骤723,第三方应用客户端向用户显示绑定成功页面。
请参考图8,其示出了本发明一个实施例提供的注销方法的流程图,该方法可应用于图1所示的实施环境中。该方法可包括如下几个步骤。
步骤801,第三方应用客户端在获取到用于请求执行注销操作的操作指示之后,向第三方应用服务器发送注销请求。
注销请求中至少包括注销请求信息和智能硬件的标识。注销请求信息用于请求执行注销操作,注销操作为解绑操作或者挂失操作。解绑操作是指解除智能硬件与用户帐号之间的绑定关系。挂失操作是指挂失智能硬件。
相应地,第三方应用服务器接收第三方应用客户端发送的注销请求。
步骤802,第三方应用服务器向认证服务器透传注销请求。
相应地,认证服务器接收第三方应用服务器透传的注销请求。
步骤803,认证服务器在接收到注销请求之后,执行注销操作。
本实施例提供的方法,实现了智能硬件与用户帐号的解绑,以及智能硬件的挂失。
请参考图9,其示出了本发明一个实施例提供的解绑方法的流程图,该方法可以包括如下几个步骤。
步骤901,用户通过第三方应用客户端发起解绑请求。
通过至少2种认证方式确认该解绑请求由真实的用户发起(如邮箱、手机短信验证码等)。
步骤902,第三方应用客户端通过第三方应用服务器向认证服务器发送解绑请求。
解绑请求中至少包括解绑请求信息和智能硬件的标识。解绑请求信息用于请求执行解绑操作。可选地,解绑请求中还包括用户帐号和第三方应用的标识。
相应地,认证服务器接收第三方应用客户端通过第三方应用服务器发送的解绑请求。
步骤903,认证服务器根据智能硬件的标识,将该智能硬件的可用状态标记为未绑定状态,并删除与智能硬件的标识和第三方应用的标识相对应的应用密钥索引和应用公钥。
步骤904,认证服务器将解绑请求的处理结果发送给第三方应用服务器。
相应地,第三方应用服务器接收认证服务器发送的处理结果。
步骤905,第三方应用服务器解除智能硬件的标识和应用密钥索引之间的绑定关系。
步骤906,第三方应用服务器将处理结果和应用密钥索引发送给第三方应用客户端。
相应地,第三方应用客户端接收第三方应用服务器发送的处理结果和应用密钥索引。
步骤907,第三方应用客户端将处理结果和应用密钥索引发送给智能硬件。
相应地,智能硬件接收第三方应用客户端发送的处理结果和应用密钥索引。
步骤908,智能硬件删除与应用密钥索引对应的应用私钥。
步骤909,智能硬件向第三方应用客户端发送注销成功信息。
相应地,第三方应用客户端接收智能硬件发送的注销成功信息。
步骤910,第三方应用客户端通知用户已解除绑定。
在上述图9所示实施例中,从第三方应用客户端发起解绑流程。在其它可能的实施例中,也可从管理客户端发起解绑流程。如图10所示,其示出了本发明另一实施例提供的解绑方法的流程图,该方法可以包括如下几个步骤。
步骤1001,用户通过管理客户端查询与智能硬件绑定的应用列表,对目标应用发起解绑请求。
步骤1002,管理客户端向智能硬件发送标识获取请求。
相应地,智能硬件接收管理客户端发送的标识获取请求。
步骤1003,智能硬件向管理客户端发送智能硬件的标识。
相应地,管理客户端接收智能硬件发送的智能硬件的标识。
步骤1004,管理客户端向认证服务器发送解绑请求,解绑请求中包括解绑请求信息、第三方应用的标识和智能硬件的标识。
相应地,认证服务器接收管理客户端发送的解绑请求。
步骤1005,认证服务器根据智能硬件的标识和第三方应用的标识,标记智能硬件相应的状态为未绑定状态。
步骤1006,认证服务器将解绑请求的处理结果发送给第三方应用服务器,该处理结果中包括智能硬件的标识。
相应地,第三方应用服务器接收认证服务器发送的处理结果。
步骤1007,认证服务器通知管理客户端处理结果。
相应地,管理客户端接收认证服务器发送的处理结果。
步骤1008,管理客户端对用户显示解除绑定成功。
请参考图11,其示出了本发明一个实施例提供的挂失方法的流程图,该方法可以包括如下几个步骤。
步骤1101,用户通过第三方应用客户端发起挂失请求。
通过至少2种认证方式确认该挂失请求由真实的用户发起(如邮箱、手机短信验证码等)。
步骤1102,第三方应用客户端通过第三方应用服务器向认证服务器发送挂失请求。
挂失请求中至少包括挂失请求信息和智能硬件的标识。挂失请求信息用于请求执行挂失操作。可选地,挂失请求中还包括用户帐号和第三方应用的标识。
相应地,认证服务器接收第三方应用客户端通过第三方应用服务器发送的挂失请求。
步骤1103,认证服务器根据智能硬件的标识,将该智能硬件的可用状态标记为挂失状态,并删除与智能硬件的标识相对应的所有应用密钥索引和应用公钥。
步骤1104,认证服务器将挂失请求的处理结果发送给第三方应用服务器。
相应地,第三方应用服务器接收认证服务器发送的处理结果。
步骤1105,第三方应用服务器解除智能硬件的标识和应用密钥索引之间的绑定关系。
步骤1106,第三方应用服务器将处理结果发送给第三方应用客户端。
相应地,第三方应用客户端接收第三方应用服务器发送的处理结果。
步骤1107,第三方应用客户端通知用户已挂失智能硬件。
在上述图11所示实施例中,从第三方应用客户端发起挂失流程。在其它可能的实施例中,也可从管理客户端发起挂失流程。如图12所示,其示出了本发明另一实施例提供的挂失方法的流程图,该方法可以包括如下几个步骤。
步骤1201,用户通过管理客户端发起挂失请求。
步骤1202,管理客户端向认证服务器转发挂失请求,请求中携带用户帐号信息。
相应地,认证服务器接收管理客户端发送的挂失请求。
步骤1203,认证服务器参照用户帐号,将与用户帐号对应的智能硬件的可用状态标记为挂失状态。
步骤1204,认证服务器通知管理客户端处理结果。
相应地,管理客户端接收认证服务器发送的处理结果。
步骤1205,管理客户端对用户显示挂失成功。
上述实施例提供的技术方案,为用户访问第三方应用提供一种安全的、便捷的、无需密码的登录或支付方式,即使用智能硬件。用户首先使用传统的账户密码方式登录支持使用智能硬件的第三方应用客户端,在第三方应用客户端上按照提示的步骤绑定智能硬件,绑定完成后用户即可使用智能硬件登录该第三方应用或在第三方应用上支付。智能硬件可在多个第三方应用上使用,不需要输入密码,只需用户做相应的交互动作(如:按确认键、刷指纹、刷虹膜等等)确认是用户本人在操作就可完成操作,既简化了操作提升了用户体验,又保证了登录或支付的安全性。若用户不想在某应用上使用智能硬件,只需在特定应用上验证身份即可快速解绑智能应用和该应用,并注销该智能硬件关于该应用的信息。若用户遗失智能硬件,只需在特定应用上验证身份即可快速挂失该智能硬件,并注销该智能硬件绑定的所有信息。
需要说明的是,在上述各个方法实施例中,上述有关第三方应用客户端的步骤可单独实现成为第三方应用客户端侧的身份认证方法,上述有关第三方应用服务器的步骤可单独实现成为第三方应用服务器侧的身份认证方法,上述有关智能硬件的步骤可单独实现成为智能硬件侧的身份认证方法,上述有关认证服务器的步骤可单独实现成为认证服务器侧的身份认证方法。
下述为本发明系统实施例,对于本发明系统实施例中未披露的细节,请参照本发明方法实施例。
请参考图13,其示出了本发明一个实施例提供的身份认证系统的框图。该系统包括:第三方应用客户端1320、第三方应用服务器1340、智能硬件1360和认证服务器1380。
所述第三方应用客户端1320,用于在获取到用于请求执行目标操作的操作指示之后,向所述第三方应用服务器1340发送操作请求,所述操作请求用于请求所述第三方应用服务器1340执行所述目标操作。
所述第三方应用服务器1340,用于从所述认证服务器1380请求获取待签名信息,通过所述第三方应用客户端1320向所述智能硬件1360转发所述待签名信息。
所述智能硬件1360,用于采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,依次通过所述第三方应用客户端1320和所述第三方应用服务器1340将所述第一签名结果透传给所述认证服务器1380。
所述认证服务器1380,用于采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,若所述第一签名结果正确,则向所述第三方应用服务器1340发送验证成功指示。
所述第三方应用服务器1340,还用于在接收到所述验证成功指示之后,执行所述目标操作。
综上所述,本实施例提供的系统,通过智能硬件对待签名信息作签名得到第一签名结果,认证服务器在验证第一签名结果正确的情况下指示第三方应用服务器执行目标操作;解决了现有的身份认证方式需要用户手动输入供身份认证的相关信息,因此导致用户在进行需要身份认证的网络操作时,操作较为复杂低效的问题;由于通过智能硬件实现身份认证,无需用户手动输入供身份认证的相关信息,使得用户在进行需要身份认证的网络操作时,更加便捷高效。
在基于图13所示实施例提供的一个可选实施例中,所述智能硬件1360,具体用于:
获取计数器的数值,所述计数器用于统计所述第三方应用对应的应用私钥的引用计数;
采用所述第三方应用对应的应用私钥,对所述待签名信息和所述计数器的数值作签名,得到所述第一签名结果;
依次通过所述第三方应用客户端1320和所述第三方应用服务器1340,将所述第一签名结果和所述计数器的数值透传给所述认证服务器1380。
在基于图13所示实施例提供的另一可选实施例中,
所述第三方应用服务器1340,具体用于获取所述智能硬件1360的标识,向所述认证服务器1380发送鉴权请求,所述鉴权请求中至少包括鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器1380生成所述待签名信息;
所述认证服务器1380,具体用于根据所述智能硬件1360的标识,获取所述智能硬件1360的可用状态,若所述智能硬件1360的可用状态指示所述智能硬件1360可用,则生成所述待签名信息,向所述第三方应用服务器1340发送所述待签名信息。
在基于图13所示实施例提供的另一可选实施例中,
所述智能硬件1360,还用于生成确认提示信息,所述确认提示信息用于询问是否确认执行所述目标操作;
所述智能硬件1360,还用于在获取到对应于所述确认提示信息的确认指示之后,执行所述采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果的步骤。
在基于图13所示实施例提供的另一可选实施例中,所述目标操作为登录操作或者支付操作。
在基于图13所示实施例提供的另一可选实施例中,
所述第三方应用客户端1320,还用于在获取到用于请求绑定所述智能硬件1360的操作指示之后,获取所述智能硬件1360的标识,向所述第三方应用服务器1340发送绑定请求,所述绑定请求中包括绑定请求信息和所述智能硬件1360的标识,所述绑定请求信息用于请求建立所述智能硬件1360与登录所述第三方应用客户端1320的用户帐号之间的绑定关系;
所述第三方应用服务器1340,还用于向所述认证服务器1380转发所述绑定请求,所述绑定请求中至少包括所述绑定请求信息和所述智能硬件1360的标识;
所述认证服务器1380,还用于在接收到所述绑定请求之后,依次通过所述第三方应用服务器1340和所述第三方应用客户端1320向所述智能硬件1360透传注册请求;
所述智能硬件1360,还用于在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件1360对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果,依次通过所述第三方应用客户端1320和所述第三方应用服务器1340向所述认证服务器1380透传待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件1360的硬件证书,所述智能硬件1360的硬件证书包括所述智能硬件1360对应的硬件公钥和所述智能硬件1360的标识;
所述认证服务器1380,还用于在采用根证书公钥验证所述智能硬件1360的硬件证书合法的情况下,从所述智能硬件1360的硬件证书中提取所述智能硬件1360对应的硬件公钥,采用所述智能硬件1360对应的硬件公钥验证所述第二签名结果是否正确,若所述第二签名结果正确,则存储第一绑定关系,所述第一绑定关系包括所述智能硬件1360的标识、所述用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,向所述第三方应用服务器1340发送所述智能硬件1360的标识;
所述第三方应用服务器1340,还用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件1360的标识和所述用户帐号之间的绑定关系。
在基于图13所示实施例提供的另一可选实施例中,
所述智能硬件1360,还用于生成应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
所述智能硬件1360,还用于依次通过所述第三方应用客户端1320和所述第三方应用服务器1340将所述应用密钥索引发送给所述认证服务器1380;
其中,所述第一绑定关系包括所述智能硬件1360的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件1360的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
在基于图13所示实施例提供的另一可选实施例中,所述智能硬件1360,具体用于:
生成所述应用参数和所述第三方应用对应的应用私钥的摘要值;
生成随机数;
根据所述摘要值和所述随机数生成所述应用密钥索引。
在基于图13所示实施例提供的另一可选实施例中,
所述第三方应用服务器1340,还用于根据所述智能硬件1360的标识或者所述用户帐号,查询所述第二绑定关系获取对应的所述应用密钥索引,通过所述第三方应用客户端1320向所述智能硬件1360转发所述应用密钥索引;
所述智能硬件1360,还用于根据所述应用密钥索引,获取所述第三方应用对应的应用私钥。
在基于图13所示实施例提供的另一可选实施例中,
所述第三方应用客户端1320,还用于在获取到用于请求执行注销操作的操作指示之后,向所述第三方应用服务器1340发送注销操作请求,所述注销操作请求中至少包括注销请求信息和所述智能硬件1360的标识,所述注销请求信息用于请求执行所述注销操作,所述注销操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件1360与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件1360;
所述第三方应用服务器1340,还用于向所述认证服务器1380透传所述注销操作请求;
所述认证服务器1380,还用于在接收到所述注销操作请求之后,执行所述注销操作。
请参考图14,其示出了本发明一个实施例提供的第三方应用客户端的框图。该第三方应用客户端包括:第一请求发送模块1410、第一信息接收模块1420、第一信息发送模块1430、第一结果接收模块1440和第一透传模块1450。
第一请求发送模块1410,用于在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作。
第一信息接收模块1420,用于接收所述第三方应用服务器发送的待签名信息,所述待签名信息由所述第三方应用服务器在接收到所述操作请求之后从认证服务器请求获取。
第一信息发送模块1430,用于向智能硬件转发所述待签名信息。
第一结果接收模块1440,用于接收所述智能硬件发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到。
第一透传模块1450,用于通过所述第三方应用服务器向所述认证服务器透传所述第一签名结果,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作。
在基于图14所示实施例提供的一个可选实施例中,所述目标操作为登录操作或者支付操作。
在基于图14所示实施例提供的另一可选实施例中,所述第三方应用客户端,还包括:
标识获取模块,用于在获取到用于请求绑定所述智能硬件的操作指示之后,获取所述智能硬件的标识;
第二请求发送模块,用于向所述第三方应用服务器发送绑定请求,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
第一请求接收模块,用于接收所述第三方应用服务器发送的注册请求,所述注册请求由所述认证服务器在接收到所述第三方应用服务器转发的所述绑定请求之后生成并发送给所述第三方应用服务器;
第三请求发送模块,用于向所述智能硬件透传所述注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
第二信息接收模块,用于接收所述智能硬件发送的待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
第二透传模块,用于通过所述第三方应用服务器向所述认证服务器透传所述待验证信息,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识,所述第三方应用服务器用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
在基于图14所示实施例提供的另一可选实施例中,所述第三方应用客户端,还包括:
第四请求发送模块,用于在获取到用于请求执行指定操作的操作指示之后,通过所述第三方应用服务器向所述认证服务器透传指定操作请求,所述指定操作请求中至少包括操作请求信息和所述智能硬件的标识,所述操作请求信息用于请求执行所述指定操作,所述指定操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件,所述认证服务器用于在接收到所述指定操作请求之后,执行所述指定操作。
请参考图15,其示出了本发明一个实施例提供的第三方应用服务器的框图。该第三方应用服务器包括:第二请求接收模块1510、信息获取模块1520、信息转发模块1530、第二结果接收模块1540、第三透传模块1550、指示接收模块1560和第一操作执行模块1570。
第二请求接收模块1510,用于接收第三方应用客户端发送的操作请求,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作。
信息获取模块1520,用于从认证服务器请求获取待签名信息。
信息转发模块1530,用于通过所述第三方应用客户端向智能硬件转发所述待签名信息。
第二结果接收模块1540,用于接收所述第三方应用客户端发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到,并由所述智能硬件发送给所述第三方应用客户端。
第三透传模块1550,用于将所述第一签名结果透传给所述认证服务器。
指示接收模块1560,用于接收所述认证服务器发送的验证成功指示,所述验证成功指示由所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果正确的情况下发送。
第一操作执行模块1570,用于在接收到所述验证成功指示之后,执行所述目标操作。
在基于图15所示实施例提供的一个可选实施例中,所述信息获取模块,包括:
标识获取子模块,用于获取所述智能硬件的标识;
请求发送子模块,用于向所述认证服务器发送鉴权请求,所述鉴权请求中至少包括鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器生成所述待签名信息;
信息接收子模块,用于接收所述认证服务器发送的所述待签名信息,所述待签名信息由所述认证服务器在根据所述智能硬件的标识,获取所述智能硬件的可用状态,且所述智能硬件的可用状态指示所述智能硬件可用的情况下生成。
在基于图15所示实施例提供的另一可选实施例中,所述目标操作为登录操作或者支付操作。
在基于图15所示实施例提供的另一可选实施例中,所述第三方应用服务器,还包括:
第三请求接收模块,用于接收所述第三方应用客户端发送的绑定请求,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后发送,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
第五请求发送模块,用于向所述认证服务器转发所述绑定请求,所述绑定请求中至少包括所述绑定请求信息和所述智能硬件的标识;
第四请求接收模块,用于接收所述认证服务器发送的注册请求,所述注册请求由所述认证服务器接收到所述绑定请求之后生成并发送;
第三透传模块,用于通过所述第三方应用客户端向所述智能硬件透传所述注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
第三信息接收模块,用于接收所述第三方应用客户端发送的待验证信息,所述待验证信息由所述智能硬件发送给所述第三方应用客户端,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
第二信息发送模块,用于将所述待验证信息透传给所述认证服务器,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识;
标识接收模块,用于接收所述认证服务器发送的所述智能硬件的标识;
关系储存模块,用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
在基于图15所示实施例提供的另一可选实施例中,所述第三方应用服务器还包括:
第五请求接收模块,用于接收所述第三方应用客户端发送的指定操作请求,所述指定操作请求由所述第三方应用客户端在获取到用于请求执行指定操作的操作指示之后发送,所述指定操作请求中至少包括操作请求信息和所述智能硬件的标识,所述操作请求信息用于请求执行所述指定操作,所述指定操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件;
第四透传模块,用于向所述认证服务器透传所述指定操作请求,以使得所述认证服务器在接收到所述指定操作请求之后,执行所述指定操作。
请参考图16,其示出了本发明一个实施例提供的智能硬件的框图。该智能硬件包括:第四信息接收模块1610、第一信息签名模块1620和第五透传模块1630。
第四信息接收模块1610,用于接收第三方应用客户端发送的待签名信息,所述待签名信息由第三方应用服务器在接收到所述第三方应用客户端发送的操作请求之后从认证服务器获取,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作。
第一信息签名模块1620,用于采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果。
第五透传模块1630,用于依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作。
在基于图16所示实施例提供的一个可选实施例中,所述第一信息签名模块,包括:
数值获取子模块,用于获取计数器的数值,所述计数器用于统计签名操作的次数;
数值签名子模块,用于采用所述第三方应用对应的应用私钥,对所述待签名信息和所述计数器的数值作签名,得到所述第一签名结果;
所述第五透传模块,还用于依次通过所述第三方应用客户端和所述第三方应用服务器,将所述第一签名结果和所述计数器的数值透传给所述认证服务器。
在基于图16所示实施例提供的另一可选实施例中,所述智能硬件,还包括:
提示生成模块,用于生成确认提示信息,所述确认提示信息用于询问是否确认执行所述目标操作;
所述第一信息签名模块,还用于在获取到对应于所述确认提示信息的确认指示之后,执行所述采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果的步骤。
在基于图16所示实施例提供的另一可选实施例中,所述目标操作为登录操作或者支付操作。
在基于图16所示实施例提供的另一可选实施例中,所述智能硬件,还包括:
第六请求接收模块,用于接收所述第三方应用客户端发送的注册请求,所述注册请求由所述认证服务器在接收到所述第三方应用服务器转发的绑定请求之后生成并通过所述第三方应用服务器透传给所述第三方应用客户端,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后发送给所述第三方应用服务器,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
密钥生成模块,用于在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥;
第二信息签名模块,用于采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
第六透传模块,用于依次通过所述第三方应用客户端和所述第三方应用服务器向所述认证服务器透传待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识,所述第三方应用服务器用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
在基于图16所示实施例提供的另一可选实施例中,所述智能硬件,还包括:
索引生成模块,用于生成应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
索引发送模块,用于依次通过所述第三方应用客户端和所述第三方应用服务器将所述应用密钥索引发送给所述认证服务器;
其中,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
在基于图16所示实施例提供的另一可选实施例中,所述索引生成模块,包括:
摘要生成子模块,用于生成所述应用参数和所述第三方应用对应的应用私钥的摘要值;
随机数生成子模块,用于生成随机数;
索引生成子模块,用于根据所述摘要值和所述随机数生成所述应用密钥索引。
请参考图17,其示出了本发明一个实施例提供的认证服务器的框图。该认证服务器包括:第三信息发送模块1710、第三结果接收模块1720、第一结果验证模块1730和指示发送模块1740。
第三信息发送模块1710,用于在接收到第三方应用服务器发送的鉴权请求之后,向所述第三方应用服务器发送待签名信息,所述鉴权请求由所述第三方应用服务器在接收到第三方应用客户端发送的操作请求之后向所述认证服务器发送,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作。
第三结果接收模块1720,用于接收智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器透传的第一签名结果,所述第一签名结果由所述智能硬件在接收到所述第三方应用服务器发送的所述待签名信息之后,采用所述第三方应用对应的应用私钥对所述待签名信息作签名得到。
第一结果验证模块1730,用于采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确。
指示发送模块1740,用于在所述第一签名结果正确的情况下向所述第三方应用服务器发送验证成功指示,以触发所述第三方应用服务器执行所述目标操作。
在基于图17所示实施例提供的一个可选实施例中,所述第三信息发送模块,包括:
标识读取子模块,用于在接收到所述第三方应用服务器发送的所述鉴权请求之后,读取所述鉴权请求中包括的鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器生成所述待签名信息;
状态获取子模块,用于根据所述智能硬件的标识,获取所述智能硬件的可用状态;
信息生成子模块,用于在所述智能硬件的可用状态指示所述智能硬件可用的情况下,则生成所述待签名信息;
信息发送子模块,用于向所述第三方应用服务器发送所述待签名信息。
在基于图17所示实施例提供的另一可选实施例中,所述目标操作为登录操作或者支付操作。
在基于图17所示实施例提供的另一可选实施例中,所述认证服务器,还包括:
第七请求接收模块,用于接收所述第三方应用服务器转发的绑定请求,所述绑定请求中至少包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后生成并发送给所述第三方应用服务器;
第七透传模块,用于在接收到所述绑定请求之后,依次通过所述第三方应用服务器和所述第三方应用客户端向所述智能硬件透传注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
第四信息接收模块,用于接收所述智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器透传的待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
公钥提取模块,用于在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥;
第二结果验证模块,用于采用所述智能硬件对应的硬件公钥验证所述第二签名结果是否正确;
关系存储模块,用于在所述第二签名结果正确的情况下,存储第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号和所述第三方应用对应的应用公钥之间的绑定关系;
标识发送模块,用于向所述第三方应用服务器发送所述智能硬件的标识,以使得所述第三方应用服务器存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
在基于图17所示实施例提供的另一可选实施例中,所述认证服务器,还包括:
索引接收模块,用于接收所述智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器发送的应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
其中,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
在基于图17所示实施例提供的另一可选实施例中,所述认证服务器,还包括:
第八请求接收模块,用于接收所述第三方应用服务器透传的指定操作请求,所述指定操作请求由所述第三方应用客户端在获取到用于请求执行指定操作的操作指示之后发送给所述第三方应用服务器,所述指定操作请求中至少包括操作请求信息和所述智能硬件的标识,所述操作请求信息用于请求执行所述指定操作,所述指定操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件;
第二操作执行模块,用于在接收到所述指定操作请求之后,执行所述指定操作。
需要说明的是:上述实施例提供的设备在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的系统与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图18,其示出了本发明一个实施例提供的电子设备的结构示意图。该电子设备可以是上述实施例中的智能硬件或者安装运行有第三方应用客户端的终端。具体来讲:
电子设备1800可以包括RF(Radio Frequency,射频)电路1810、包括有一个或一个以上计算机可读存储介质的存储器1820、输入单元1830、显示单元1840、传感器1850、音频电路1860、WiFi(wireless fidelity,无线保真)模块1870、包括有一个或者一个以上处理核心的处理器1880、以及电源1890等部件。本领域技术人员可以理解,图18中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路1810可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器1880处理;另外,将涉及上行的数据发送给基站。通常,RF电路1810包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路1810还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code DivisionMultiple Access,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。
存储器1820可用于存储软件程序以及模块,处理器1880通过运行存储在存储器1820的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器1820可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备1800的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器1820还可以包括存储器控制器,以提供处理器1880和输入单元1830对存储器1820的访问。
输入单元1830可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元1830可包括图像输入设备1831以及其他输入设备1832。图像输入设备1831可以是摄像头,也可以是光电扫描设备。除了图像输入设备1831,输入单元1830还可以包括其他输入设备1832。具体地,其他输入设备1832可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1840可用于显示由用户输入的信息或提供给用户的信息以及电子设备1800的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元1840可包括显示面板1841,可选的,可以采用LCD(Liquid CrystalDisplay,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板1841。
电子设备1800还可包括至少一种传感器1850,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1841的亮度,接近传感器可在电子设备1800移动到耳边时,关闭显示面板1841和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于电子设备1800还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1860、扬声器1861,传声器1862可提供用户与电子设备1800之间的音频接口。音频电路1860可将接收到的音频数据转换后的电信号,传输到扬声器1861,由扬声器1861转换为声音信号输出;另一方面,传声器1862将收集的声音信号转换为电信号,由音频电路1860接收后转换为音频数据,再将音频数据输出处理器1880处理后,经RF电路1810以发送给比如另一电子设备,或者将音频数据输出至存储器1820以便进一步处理。音频电路1860还可能包括耳塞插孔,以提供外设耳机与电子设备1800的通信。
WiFi属于短距离无线传输技术,电子设备1800通过WiFi模块1870可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图18示出了WiFi模块1870,但是可以理解的是,其并不属于电子设备1800的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1880是电子设备1800的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1820内的软件程序和/或模块,以及调用存储在存储器1820内的数据,执行电子设备1800的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1880可包括一个或多个处理核心;优选的,处理器1880可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1880中。
电子设备1800还包括给各个部件供电的电源1890(比如电池),优选的,电源可以通过电源管理系统与处理器1880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源1890还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,电子设备1800还可以包括蓝牙模块等,在此不再赘述。
具体在本实施例中,电子设备1800还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于实现上述智能硬件侧或者第三方应用客户端侧的方法的指令。
图19示出了本发明一个实施例提供的服务器的结构示意图。该服务器可以是上述实施例中的第三方应用服务器或者认证服务器。具体来讲:
所述服务器1900包括中央处理单元(CPU)1901、包括随机存取存储器(RAM)1902和只读存储器(ROM)1903的系统存储器1904,以及连接系统存储器1904和中央处理单元1901的系统总线1905。所述服务器1900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)1906,和用于存储操作系统1913、应用程序1914和其他程序模块1915的大容量存储设备1907。
所述基本输入/输出系统1906包括有用于显示信息的显示器1908和用于用户输入信息的诸如鼠标、键盘之类的输入设备1909。其中所述显示器1908和输入设备1909都通过连接到系统总线1905的输入输出控制器1910连接到中央处理单元1901。所述基本输入/输出系统1906还可以包括输入输出控制器1910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1910还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1907通过连接到系统总线1905的大容量存储控制器(未示出)连接到中央处理单元1901。所述大容量存储设备1907及其相关联的计算机可读介质为服务器1900提供非易失性存储。也就是说,所述大容量存储设备1907可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1904和大容量存储设备1907可以统称为存储器。
根据本发明的各种实施例,所述服务器1900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1900可以通过连接在所述系统总线1905上的网络接口单元1911连接到网络1912,或者说,也可以使用网络接口单元1911来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于实现上述第三方应用服务器侧或者认证服务器侧的方法的指令。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (56)

1.一种身份认证方法,其特征在于,所述方法包括:
第三方应用客户端在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
所述第三方应用服务器从认证服务器请求获取待签名信息,通过所述第三方应用客户端向智能硬件转发所述待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,若所述第一签名结果正确,则向所述第三方应用服务器发送验证成功指示,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成;
所述第三方应用服务器在接收到所述验证成功指示之后,执行所述目标操作。
2.根据权利要求1所述的方法,其特征在于,所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,包括:
所述智能硬件获取计数器的数值,所述计数器用于统计所述第三方应用对应的应用私钥的引用计数;
所述智能硬件采用所述第三方应用对应的应用私钥,对所述待签名信息和所述计数器的数值作签名,得到所述第一签名结果;
所述智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器,将所述第一签名结果和所述计数器的数值透传给所述认证服务器。
3.根据权利要求1所述的方法,其特征在于,所述第三方应用服务器从认证服务器请求获取待签名信息,包括:
所述第三方应用服务器获取所述智能硬件的标识,向所述认证服务器发送鉴权请求,所述鉴权请求中至少包括鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器生成所述待签名信息;
所述认证服务器根据所述智能硬件的标识,获取所述智能硬件的可用状态,若所述智能硬件的可用状态指示所述智能硬件可用,则生成所述待签名信息,向所述第三方应用服务器发送所述待签名信息。
4.根据权利要求1所述的方法,其特征在于,所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果之前,还包括:
所述智能硬件生成确认提示信息,所述确认提示信息用于询问是否确认执行所述目标操作;
所述智能硬件在获取到对应于所述确认提示信息的确认指示之后,执行所述采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果的步骤。
5.根据权利要求1所述的方法,其特征在于,所述目标操作为登录操作或者支付操作。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述第三方应用客户端向第三方应用服务器发送操作请求之前,还包括:
所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后,获取所述智能硬件的标识,向所述第三方应用服务器发送绑定请求,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
所述第三方应用服务器向所述认证服务器转发所述绑定请求,所述绑定请求中至少包括所述绑定请求信息和所述智能硬件的标识;
所述认证服务器在接收到所述绑定请求之后,依次通过所述第三方应用服务器和所述第三方应用客户端向所述智能硬件透传注册请求;
所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果,依次通过所述第三方应用客户端和所述第三方应用服务器向所述认证服务器透传待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,采用所述智能硬件对应的硬件公钥验证所述第二签名结果是否正确,若所述第二签名结果正确,则存储所述第一绑定关系,向所述第三方应用服务器发送所述智能硬件的标识;
所述第三方应用服务器存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
7.根据权利要求6所述的方法,其特征在于,所述智能硬件在接收到所述注册请求之后,还包括:
所述智能硬件生成应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
所述智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器将所述应用密钥索引发送给所述认证服务器;
其中,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
8.根据权利要求7所述的方法,其特征在于,所述注册请求中包括应用参数,所述智能硬件生成应用密钥索引,包括:
所述智能硬件生成所述应用参数和所述第三方应用对应的应用私钥的摘要值;
所述智能硬件生成随机数;
所述智能硬件根据所述摘要值和所述随机数生成所述应用密钥索引。
9.根据权利要求7所述的方法,其特征在于,所述第三方应用服务器从认证服务器请求获取待签名信息之后,还包括:
所述第三方应用服务器根据所述智能硬件的标识或者所述用户帐号,查询所述第二绑定关系获取对应的所述应用密钥索引,通过所述第三方应用客户端向所述智能硬件转发所述应用密钥索引;
所述智能硬件根据所述应用密钥索引,获取所述第三方应用对应的应用私钥。
10.根据权利要求6所述的方法,其特征在于,所述认证服务器存储第一绑定关系之后,还包括:
所述第三方应用客户端在获取到用于请求执行注销操作的操作指示之后,向所述第三方应用服务器发送注销请求,所述注销请求中至少包括注销请求信息和所述智能硬件的标识,所述注销请求信息用于请求执行所述注销操作,所述注销操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件;
所述第三方应用服务器向所述认证服务器透传所述注销请求;
所述认证服务器在接收到所述注销请求之后,执行所述注销操作。
11.一种身份认证方法,其特征在于,应用于第三方应用客户端中,所述方法包括:
在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
接收所述第三方应用服务器发送的待签名信息,所述待签名信息由所述第三方应用服务器在接收到所述操作请求之后从认证服务器请求获取,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
向智能硬件转发所述待签名信息;
接收所述智能硬件发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
通过所述第三方应用服务器向所述认证服务器透传所述第一签名结果,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成。
12.根据权利要求11所述的方法,其特征在于,所述向第三方应用服务器发送操作请求之前,还包括:
在获取到用于请求绑定所述智能硬件的操作指示之后,获取所述智能硬件的标识;
向所述第三方应用服务器发送绑定请求,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
接收所述第三方应用服务器发送的注册请求,所述注册请求由所述认证服务器在接收到所述第三方应用服务器转发的所述绑定请求之后生成并发送给所述第三方应用服务器;
向所述智能硬件透传所述注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
接收所述智能硬件发送的待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
通过所述第三方应用服务器向所述认证服务器透传所述待验证信息,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储所述第一绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识,所述第三方应用服务器用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
13.根据权利要求12所述的方法,其特征在于,所述通过所述第三方应用服务器向所述认证服务器透传所述待验证信息之后,还包括:
在获取到用于请求执行注销操作的操作指示之后,通过所述第三方应用服务器向所述认证服务器透传注销操作请求,所述注销操作请求中至少包括注销请求信息和所述智能硬件的标识,所述注销请求信息用于请求执行所述注销操作,所述注销操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件,所述认证服务器用于在接收到所述注销操作请求之后,执行所述注销操作。
14.一种身份认证方法,其特征在于,应用于第三方应用服务器中,所述方法包括:
接收第三方应用客户端发送的操作请求,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
从认证服务器请求获取待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
通过所述第三方应用客户端向智能硬件转发所述待签名信息;
接收所述第三方应用客户端发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到,并由所述智能硬件发送给所述第三方应用客户端,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
将所述第一签名结果透传给所述认证服务器;
接收所述认证服务器发送的验证成功指示,所述验证成功指示由所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果正确的情况下发送,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成;
在接收到所述验证成功指示之后,执行所述目标操作。
15.根据权利要求14所述的方法,其特征在于,所述从认证服务器请求获取待签名信息,包括:
获取所述智能硬件的标识;
向所述认证服务器发送鉴权请求,所述鉴权请求中至少包括鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器生成所述待签名信息;
接收所述认证服务器发送的所述待签名信息,所述待签名信息由所述认证服务器在根据所述智能硬件的标识,获取所述智能硬件的可用状态,且所述智能硬件的可用状态指示所述智能硬件可用的情况下生成。
16.根据权利要求14或15所述的方法,其特征在于,所述接收第三方应用客户端发送的操作请求之前,还包括:
接收所述第三方应用客户端发送的绑定请求,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后发送,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
向所述认证服务器转发所述绑定请求,所述绑定请求中至少包括所述绑定请求信息和所述智能硬件的标识;
接收所述认证服务器发送的注册请求,所述注册请求由所述认证服务器接收到所述绑定请求之后生成并发送;
通过所述第三方应用客户端向所述智能硬件透传所述注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
接收所述第三方应用客户端发送的待验证信息,所述待验证信息由所述智能硬件发送给所述第三方应用客户端,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
将所述待验证信息透传给所述认证服务器,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储所述第一绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识;
接收所述认证服务器发送的所述智能硬件的标识;
存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
17.根据权利要求16所述的方法,其特征在于,所述存储第二绑定关系之后,还包括:
接收所述第三方应用客户端发送的注销操作请求,所述注销操作请求由所述第三方应用客户端在获取到用于请求执行注销操作的操作指示之后发送,所述注销操作请求中至少包括注销请求信息和所述智能硬件的标识,所述注销请求信息用于请求执行所述注销操作,所述注销操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件;
向所述认证服务器透传所述注销操作请求,以使得所述认证服务器在接收到所述注销操作请求之后,执行所述注销操作。
18.一种身份认证方法,其特征在于,应用于智能硬件中,所述方法包括:
接收第三方应用客户端发送的待签名信息,所述待签名信息由第三方应用服务器在接收到所述第三方应用客户端发送的操作请求之后从认证服务器获取,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成。
19.根据权利要求18所述的方法,其特征在于,所述采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,包括:
获取计数器的数值,所述计数器用于统计所述第三方应用对应的应用私钥的引用计数;
采用所述第三方应用对应的应用私钥,对所述待签名信息和所述计数器的数值作签名,得到所述第一签名结果;
所述依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,包括:
依次通过所述第三方应用客户端和所述第三方应用服务器,将所述第一签名结果和所述计数器的数值透传给所述认证服务器。
20.根据权利要求19所述的方法,其特征在于,所述采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果之前,还包括:
生成确认提示信息,所述确认提示信息用于询问是否确认执行所述目标操作;
在获取到对应于所述确认提示信息的确认指示之后,执行所述采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果的步骤。
21.根据权利要求18至20任一项所述的方法,其特征在于,所述接收第三方应用客户端发送的待签名信息之前,还包括:
接收所述第三方应用客户端发送的注册请求,所述注册请求由所述认证服务器在接收到所述第三方应用服务器转发的绑定请求之后生成并通过所述第三方应用服务器透传给所述第三方应用客户端,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后发送给所述第三方应用服务器,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥;
采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
依次通过所述第三方应用客户端和所述第三方应用服务器向所述认证服务器透传待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储所述第一绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识,所述第三方应用服务器用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
22.根据权利要求21所述的方法,其特征在于,所述接收所述第三方应用客户端发送的注册请求之后,还包括:
生成应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
依次通过所述第三方应用客户端和所述第三方应用服务器将所述应用密钥索引发送给所述认证服务器;
其中,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
23.根据权利要求22所述的方法,其特征在于,所述注册请求中包括应用参数,所述生成应用密钥索引,包括:
生成所述应用参数和所述第三方应用对应的应用私钥的摘要值;
生成随机数;
根据所述摘要值和所述随机数生成所述应用密钥索引。
24.一种身份认证方法,其特征在于,应用于认证服务器中,所述方法包括:
在接收到第三方应用服务器发送的鉴权请求之后,向所述第三方应用服务器发送待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;所述鉴权请求由所述第三方应用服务器在接收到第三方应用客户端发送的操作请求之后向所述认证服务器发送,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
接收智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器透传的第一签名结果,所述第一签名结果由所述智能硬件在接收到所述第三方应用服务器发送的所述待签名信息之后,采用所述第三方应用对应的应用私钥对所述待签名信息作签名得到,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成;
若所述第一签名结果正确,则向所述第三方应用服务器发送验证成功指示,以触发所述第三方应用服务器执行所述目标操作。
25.根据权利要求24所述的方法,其特征在于,所述在接收到第三方应用服务器发送的鉴权请求之后,向所述第三方应用服务器发送待签名信息,包括:
在接收到所述第三方应用服务器发送的所述鉴权请求之后,读取所述鉴权请求中包括的鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器生成所述待签名信息;
根据所述智能硬件的标识,获取所述智能硬件的可用状态;
若所述智能硬件的可用状态指示所述智能硬件可用,则生成所述待签名信息;
向所述第三方应用服务器发送所述待签名信息。
26.根据权利要求24或25所述的方法,其特征在于,所述向所述第三方应用服务器发送待签名信息之前,还包括:
接收所述第三方应用服务器转发的绑定请求,所述绑定请求中至少包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后生成并发送给所述第三方应用服务器;
在接收到所述绑定请求之后,依次通过所述第三方应用服务器和所述第三方应用客户端向所述智能硬件透传注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
接收所述智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器透传的待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥;
采用所述智能硬件对应的硬件公钥验证所述第二签名结果是否正确;
若所述第二签名结果正确,则存储所述第一绑定关系;
向所述第三方应用服务器发送所述智能硬件的标识,以使得所述第三方应用服务器存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
27.根据权利要求26所述的方法,其特征在于,所述依次通过所述第三方应用服务器和所述第三方应用客户端向所述智能硬件透传注册请求之后,还包括:
接收所述智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器发送的应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
其中,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
28.根据权利要求26所述的方法,其特征在于,所述存储第一绑定关系之后,还包括:
接收所述第三方应用服务器透传的注销操作请求,所述注销操作请求由所述第三方应用客户端在获取到用于请求执行注销操作的操作指示之后发送给所述第三方应用服务器,所述注销操作请求中至少包括注销请求信息和所述智能硬件的标识,所述注销请求信息用于请求执行所述注销操作,所述注销操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件;
在接收到所述注销操作请求之后,执行所述注销操作。
29.一种身份认证系统,其特征在于,所述系统包括:第三方应用客户端、第三方应用服务器、智能硬件和认证服务器;
所述第三方应用客户端,用于在获取到用于请求执行目标操作的操作指示之后,向所述第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
所述第三方应用服务器,用于从所述认证服务器请求获取待签名信息,通过所述第三方应用客户端向所述智能硬件转发所述待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
所述智能硬件,用于采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
所述认证服务器,用于采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,若所述第一签名结果正确,则向所述第三方应用服务器发送验证成功指示,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成;
所述第三方应用服务器,还用于在接收到所述验证成功指示之后,执行所述目标操作。
30.根据权利要求29所述的系统,其特征在于,所述智能硬件,具体用于:
获取计数器的数值,所述计数器用于统计所述第三方应用对应的应用私钥的引用计数;
采用所述第三方应用对应的应用私钥,对所述待签名信息和所述计数器的数值作签名,得到所述第一签名结果;
依次通过所述第三方应用客户端和所述第三方应用服务器,将所述第一签名结果和所述计数器的数值透传给所述认证服务器。
31.根据权利要求29所述的系统,其特征在于,
所述第三方应用服务器,具体用于获取所述智能硬件的标识,向所述认证服务器发送鉴权请求,所述鉴权请求中至少包括鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器生成所述待签名信息;
所述认证服务器,具体用于根据所述智能硬件的标识,获取所述智能硬件的可用状态,若所述智能硬件的可用状态指示所述智能硬件可用,则生成所述待签名信息,向所述第三方应用服务器发送所述待签名信息。
32.根据权利要求29所述的系统,其特征在于,
所述智能硬件,还用于生成确认提示信息,所述确认提示信息用于询问是否确认执行所述目标操作;
所述智能硬件,还用于在获取到对应于所述确认提示信息的确认指示之后,执行所述采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果的步骤。
33.根据权利要求29所述的系统,其特征在于,所述目标操作为登录操作或者支付操作。
34.根据权利要求29至33任一项所述的系统,其特征在于,
所述第三方应用客户端,还用于在获取到用于请求绑定所述智能硬件的操作指示之后,获取所述智能硬件的标识,向所述第三方应用服务器发送绑定请求,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
所述第三方应用服务器,还用于向所述认证服务器转发所述绑定请求,所述绑定请求中至少包括所述绑定请求信息和所述智能硬件的标识;
所述认证服务器,还用于在接收到所述绑定请求之后,依次通过所述第三方应用服务器和所述第三方应用客户端向所述智能硬件透传注册请求;
所述智能硬件,还用于在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果,依次通过所述第三方应用客户端和所述第三方应用服务器向所述认证服务器透传待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
所述认证服务器,还用于在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,采用所述智能硬件对应的硬件公钥验证所述第二签名结果是否正确,若所述第二签名结果正确,则存储所述第一绑定关系,向所述第三方应用服务器发送所述智能硬件的标识;
所述第三方应用服务器,还用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
35.根据权利要求34所述的系统,其特征在于,
所述智能硬件,还用于生成应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
所述智能硬件,还用于依次通过所述第三方应用客户端和所述第三方应用服务器将所述应用密钥索引发送给所述认证服务器;
其中,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
36.根据权利要求35所述的系统,其特征在于,所述智能硬件,具体用于:
生成所述应用参数和所述第三方应用对应的应用私钥的摘要值;
生成随机数;
根据所述摘要值和所述随机数生成所述应用密钥索引。
37.根据权利要求35所述的系统,其特征在于,
所述第三方应用服务器,还用于根据所述智能硬件的标识或者所述用户帐号,查询所述第二绑定关系获取对应的所述应用密钥索引,通过所述第三方应用客户端向所述智能硬件转发所述应用密钥索引;
所述智能硬件,还用于根据所述应用密钥索引,获取所述第三方应用对应的应用私钥。
38.根据权利要求34所述的系统,其特征在于,
所述第三方应用客户端,还用于在获取到用于请求执行注销操作的操作指示之后,向所述第三方应用服务器发送注销请求,所述注销请求中至少包括注销请求信息和所述智能硬件的标识,所述注销请求信息用于请求执行所述注销操作,所述注销操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件;
所述第三方应用服务器,还用于向所述认证服务器透传所述注销请求;
所述认证服务器,还用于在接收到所述注销请求之后,执行所述注销操作。
39.一种第三方应用客户端,其特征在于,所述第三方应用客户端包括:
第一请求发送模块,用于在获取到用于请求执行目标操作的操作指示之后,向第三方应用服务器发送操作请求,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
第一信息接收模块,用于接收所述第三方应用服务器发送的待签名信息,所述待签名信息由所述第三方应用服务器在接收到所述操作请求之后从认证服务器请求获取,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
第一信息发送模块,用于向智能硬件转发所述待签名信息;
第一结果接收模块,用于接收所述智能硬件发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
第一透传模块,用于通过所述第三方应用服务器向所述认证服务器透传所述第一签名结果,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成。
40.根据权利要求39所述的第三方应用客户端,其特征在于,所述第三方应用客户端,还包括:
标识获取模块,用于在获取到用于请求绑定所述智能硬件的操作指示之后,获取所述智能硬件的标识;
第二请求发送模块,用于向所述第三方应用服务器发送绑定请求,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
第一请求接收模块,用于接收所述第三方应用服务器发送的注册请求,所述注册请求由所述认证服务器在接收到所述第三方应用服务器转发的所述绑定请求之后生成并发送给所述第三方应用服务器;
第三请求发送模块,用于向所述智能硬件透传所述注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
第二信息接收模块,用于接收所述智能硬件发送的待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
第二透传模块,用于通过所述第三方应用服务器向所述认证服务器透传所述待验证信息,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储所述第一绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识,所述第三方应用服务器用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
41.根据权利要求40所述的第三方应用客户端,其特征在于,所述第三方应用客户端,还包括:
第四请求发送模块,用于在获取到用于请求执行指定操作的操作指示之后,通过所述第三方应用服务器向所述认证服务器透传指定操作请求,所述指定操作请求中至少包括操作请求信息和所述智能硬件的标识,所述操作请求信息用于请求执行所述指定操作,所述指定操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件,所述认证服务器用于在接收到所述指定操作请求之后,执行所述指定操作。
42.一种第三方应用服务器,其特征在于,所述第三方应用服务器包括:
第二请求接收模块,用于接收第三方应用客户端发送的操作请求,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
信息获取模块,用于从认证服务器请求获取待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;
信息转发模块,用于通过所述第三方应用客户端向智能硬件转发所述待签名信息;
第二结果接收模块,用于接收所述第三方应用客户端发送的第一签名结果,所述第一签名结果由所述智能硬件采用所述第三方应用对应的应用私钥对所述待签名信息作签名后得到,并由所述智能硬件发送给所述第三方应用客户端,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
第三透传模块,用于将所述第一签名结果透传给所述认证服务器;
指示接收模块,用于接收所述认证服务器发送的验证成功指示,所述验证成功指示由所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果正确的情况下发送,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成;
第一操作执行模块,用于在接收到所述验证成功指示之后,执行所述目标操作。
43.根据权利要求42所述的第三方应用服务器,其特征在于,所述信息获取模块,包括:
标识获取子模块,用于获取所述智能硬件的标识;
请求发送子模块,用于向所述认证服务器发送鉴权请求,所述鉴权请求中至少包括鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器生成所述待签名信息;
信息接收子模块,用于接收所述认证服务器发送的所述待签名信息,所述待签名信息由所述认证服务器在根据所述智能硬件的标识,获取所述智能硬件的可用状态,且所述智能硬件的可用状态指示所述智能硬件可用的情况下生成。
44.根据权利要求42或43所述的第三方应用服务器,其特征在于,所述第三方应用服务器,还包括:
第三请求接收模块,用于接收所述第三方应用客户端发送的绑定请求,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后发送,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
第五请求发送模块,用于向所述认证服务器转发所述绑定请求,所述绑定请求中至少包括所述绑定请求信息和所述智能硬件的标识;
第四请求接收模块,用于接收所述认证服务器发送的注册请求,所述注册请求由所述认证服务器接收到所述绑定请求之后生成并发送;
第三透传模块,用于通过所述第三方应用客户端向所述智能硬件透传所述注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
第三信息接收模块,用于接收所述第三方应用客户端发送的待验证信息,所述待验证信息由所述智能硬件发送给所述第三方应用客户端,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
第二信息发送模块,用于将所述待验证信息透传给所述认证服务器,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储所述第一绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识;
标识接收模块,用于接收所述认证服务器发送的所述智能硬件的标识;
关系储存模块,用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
45.根据权利要求44所述的第三方应用服务器,其特征在于,所述第三方应用服务器还包括:
第五请求接收模块,用于接收所述第三方应用客户端发送的指定操作请求,所述指定操作请求由所述第三方应用客户端在获取到用于请求执行指定操作的操作指示之后发送,所述指定操作请求中至少包括操作请求信息和所述智能硬件的标识,所述操作请求信息用于请求执行所述指定操作,所述指定操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件;
第四透传模块,用于向所述认证服务器透传所述指定操作请求,以使得所述认证服务器在接收到所述指定操作请求之后,执行所述指定操作。
46.一种智能硬件,其特征在于,所述智能硬件包括:
第四信息接收模块,用于接收第三方应用客户端发送的待签名信息,所述待签名信息由第三方应用服务器在接收到所述第三方应用客户端发送的操作请求之后从认证服务器获取,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
第一信息签名模块,用于采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
第五透传模块,用于依次通过所述第三方应用客户端和所述第三方应用服务器将所述第一签名结果透传给所述认证服务器,以使得所述认证服务器采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,并在所述第一签名结果正确的情况下,向所述第三方应用服务器发送验证成功指示以触发所述第三方应用服务器执行所述目标操作,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成。
47.根据权利要求46所述的智能硬件,其特征在于,所述第一信息签名模块,包括:
数值获取子模块,用于获取计数器的数值,所述计数器用于统计签名操作的次数;
数值签名子模块,用于采用所述第三方应用对应的应用私钥,对所述待签名信息和所述计数器的数值作签名,得到所述第一签名结果;
所述第五透传模块,还用于依次通过所述第三方应用客户端和所述第三方应用服务器,将所述第一签名结果和所述计数器的数值透传给所述认证服务器。
48.根据权利要求47所述的智能硬件,其特征在于,所述智能硬件,还包括:
提示生成模块,用于生成确认提示信息,所述确认提示信息用于询问是否确认执行所述目标操作;
所述第一信息签名模块,还用于在获取到对应于所述确认提示信息的确认指示之后,执行所述采用所述第三方应用对应的应用私钥对所述待签名信息作签名,得到第一签名结果的步骤。
49.根据权利要求46至48任一项所述的智能硬件,其特征在于,所述智能硬件,还包括:
第六请求接收模块,用于接收所述第三方应用客户端发送的注册请求,所述注册请求由所述认证服务器在接收到所述第三方应用服务器转发的绑定请求之后生成并通过所述第三方应用服务器透传给所述第三方应用客户端,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后发送给所述第三方应用服务器,所述绑定请求中包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系;
密钥生成模块,用于在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥;
第二信息签名模块,用于采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
第六透传模块,用于依次通过所述第三方应用客户端和所述第三方应用服务器向所述认证服务器透传待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识,以使得所述认证服务器在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥,并在采用所述智能硬件对应的硬件公钥验证所述第二签名结果正确的情况下,存储所述第一绑定关系,并向所述第三方应用服务器发送所述智能硬件的标识,所述第三方应用服务器用于存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
50.根据权利要求49所述的智能硬件,其特征在于,所述智能硬件,还包括:
索引生成模块,用于生成应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
索引发送模块,用于依次通过所述第三方应用客户端和所述第三方应用服务器将所述应用密钥索引发送给所述认证服务器;
其中,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
51.根据权利要求50所述的智能硬件,其特征在于,所述索引生成模块,包括:
摘要生成子模块,用于生成所述应用参数和所述第三方应用对应的应用私钥的摘要值;
随机数生成子模块,用于生成随机数;
索引生成子模块,用于根据所述摘要值和所述随机数生成所述应用密钥索引。
52.一种认证服务器,其特征在于,所述认证服务器包括:
第三信息发送模块,用于在接收到第三方应用服务器发送的鉴权请求之后,向所述第三方应用服务器发送待签名信息,所述待签名信息是由所述认证服务器生成的,所述待签名信息包括挑战随机数,所述挑战随机数由所述认证服务器根据预设规则随机生成;所述鉴权请求由所述第三方应用服务器在接收到第三方应用客户端发送的操作请求之后向所述认证服务器发送,所述操作请求由所述第三方应用客户端在获取到用于请求执行目标操作的操作指示之后向所述第三方应用服务器发送,所述操作请求用于请求所述第三方应用服务器执行所述目标操作;
第三结果接收模块,用于接收智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器透传的第一签名结果,所述第一签名结果由所述智能硬件在接收到所述第三方应用服务器发送的所述待签名信息之后,采用所述第三方应用对应的应用私钥对所述待签名信息作签名得到,一个所述智能硬件支持与多种不同的第三方应用绑定,所述第三方应用对应的应用私钥由所述智能硬件在注册绑定流程中生成;
第一结果验证模块,用于采用所述第三方应用对应的应用公钥验证所述第一签名结果是否正确,所述认证服务器中存储有第一绑定关系,所述第一绑定关系包括所述智能硬件的标识、用户帐号和所述第三方应用对应的应用公钥之间的绑定关系,所述第三方应用对应的应用公钥在注册绑定流程中生成;
指示发送模块,用于在所述第一签名结果正确的情况下向所述第三方应用服务器发送验证成功指示,以触发所述第三方应用服务器执行所述目标操作。
53.根据权利要求52所述的认证服务器,其特征在于,所述第三信息发送模块,包括:
标识读取子模块,用于在接收到所述第三方应用服务器发送的所述鉴权请求之后,读取所述鉴权请求中包括的鉴权请求信息和所述智能硬件的标识,所述鉴权请求信息用于请求所述认证服务器生成所述待签名信息;
状态获取子模块,用于根据所述智能硬件的标识,获取所述智能硬件的可用状态;
信息生成子模块,用于在所述智能硬件的可用状态指示所述智能硬件可用的情况下,则生成所述待签名信息;
信息发送子模块,用于向所述第三方应用服务器发送所述待签名信息。
54.根据权利要求52或53所述的认证服务器,其特征在于,所述认证服务器,还包括:
第七请求接收模块,用于接收所述第三方应用服务器转发的绑定请求,所述绑定请求中至少包括绑定请求信息和所述智能硬件的标识,所述绑定请求信息用于请求建立所述智能硬件与登录所述第三方应用客户端的用户帐号之间的绑定关系,所述绑定请求由所述第三方应用客户端在获取到用于请求绑定所述智能硬件的操作指示之后生成并发送给所述第三方应用服务器;
第七透传模块,用于在接收到所述绑定请求之后,依次通过所述第三方应用服务器和所述第三方应用客户端向所述智能硬件透传注册请求,以使得所述智能硬件在接收到所述注册请求之后,生成所述第三方应用对应的应用公钥和应用私钥,采用所述智能硬件对应的硬件私钥对所述第三方应用对应的应用公钥作签名,得到第二签名结果;
第四信息接收模块,用于接收所述智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器透传的待验证信息,所述待验证信息包括所述第三方应用对应的应用公钥、所述第二签名结果和所述智能硬件的硬件证书,所述智能硬件的硬件证书包括所述智能硬件对应的硬件公钥和所述智能硬件的标识;
公钥提取模块,用于在采用根证书公钥验证所述智能硬件的硬件证书合法的情况下,从所述智能硬件的硬件证书中提取所述智能硬件对应的硬件公钥;
第二结果验证模块,用于采用所述智能硬件对应的硬件公钥验证所述第二签名结果是否正确;
关系存储模块,用于在所述第二签名结果正确的情况下,存储所述第一绑定关系;
标识发送模块,用于向所述第三方应用服务器发送所述智能硬件的标识,以使得所述第三方应用服务器存储第二绑定关系,所述第二绑定关系包括所述智能硬件的标识和所述用户帐号之间的绑定关系。
55.根据权利要求54所述的认证服务器,其特征在于,所述认证服务器,还包括:
索引接收模块,用于接收所述智能硬件依次通过所述第三方应用客户端和所述第三方应用服务器发送的应用密钥索引,所述应用密钥索引用于索引所述第三方应用对应的应用公钥和应用私钥;
其中,所述第一绑定关系包括所述智能硬件的标识、所述用户帐号、所述应用密钥索引和所述第三方应用对应的应用公钥之间的绑定关系;所述第二绑定关系包括所述智能硬件的标识、所述用户帐号和所述应用密钥索引之间的绑定关系。
56.根据权利要求54所述的认证服务器,其特征在于,所述认证服务器,还包括:
第八请求接收模块,用于接收所述第三方应用服务器透传的指定操作请求,所述指定操作请求由所述第三方应用客户端在获取到用于请求执行指定操作的操作指示之后发送给所述第三方应用服务器,所述指定操作请求中至少包括操作请求信息和所述智能硬件的标识,所述操作请求信息用于请求执行所述指定操作,所述指定操作为解绑操作或者挂失操作,所述解绑操作是指解除所述智能硬件与所述用户帐号之间的绑定关系,所述挂失操作是指挂失所述智能硬件;
第二操作执行模块,用于在接收到所述指定操作请求之后,执行所述指定操作。
CN201610272591.7A 2016-04-27 2016-04-27 身份认证方法、系统及设备 Active CN105871867B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201610272591.7A CN105871867B (zh) 2016-04-27 2016-04-27 身份认证方法、系统及设备
US15/771,511 US10637668B2 (en) 2016-04-27 2017-04-25 Authentication method, system and equipment
PCT/CN2017/081894 WO2017186100A1 (zh) 2016-04-27 2017-04-25 身份认证方法、系统及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610272591.7A CN105871867B (zh) 2016-04-27 2016-04-27 身份认证方法、系统及设备

Publications (2)

Publication Number Publication Date
CN105871867A CN105871867A (zh) 2016-08-17
CN105871867B true CN105871867B (zh) 2018-01-16

Family

ID=56628487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610272591.7A Active CN105871867B (zh) 2016-04-27 2016-04-27 身份认证方法、系统及设备

Country Status (3)

Country Link
US (1) US10637668B2 (zh)
CN (1) CN105871867B (zh)
WO (1) WO2017186100A1 (zh)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450403B (zh) * 2014-07-02 2019-09-17 阿里巴巴集团控股有限公司 身份认证方法、装置及服务器
CN106533687B (zh) * 2015-09-14 2019-11-08 阿里巴巴集团控股有限公司 一种身份认证方法和设备
CN105871867B (zh) * 2016-04-27 2018-01-16 腾讯科技(深圳)有限公司 身份认证方法、系统及设备
WO2018000396A1 (zh) * 2016-06-30 2018-01-04 华为技术有限公司 一种身份认证方法及通信终端
CN106533678B (zh) * 2016-07-06 2019-09-13 天津米游科技有限公司 一种基于多重签名的登录方法及其系统
CN106529948A (zh) * 2016-11-07 2017-03-22 飞天诚信科技股份有限公司 一种支付认证方法及系统
CN106533696B (zh) * 2016-11-18 2019-10-01 江苏通付盾科技有限公司 基于区块链的身份认证方法、认证服务器及用户终端
CN106693366B (zh) * 2016-12-06 2020-04-21 北京奇虎科技有限公司 验证操作合法性的方法、装置和加固安装包的方法、装置
CN108337210B (zh) 2017-01-19 2021-05-18 钉钉控股(开曼)有限公司 设备配置方法及装置、系统
CN107277020A (zh) * 2017-06-23 2017-10-20 国民认证科技(北京)有限公司 基于公私钥体制的远程验证移动设备合法性的系统和方法
CN107155185B (zh) * 2017-06-30 2019-12-03 迈普通信技术股份有限公司 一种接入wlan的认证方法、装置及系统
CN107634941A (zh) * 2017-09-04 2018-01-26 西安电子科技大学 一种基于智能手环的多因子认证方法
US11075906B2 (en) * 2017-12-28 2021-07-27 Shoppertrak Rct Corporation Method and system for securing communications between a lead device and a secondary device
CN114039734B (zh) * 2018-03-16 2023-03-24 腾讯科技(深圳)有限公司 设备重置方法和装置
CN110474864B (zh) * 2018-05-10 2021-05-07 华为技术有限公司 一种注册、登录移动应用程序的方法及电子设备
CN108768970B (zh) * 2018-05-15 2023-04-18 腾讯科技(北京)有限公司 一种智能设备的绑定方法、身份认证平台及存储介质
CN109150828B (zh) * 2018-07-10 2021-04-13 珠海腾飞科技有限公司 一种验证注册方法及系统
CN110932858B (zh) * 2018-09-19 2023-05-02 阿里巴巴集团控股有限公司 认证方法和系统
CN109525395B (zh) * 2018-09-27 2022-02-08 腾讯科技(北京)有限公司 签名信息的传输方法和装置、存储介质及电子装置
US11397804B2 (en) * 2018-10-12 2022-07-26 Cynthia Fascenelli Kirkeby System and methods for authenticating tangible products
CN109560933B (zh) * 2018-10-12 2022-04-08 蚂蚁蓉信(成都)网络科技有限公司 基于数字证书的认证方法及系统、存储介质、电子设备
US20230252125A1 (en) * 2018-10-12 2023-08-10 Cynthia Fascenelli Kirkeby System and methods for authenticating tangible products
CN109740321B (zh) * 2018-12-25 2020-03-31 北京深思数盾科技股份有限公司 吊销加密机管理员锁的方法、加密机及厂商服务器
CN109801053B (zh) * 2018-12-28 2023-05-19 易票联支付有限公司 一种统一绑定银行卡的系统及方法
US10602353B1 (en) * 2018-12-31 2020-03-24 Microsoft Technology Licensing, Llc Extensible device identity attestation
CN110224713B (zh) * 2019-06-12 2020-09-15 读书郎教育科技有限公司 一种基于高安全性智能儿童手表的安全防护方法及系统
CN112134780B (zh) * 2019-06-24 2022-09-13 腾讯科技(深圳)有限公司 信息获取方法和装置、存储介质及电子装置
CN112311718B (zh) * 2019-07-24 2023-08-22 华为技术有限公司 检测硬件的方法、装置、设备及存储介质
CN112154439A (zh) * 2019-10-18 2020-12-29 深圳市大疆创新科技有限公司 无人机激活方法、无人机解绑方法、设备及存储介质
CN113038434B (zh) * 2019-12-09 2022-10-28 华为技术有限公司 设备注册方法、装置、移动终端和存储介质
CN111314429B (zh) * 2020-01-19 2021-07-13 上海交通大学 一种网络请求处理系统和方法
CN111614979B (zh) * 2020-04-08 2024-03-08 视联动力信息技术股份有限公司 一种视联网资源的管理方法及装置
SG10202003630VA (en) * 2020-04-21 2021-09-29 Grabtaxi Holdings Pte Ltd Authentication and validation procedure for improved security in communications systems
DE102020119578A1 (de) * 2020-07-24 2022-01-27 Infineon Technologies Ag Bereitstellen einer Challenge für ein Gerät
CN112039848B (zh) * 2020-08-05 2022-11-04 北京链飞未来科技有限公司 一种基于区块链公钥数字签名的Web认证方法、系统和装置
CN112448958B (zh) * 2020-11-30 2022-08-30 南方电网科学研究院有限责任公司 一种域策略下发方法、装置、电子设备和存储介质
CN112866236B (zh) * 2021-01-15 2023-03-31 云南电网有限责任公司电力科学研究院 一种基于简化数字证书的物联网身份认证系统
CN112887409B (zh) * 2021-01-27 2022-05-17 珠海格力电器股份有限公司 一种数据处理系统、方法、装置、设备和存储介质
US20220385481A1 (en) * 2021-06-01 2022-12-01 International Business Machines Corporation Certificate-based multi-factor authentication
CN114285581A (zh) * 2021-12-07 2022-04-05 西安广和通无线通信有限公司 应用管理方法及相关产品
CN114500237A (zh) * 2022-01-05 2022-05-13 北京世格电讯科技有限公司 一种通信方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103716794A (zh) * 2013-12-25 2014-04-09 北京握奇数据系统有限公司 一种基于便携式设备的双向安全验证方法及系统
CN104243484A (zh) * 2014-09-25 2014-12-24 小米科技有限责任公司 信息交互方法及装置、电子设备
CN104601327A (zh) * 2013-12-30 2015-05-06 腾讯科技(深圳)有限公司 一种安全验证方法、相关设备和系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BRPI0615559A2 (pt) * 2005-07-20 2017-09-12 Verimatrix Inc sistema e método de autenticação de usúario de rede
US20090132813A1 (en) * 2007-11-08 2009-05-21 Suridx, Inc. Apparatus and Methods for Providing Scalable, Dynamic, Individualized Credential Services Using Mobile Telephones
US20140156531A1 (en) * 2010-12-14 2014-06-05 Salt Technology Inc. System and Method for Authenticating Transactions Through a Mobile Device
US9059852B2 (en) * 2013-03-27 2015-06-16 International Business Machines Corporation Validating a user's identity utilizing information embedded in a image file
WO2015047555A1 (en) * 2013-09-28 2015-04-02 Elias Athanasopoulos Methods, systems, and media for authenticating users using multiple services
US9600676B1 (en) * 2014-06-16 2017-03-21 Verily Life Sciences Llc Application-level wireless security for wearable devices
CN104618117B (zh) * 2015-02-04 2018-06-12 北京奇虎科技有限公司 基于二维码的智能卡设备的身份认证装置及方法
CN104767616B (zh) * 2015-03-06 2016-08-24 北京石盾科技有限公司 一种信息处理方法、系统及相关设备
CN105871867B (zh) * 2016-04-27 2018-01-16 腾讯科技(深圳)有限公司 身份认证方法、系统及设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103716794A (zh) * 2013-12-25 2014-04-09 北京握奇数据系统有限公司 一种基于便携式设备的双向安全验证方法及系统
CN104601327A (zh) * 2013-12-30 2015-05-06 腾讯科技(深圳)有限公司 一种安全验证方法、相关设备和系统
CN104243484A (zh) * 2014-09-25 2014-12-24 小米科技有限责任公司 信息交互方法及装置、电子设备

Also Published As

Publication number Publication date
US10637668B2 (en) 2020-04-28
WO2017186100A1 (zh) 2017-11-02
CN105871867A (zh) 2016-08-17
US20180343123A1 (en) 2018-11-29

Similar Documents

Publication Publication Date Title
CN105871867B (zh) 身份认证方法、系统及设备
CN107395343B (zh) 证书管理方法及系统
CN104796385B (zh) 终端绑定方法、装置及系统
CN104468463B (zh) 验证方法、装置和系统
CN104836664B (zh) 一种执行业务处理的方法、装置和系统
CN109831456A (zh) 消息推送方法、装置、设备及存储介质
CN107070909A (zh) 信息发送方法、信息接收方法、装置及系统
CN108351927A (zh) 用于访问管理的无密码认证
CN104901805B (zh) 一种身份鉴权方法、装置和系统
CN104735657B (zh) 安全终端验证方法、无线接入点绑定方法、装置及系统
CN105974802A (zh) 一种控制智能设备的方法、装置和系统
CN104901991B (zh) 虚拟资源转移方法、装置和系统
CN107808282A (zh) 虚拟物品包发送方法及装置
CN104899672B (zh) 物品转移装置、系统及方法
CN106789089A (zh) 一种管理证书的方法和系统
CN104618416B (zh) 信用账户创建方法、装置及系统
CN105678553A (zh) 一种处理订单信息的方法、装置和系统
CN104616143B (zh) 社交应用中虚拟票据转移方法及装置
CN104580177B (zh) 资源提供方法、装置和系统
CN104901806B (zh) 一种虚拟资源处理方法、装置和系统
CN105516258A (zh) 信息交互系统、方法及装置
CN106934607A (zh) 一种支付方法、支付系统服务端以及支付设备
CN108111386A (zh) 资源发送方法、装置及系统
CN109816375A (zh) 一种扫码支付公交费和地铁费的支付方法和装置
CN104899488B (zh) 数值转移方法及装置

Legal Events

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