CN106878298B - 一种认证设备与网站的集成方法、系统及装置 - Google Patents
一种认证设备与网站的集成方法、系统及装置 Download PDFInfo
- Publication number
- CN106878298B CN106878298B CN201710068729.6A CN201710068729A CN106878298B CN 106878298 B CN106878298 B CN 106878298B CN 201710068729 A CN201710068729 A CN 201710068729A CN 106878298 B CN106878298 B CN 106878298B
- Authority
- CN
- China
- Prior art keywords
- user
- module
- browser
- registration
- request
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1073—Registration or de-registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3263—Cryptographic 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种认证设备与网站的集成方法、系统及装置,所述方法包括:注册插件接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识,根据注册结果标识判断用户是否已注册成功,如果是,则向网站发送已注册信息,结束注册流程;否则,向认证服务器发送包括用户标识的获取设备注册请求,接收来自认证服务器的设备注册请求,通过浏览器向认证设备发送设备注册请求,并通过浏览器接收认证设备生成的设备注册数据,向认证服务器发送包括设备注册数据的第一认证请求,接收来自认证服务器的第一认证结果,向网站发送第一认证结果,用于网站验证用户是否注册成功。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种认证设备与网站的集成方法、系统及装置。
背景技术
Joomla是全球最受欢迎的开源CMS(Content Management System,内容管理系统)之一,可以在Linux、Windows、MacOSX等各种不同的平台上执行。现有技术中,Joomla被广泛应用于创建各类网站和开发基于Web的应用,但如何将认证设备与应用Joomla技术的网站集成在一起,实现用户在网站上的注册和认证仍是亟需解决的一个技术问题。
发明内容
本发明提供了一种认证设备与网站的集成方法、系统及装置,解决了上述问题。
本发明提供了一种认证设备与网站的集成方法,适用于包括:认证设备、浏览器、网站、注册插件和认证服务器的系统,包括:注册流程,所述注册流程包括:
步骤s1:所述网站通过所述浏览器接收用户注册信息,向所述注册插件发送所述用户注册信息和与所述用户注册信息对应的注册结果标识;
步骤s2:所述注册插件根据所述注册结果标识判断用户是否已注册成功,如果是,则向所述网站发送已注册信息,所述网站执行步骤s10;否则,向所述认证服务器发送包括所述用户注册信息中的用户标识的获取设备注册请求;
步骤s3:所述认证服务器向所述注册插件发送包括自身的第一挑战值和应用参数的设备注册请求;
步骤s4:所述注册插件通过所述浏览器向所述认证设备发送所述设备注册请求,并通过所述浏览器在注册等待页面提示用户按下所述认证设备的按钮;
步骤s5:所述认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,根据所述设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对所述第一公钥和所述密钥句柄签名生成第一签名值,通过所述浏览器向所述注册插件发送包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
步骤s6:所述注册插件向所述认证服务器发送包括所述设备注册数据的第一认证请求;
步骤s7:所述认证服务器从所述硬件证书中获取硬件公钥,使用所述硬件公钥对所述第一签名值验签,得到第一认证结果,若所述第一认证结果为成功,则将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系,向所述注册插件发送第一认证结果,所述注册插件执行步骤s8;若所述第一认证结果为失败,则向所述注册插件发送第一认证结果,所述注册插件执行步骤s8;
步骤s8:所述注册插件向所述网站发送第一认证结果;
步骤s9:所述网站根据所述第一认证结果判断用户是否注册成功,如果是,则通过所述浏览器显示注册成功,结束注册流程;否则,通过所述浏览器显示注册失败,结束注册流程;
步骤s10:所述网站通过所述浏览器显示用户已注册,结束注册流程。
本发明还提供了一种认证设备与网站的集成方法,其特征在于,包括:注册流程,所述注册流程包括:
步骤t1:注册插件接收来自网站的用户注册信息和与所述用户注册信息对应的注册结果标识;
步骤t2:所述注册插件根据所述注册结果标识判断用户是否已注册成功,如果是,则向所述网站发送已注册信息,结束注册流程;否则,向认证服务器发送包括所述用户注册信息中的用户标识的获取设备注册请求,执行步骤t3;
步骤t3:所述注册插件接收来自所述认证服务器的设备注册请求;
步骤t4:所述注册插件通过浏览器向认证设备发送设备注册请求,等待所述认证设备生成设备注册数据;
步骤t5:所述注册插件通过所述浏览器接收所述认证设备生成的设备注册数据;
步骤t6:所述注册插件向所述认证服务器发送包括所述设备注册数据的第一认证请求;
步骤t7:所述注册插件接收来自所述认证服务器的第一认证结果;
步骤t8:所述注册插件向所述网站发送所述第一认证结果,用于所述网站验证用户是否注册成功。
本发明还提供了一种认证设备与网站的集成系统,包括:认证设备、浏览器、网站、注册插件和认证服务器;
所述网站包括:第一接收模块、第一发送模块、第十接收模块、第二判断模块、第十一接收模块和第十发送模块;
所述注册插件包括:第二接收模块、第一判断模块、第二发送模块、第三发送模块、第四接收模块、第五发送模块、第六接收模块、第七发送模块、第九接收模块和第九发送模块;
所述认证服务器包括:第三接收模块、第四发送模块、第七接收模块、第一验签模块、所述第一关联模块和所述第八发送模块;
所述认证设备包括:第五接收模块、第一获取模块、第一生成模块和第六发送模块;
所述浏览器包括:第十二接收模块、第十一发送模块和第一显示模块、第十三接收模块和第二显示模块;
所述第一接收模块,用于通过所述浏览器接收用户注册信息;
所述第一发送模块,用于向所述注册插件发送所述用户注册信息和与所述用户注册信息对应的注册结果标识;
所述第二接收模块,用于接收来自所述网站的用户注册信息和与所述用户注册信息对应的注册结果标识;
所述第一判断模块,用于根据所述注册结果标识判断用户是否已注册成功;
所述第二发送模块,用于当所述第一判断模块判断为是后,向所述网站发送已注册信息;
所述第三发送模块,用于当所述第一判断模块判断为否后,向所述认证服务器发送包括所述用户注册信息中的用户标识的获取设备注册请求;
所述第三接收模块,用于接收来自所述注册插件的包括所述用户注册信息中的用户标识的获取设备注册请求;
所述第四发送模块,用于向所述注册插件发送包括第一挑战值和应用参数的所述设备注册请求;
所述第四接收模块,用于接收来自所述认证服务器的包括所述认证服务器中的第一挑战值和应用参数的所述设备注册请求;
所述第五发送模块,用于向所述浏览器发送设备注册请求;
所述第十二接收模块,用于接收来自所述注册插件的包括所述认证服务器中的第一挑战值和应用参数的设备注册请求;
所述第一显示模块,用于所述第十二接收模块接收到所述设备注册请求后,在注册等待页面上提示用户按下认证设备的按钮;
所述第十一发送模块,用于向所述认证设备发送所述设备注册请求;
所述第五接收模块,用于接收来自所述浏览器的所述设备注册请求;
所述第一获取模块,用于当所述第五接收模块接收到所述设备注册请求后,等待用户按下按钮,获取到用户按下按钮的信息;
所述第一生成模块,用于当所述第一获取模块获取到用户按下按钮的信息后,根据所述设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对所述第一公钥和所述密钥句柄签名生成第一签名值,组织包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第六发送模块,用于通过所述浏览器向所述注册插件发送所述第一生成模块生成的包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第六接收模块,用于接收来自所述浏览器的包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第七发送模块,用于向所述认证服务器发送包括所述设备注册数据的第一认证请求;
所述第七接收模块,用于接收来自所述注册插件的包括所述设备注册数据的第一认证请求;
所述第一验签模块,用于从所述第七接收模块接收到的第一认证请求的硬件证书中获取硬件公钥,使用所述硬件公钥对所述第一签名值验签,得到第一认证结果;
所述第一关联模块,用于若所述第一认证结果为成功,则将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系;
所述第八发送模块,用于当所述第一关联模块将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系后,向所述注册插件发送第一认证结果;若所述第一认证结果为失败,向所述注册插件发送第一认证结果;
所述第九接收模块,用于接收来自所述认证服务器的第一认证结果;
所述第九发送模块,用于向所述网站发送第一认证结果;
所述第十接收模块,用于接收来自所述注册插件的第一认证结果;
所述第二判断模块,用于根据所述第十接收模块接收到的第一认证结果判断用户是否注册成功;
所述第十一接收模块,用于接收来自所述注册插件的已注册信息;
所述第十发送模块,用于当所述第二判断模块判断为是后,向所述浏览器发送注册成功信息;当所述第二判断模块判断为否后,向所述浏览器发送注册失败信息;当所述第十一接收模块接收到来自所述注册插件的已注册信息后,向所述浏览器发送已注册信息;
所述第十三接收模块,用于接收来自所述网站的注册成功信息或注册失败信息或已注册信息;
所述第二显示模块,用于当所述第十三接收模块接收到注册成功信息后,显示用户注册成功;当所述第十三接收模块接收到注册失败信息后,显示用户注册失败;当所述第十三接收模块接收到已注册信息后,显示用户已注册。
本发明又提供了一种认证设备与网站的集成装置,包括:注册插件;
所述注册插件包括:第二接收模块、第一判断模块、第二发送模块、第三发送模块、第四接收模块、第五发送模块、第六接收模块、第七发送模块、第九接收模块和第九发送模块;
所述第二接收模块,用于接收来自网站的用户注册信息和与所述用户注册信息对应的注册结果标识;
所述第一判断模块,用于根据所述注册结果标识判断用户是否已注册成功;
所述第二发送模块,用于当所述第一判断模块判断为是后,向所述网站发送已注册信息;
所述第三发送模块,用于当所述第一判断模块判断为否后,向认证服务器发送包括所述用户注册信息中的用户标识的获取设备注册请求;
所述第四接收模块,用于接收来自所述认证服务器的设备注册请求;
所述第五发送模块,用于通过浏览器向认证设备发送设备注册请求;
所述第六接收模块,用于接收来自所述浏览器的所述认证设备生成的设备注册数据;
所述第七发送模块,用于向所述认证服务器发送包括所述设备注册数据的第一认证请求;
所述第九接收模块,用于接收来自所述认证服务器的第一认证结果;
所述第九发送模块,用于向所述网站发送所述第一认证结果。
本发明的有益效果:本发明提供了一种认证设备与网站的集成方法、系统及装置,本发明将认证设备与应用Joomla技术的网站集成在一起,实现用户在网站上的注册和认证。
附图说明
图1为本发明实施例1提供的一种认证设备与网站的集成方法中的注册方法的流程图;
图2为本发明实施例2提供的一种认证设备与网站的集成方法中的注册方法的流程图;
图3为本发明实施例3提供的一种认证设备与网站的集成方法中的注册方法的流程图;
图4为本发明实施例3提供的一种认证设备与网站的集成方法中的认证方法的流程图;
图5为本发明实施例4提供的一种认证设备与网站的集成方法中的注册方法的流程图;
图6为本发明实施例4提供的一种认证设备与网站的集成方法中的认证方法的流程图;
图7为本发明实施例5提供的一种认证设备与网站的集成系统的结构框图;
图8为本发明实施例6提供的一种认证设备与网站的集成装置的结构框图。
具体实施方法
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例提供了一种认证设备与网站的集成方法,适用于包括:认证设备、浏览器、网站、注册插件和认证服务器的系统,如图1所示,包括:注册流程,注册流程包括:
本实施例中,网站具体为应用Joomla技术开发的网站。
步骤s1:网站通过浏览器接收用户注册信息,向注册插件发送用户注册信息和与用户注册信息对应的注册结果标识;
其中,网站向注册插件发送用户注册信息和与用户注册信息对应的注册结果标识,具体为:网站调用注册插件的第一函数,向注册插件发送用户注册信息和与用户注册信息对应的注册结果标识。
本实施例中,注册插件的第一函数具体为onUserAfterSave函数。
步骤s2:注册插件根据注册结果标识判断用户是否已注册成功,如果是,则向网站发送已注册信息,网站执行步骤s10;否则,向认证服务器发送包括用户注册信息中的用户标识的获取设备注册请求;
步骤s3:认证服务器向注册插件发送包括自身的第一挑战值和应用参数的设备注册请求;
步骤s4:注册插件通过浏览器向认证设备发送设备注册请求,并通过浏览器在注册等待页面提示用户按下认证设备的按钮;
具体地,注册插件生成包括设备注册请求的第一网址重定向请求,向浏览器发送包括设备注册请求的第一网址重定向请求,浏览器根据第一网址重定向请求向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮,并向认证设备发送第一网址重定向请求中的设备注册请求。
步骤s5:认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,根据设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值,通过浏览器向注册插件发送包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;
步骤s6:注册插件向认证服务器发送包括设备注册数据的第一认证请求;
步骤s7:认证服务器从硬件证书中获取硬件公钥,使用硬件公钥对第一签名值验签,得到第一认证结果,若第一认证结果为成功,则将密钥句柄、第一公钥和用户标识建立对应关系,向注册插件发送第一认证结果,注册插件执行步骤s8;若第一认证结果为失败,则向注册插件发送第一认证结果,注册插件执行步骤s8;
步骤s8:注册插件向网站发送第一认证结果;
步骤s9:网站根据第一认证结果判断用户是否注册成功,如果是,则通过浏览器显示注册成功,结束注册流程;否则,通过浏览器显示注册失败,结束注册流程;
步骤s10:网站通过浏览器显示用户已注册,结束注册流程。
本实施例中,步骤s4还可以被替换为:注册插件通过浏览器向认证设备发送设备注册请求并通过浏览器显示注册等待页面;相应地,步骤s5中认证设备接收到设备注册请求后,获取到用户按下按钮的信息之前,还包括:认证设备提示用户按下认证设备的按钮。
进一步地,注册插件通过浏览器向认证设备发送设备注册请求并通过浏览器显示注册等待页面,具体为:注册插件生成包括设备注册请求的第二网址重定向请求,向浏览器发送包括设备注册请求的第二网址重定向请求,浏览器根据第二网址重定向请求向用户显示注册等待页面,并向认证设备发送第二网址重定向请求中的设备注册请求。
本实施例中,注册插件根据注册结果标识判断用户是否已注册成功,具体为:注册插件判断与用户注册信息对应的注册结果标识是否为成功标识,如果是,则判断用户已注册成功;否则,判断用户未注册成功;若网站根据第一认证结果判断用户注册成功,还包括:将与用户注册信息对应的注册结果标识设置为成功标识。
本实施例中,注册插件向认证服务器发送获取设备注册请求之前,还包括:初始化与认证服务器的会话通道。
其中,初始化与认证服务器的会话通道,具体为:注册插件根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例中,系统中还可以包括:认证插件;相应的,本实施例提供的方法中还包括:认证流程,其中,认证流程,包括:
步骤r1:浏览器获取用户登录信息,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
其中,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求,具体为:浏览器调用认证插件中的第二函数向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
本实施例中,认证插件中的第二函数具体为onAfterRender函数。
步骤r2:认证插件向认证服务器发送获取设备认证请求;
步骤r3:认证服务器获取与用户标识对应的密钥句柄,向认证插件发送包括密钥句柄、自身的第二挑战值和应用参数的设备认证请求;
步骤r4:认证插件通过浏览器向认证设备发送设备认证请求,并通过浏览器在认证等待页面提示用户按下认证设备的按钮;
具体地,认证插件向浏览器发送设备认证请求,浏览器向认证设备发送设备认证请求并在认证等待页面提示用户按下认证设备的按钮。
步骤r5:认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对第二挑战值和应用参数签名生成第二签名值,生成包括第二签名值的设备认证数据,向浏览器发送设备认证数据;
步骤r6:浏览器向网站发送设备认证数据和用户登录信息;
步骤r7:网站向认证插件发送设备认证数据和用户登录信息;
具体地,网站调用认证插件的第三函数,向证插件发送设备认证数据和用户登录信息。
本实施例中,认证插件的第三函数具体为onUserTwofactorAuthenticate函数。
步骤r8:认证插件向认证服务器发送包括设备认证数据和用户登录信息中的用户标识的第二认证请求;
步骤r9:认证服务器获取与第二认证请求中的用户标识对应的第一公钥,使用第一公钥对第二签名值验签,得到第二认证结果,向认证插件发送第二认证结果;
步骤r10:认证插件向网站发送第二认证结果;
步骤r11:网站根据第二认证结果判断用户是否登录成功,如果是,则通过浏览器显示登录成功,结束认证流程;否则,通过浏览器显示登录失败,结束认证流程。
本实施例中,步骤r4还可以被替换为:认证插件通过浏览器向认证设备发送设备认证请求并通过浏览器显示认证等待页面;相应地,步骤r5中认证设备接收到设备认证请求后,等待用户按下按钮之前,还包括:认证设备提示用户按下认证设备的按钮。
本实施例中,步骤r1具体为:当浏览器中的浏览器脚本监听到登录点击事件后,浏览器脚本获取浏览器页面中的用户登录信息,生成包括用户登录信息中的用户标识的获取设备认证请求,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;相应地,步骤r6具体为:浏览器中的浏览器脚本向网站发送设备认证数据和用户登录信息。
进一步地,认证设备向浏览器发送设备认证数据后,还包括:浏览器脚本将设备认证数据赋值给浏览器页面中的隐藏表单项;
浏览器中的浏览器脚本向网站发送设备认证数据和用户登录信息具体为:浏览器脚本向网站发送隐藏表单项和用户登录信息。
本实施例中,步骤r2之前,还包括:认证插件初始化与认证服务器的会话通道。
其中,初始化与认证服务器的会话通道,具体为:认证插件根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例提供了一种认证设备与网站的集成方法,该方法将认证设备与网站集成在一起,实现用户在网站上的注册和认证。
实施例2
本实施例提供了一种认证设备与网站的集成方法,包括:注册流程,注册流程如图2所示,包括:
本实施例中,网站具体为应用Joomla技术开发的网站。
步骤t1:注册插件接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识;
步骤t1具体为:注册插件的第一函数被调用,接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识。
本实施例中,注册插件的第一函数具体为onUserAfterSave函数。
步骤t2:注册插件根据注册结果标识判断用户是否已注册成功,如果是,则向网站发送已注册信息,结束注册流程;否则,向认证服务器发送包括用户注册信息中的用户标识的获取设备注册请求,执行步骤t3;
步骤t3:注册插件接收来自认证服务器的设备注册请求;
具体地,注册插件接收来自认证服务器的包括第一挑战值和应用参数的设备注册请求。
步骤t4:注册插件通过浏览器向认证设备发送设备注册请求,等待认证设备生成设备注册数据;
步骤t5:注册插件通过浏览器接收认证设备生成的设备注册数据;
步骤t6:注册插件向认证服务器发送包括设备注册数据的第一认证请求;
步骤t7:注册插件接收来自认证服务器的第一认证结果;
步骤t8:注册插件向网站发送第一认证结果,用于网站验证用户是否注册成功。
本实施例中,步骤t4中注册插件通过浏览器向认证设备发送设备注册请求后,还包括:注册插件通过浏览器在注册等待页面提示用户按下认证设备的按钮,或者步骤t4中注册插件通过浏览器向认证设备发送设备注册请求后,还包括:注册插件通过浏览器显示注册等待页面。
若注册插件通过浏览器在注册等待页面提示用户按下认证设备的按钮,步骤t4具体为:注册插件生成包括设备注册请求的第一网址重定向请求,向浏览器发送包括设备注册请求的第一网址重定向请求,通过浏览器向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮;并通过浏览器向认证设备发送第一网址重定向请求中的设备注册请求,等待认证设备生成设备注册数据。
若注册插件通过浏览器显示注册等待页面,步骤t4具体为:注册插件生成包括设备注册请求的第二网址重定向请求,向浏览器发送包括设备注册请求的第二网址重定向请求,通过浏览器向用户显示注册等待页面,并通过浏览器向认证设备发送第二网址重定向请求中的设备注册请求,等待认证设备生成设备注册数据。
若注册插件通过浏览器显示注册等待页面,认证设备生成设备注册数据具体为:认证设备提示用户按下认证设备的按钮,等待用户按下按钮,当获取到用户按下按钮的信息后,根据设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值,组织包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据。
若注册插件通过浏览器在注册等待页面提示用户按下认证设备的按钮,认证设备生成设备注册数据具体为:认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,根据设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值,组织包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据。
进一步地,本实施例中提供的方法中,还包括:当认证服务器接收到来自注册插件的包括用户注册信息中的用户标识的获取设备注册请求后,向注册插件发送包括第一挑战值和应用参数的设备注册请求;当认证服务器接收到来自注册插件的第一认证请求后,认证服务器从硬件证书中获取硬件公钥,使用硬件公钥对第一签名值验签,得到第一认证结果,若第一认证结果为成功,则将密钥句柄、第一公钥和用户标识建立对应关系,向注册插件发送第一认证结果;若第一认证结果为失败,则向注册插件发送第一认证结果。
本实施例中,网站验证用户是否注册成功具体为:网站根据第一认证结果判断用户是否注册成功,如果是,则通过浏览器显示注册成功,结束注册流程;否则,通过浏览器显示注册失败,结束注册流程。
进一步地,注册插件根据注册结果标识判断用户是否已注册成功,具体为:注册插件判断与用户注册信息对应的注册结果标识是否为成功标识,如果是,则判断用户已注册成功;否则,判断用户未注册成功;若网站根据第一认证结果判断用户注册成功,还包括:网站将与用户注册信息对应的注册结果标识设置为成功标识。
本实施例中,注册插件向认证服务器发送获取设备注册请求之前,还包括:初始化与认证服务器的会话通道。
其中,初始化与认证服务器的会话通道,具体为:注册插件根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例提供的方法中,还包括:认证流程,认证流程包括:
步骤w1:认证插件接收来自浏览器的包括用户登录信息中的用户标识的获取设备认证请求;
步骤w1具体为:认证插件中的第二函数被调用,接收来自浏览器的包括用户登录信息中的用户标识的获取设备认证请求。
本实施例中,认证插件中的第二函数具体为onAfterRender函数。
步骤w2:认证插件向认证服务器发送获取设备认证请求;
步骤w3:认证插件接收来自认证服务器的设备认证请求;
具体地,认证插件接收来自认证服务器的包括密钥句柄、第二挑战值和应用参数的设备认证请求;
步骤w4:认证插件通过浏览器向认证设备发送设备认证请求;等待认证设备生成设备认证数据;
本实施例中,步骤w4中还可以包括:认证插件通过浏览器在认证等待页面提示用户按下认证设备的按钮或认证插件通过浏览器显示认证等待页面。
若认证插件通过浏览器显示认证等待页面,认证设备生成设备认证数据,具体为:认证设备提示用户按下认证设备的按钮,等待用户按下按钮,当获取到用户按下按钮的信息后,获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对设备认证请求中的第二挑战值和应用参数签名生成第二签名值,生成包括第二签名值的设备认证数据。
若认证插件通过浏览器在认证等待页面提示用户按下认证设备的按钮,认证设备生成设备认证数据,具体为:认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对设备认证请求中的第二挑战值和应用参数签名生成第二签名值,生成包括第二签名值的设备认证数据。
进一步地,本实施例提供的方法中,还包括:当认证服务器接收来自认证插件的获取设备认证请求后,获取与获取认证设备请求中的用户标识对应的密钥句柄,向认证插件发送包括密钥句柄、自身的第二挑战值和应用参数的设备认证请求;
当认证服务器接收到来自认证插件的包括设备认证数据和用户登录信息中的用户标识的第二认证请求后,获取与第二认证请求中的用户标识对应的第一公钥,使用第一公钥对第二签名值验签,得到第二认证结果,向认证插件发送第二认证结果。
步骤w5:当认证插件通过网站接收到设备认证数据和用户登录信息后,认证插件向认证服务器发送包括设备认证数据和用户登录信息中的用户标识的第二认证请求;
其中,认证插件通过网站接收设备认证数据和用户登录信息,具体为:认证插件的第三函数被调用,接收来自网站的设备认证数据和用户登录信息。
本实施例中,认证插件的第三函数具体为onUserTwofactorAuthenticate函数。
步骤w6:认证插件接收来自认证服务器的第二认证结果;
步骤w7:认证插件向网站发送第二认证结果,用于网站验证用户是否登录成功。
本实施例中,网站验证用户是否登录成功具体为:网站根据第二认证结果判断用户是否登录成功,如果是,则通过浏览器显示登录成功,结束认证流程;否则,通过浏览器显示登录失败,结束认证流程。
本实施例中,步骤w4之后,步骤w5之前还包括:认证设备向浏览器发送设备认证数据;浏览器向网站发送设备认证数据和用户登录信息。
进一步地,w1之前还包括:浏览器获取用户登录信息,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
再进一步地,浏览器获取用户登录信息,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求,具体为:当浏览器中的浏览器脚本监听到登录点击事件后,浏览器脚本获取浏览器页面中的用户登录信息,生成包括用户登录信息中的用户标识的获取设备认证请求,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;相应地,浏览器向网站发送设备认证数据和用户登录信息,具体为:浏览器中的浏览器脚本向网站发送设备认证数据和用户登录信息。
更进一步地,认证设备向浏览器发送设备认证数据后,还包括:浏览器脚本将设备认证数据赋值给浏览器页面中的隐藏表单项;
浏览器脚本向网站发送设备认证数据和用户登录信息,具体为:浏览器脚本向网站发送隐藏表单项和用户登录信息。
本实施例中,步骤w2之前,还包括:认证插件初始化与认证服务器的会话通道。
其中,认证插件初始化与认证服务器的会话通道,具体为:认证插件根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例提供了一种认证设备与网站的集成方法,该方法将认证设备与网站集成在一起,实现用户在网站上的注册和认证。
实施例3
本实施例提供了一种认证设备与网站的集成方法,包括注册方法和认证方法。其中,注册方法如图3所示,包括:
本实施例中,网站具体为应用Joomla技术开发的网站。
步骤101:浏览器向网站发送包括用户注册信息的用户注册请求;
步骤102:网站向注册插件发送用户注册信息和与用户注册信息对应的注册结果标识;
本实施例中,注册插件为user类型的插件。
具体地,当网站接收到来自浏览器的用户注册信息的用户注册请求后,将用户注册信息保存到数据库中,获取与用户注册信息对应的注册结果标识,将用户注册信息和与用户注册信息对应的注册结果标识作为参数,调用注册插件的第一函数,向注册插件发送用户注册信息和与用户注册信息对应的注册结果标识。
本实施例中,用户注册信息可以包括用户标识、用户密码和用户邮箱等信息。其中,用户标识为用于标识用户的唯一识别信息,优选地,用户标识为用户名。
步骤103:注册插件根据与用户注册信息对应的注册结果标识判断用户是否已注册成功,如果是,则执行步骤122;否则,执行步骤104;
当注册插件的第一函数被调用后,注册插件接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识,判断与用户注册信息对应的注册结果标识是否为成功标识true,如果是,则判断用户是已注册成功,则执行步骤122;否则,判断用户未注册成功,执行步骤104。
本实施例中,注册插件的第一函数具体为onUserAfterSave函数。
步骤104:注册插件初始化与认证服务器的会话通道;
具体地,注册插件根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例中,预设的应用配置信息中包括预设的应用标识appid、预设的应用验证序号appkey、预设应用统一资源定位符appurl和预设的应用保护主机信息app_protected_host等。
步骤105:注册插件通过会话通道向认证服务器发送包括用户注册信息中的用户标识的获取设备注册请求;
步骤106:认证服务器生成包括第一挑战值和应用参数的设备注册请求;
步骤107:认证服务器通过会话通道向注册插件发送设备注册请求;
步骤108:注册插件向浏览器发送设备注册请求;
具体地,注册插件生成包括设备注册请求的第一网址重定向请求,向浏览器发送包括设备注册请求的第一网址重定向请求。
例如:
需要说明的是,URL重定向(URL redirection,或称网址重定向或网域名称转址),是指当使用者浏览某个网址时,将他导向到另一个网址的技术。本实施例中,注册插件向浏览器发送包括设备注册请求的网址重定向请求,可以实现当用户使用网站进行注册时,将用户导向了注册等待页面的网址上去的技术效果。
步骤109:浏览器提示用户按下认证设备的按钮,并向认证设备发送设备注册请求;
具体地,浏览器向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮;并向认证设备发送设备注册请求。
步骤110:认证设备等待用户按下按钮,根据设备注册请求生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值,组织包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;
其中,硬件证书中包括硬件公钥。
步骤111:认证设备向浏览器发送设备注册数据;
步骤112:浏览器向注册插件发送设备注册数据;
步骤113:注册插件通过会话通道向认证服务器发送包括设备注册数据的第一认证请求;
步骤114:认证服务器从设备注册数据中的硬件证书中获取硬件公钥,使用硬件公钥对设备注册数据中的第一签名值验签,得到第一认证结果,若第一认证结果为成功,则将密钥句柄、第一公钥和用户标识建立对应关系,执行步骤115;若第一认证结果为失败,则执行步骤115;
步骤115:认证服务器根据会话通道向注册插件发送第一认证结果;
步骤116:注册插件向网站发送第一认证结果;
步骤117:网站根据来自认证服务器的第一认证结果判断用户是否注册成功,如果是,则执行步骤118;否则,执行步骤120;
当网站接收到来自注册插件返回的第一认证结果后,判断第一认证结果是否为TRUE,如果是,则判断用户注册成功,并将与用户注册信息对应的注册结果标识设置为成功标识并执行步骤118;否则,判断用户注册失败,执行步骤120。
步骤118:网站向浏览器发送注册成功信息;;
步骤119:浏览器显示注册成功,结束注册流程。
步骤120:网站向浏览器发送注册失败信息;
步骤121:浏览器显示注册失败,结束注册流程。
步骤122:注册插件向网站发送已注册信息;
步骤123:网站向浏览器发送已注册信息;
步骤124:浏览器显示用户已注册信息,结束注册流程。
本实施例中,步骤109还可以替换为:浏览器显示注册等待页面并向认证设备发送设备注册请求;步骤110中还包括:认证设备提示用户按下认证设备的按钮。
相应地,步骤108具体为:注册插件生成包括设备注册请求的第二网址重定向请求,向浏览器发送包括设备注册请求的第二网址重定向请求。浏览器显示注册等待页面并向认证设备发送设备注册请求具体为:浏览器根据第二网址重定向请求向用户显示注册等待页面,并向认证设备发送第二网址重定向请求中的设备注册请求。
本施例提供的一种认证设备与网站的集成方法中的认证方法,如图4所示,包括:
步骤201:浏览器获取包括用户登录信息的用户第一登录请求;
当浏览器中的浏览器脚本监听到登录点击事件后,浏览器脚本获取浏览器页面中的包括用户登录信息的用户第一登录请求,生成包括用户登录信息中的用户标识的获取设备认证请求。
优选地,浏览器脚本为JavaScript脚本,简称JS脚本。用户登录信息包括用户标识和用户密码。
步骤202:浏览器向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
本实施例中,认证插件的类型为twofactorauth类型。
具体地,浏览器脚本使用ajax的post()方法向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
当浏览器脚本使用ajax的post()方法向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求后,认证插件中的第二函数被调用,接收到包括用户登录信息中的用户标识的获取设备认证请求。
本实施例中,认证插件中的第二函数具体为onAfterRender函数。
步骤203:认证插件初始化与认证服务器的会话通道;
具体地,认证插件根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例中,预设的应用配置信息中包括预设的应用标识appid、预设的应用验证序号appkey、预设应用统一资源定位符appurl和预设的应用保护主机信息app_protected_host等。
步骤204:认证插件通过会话通道向认证服务器发送包括用户登录信息中的用户标识的获取设备认证请求;
步骤205:认证服务器获取与用户标识对应的密钥句柄,生成包括密钥句柄、第二挑战值和应用参数的设备认证请求;
步骤206:认证服务器通过会话通道向认证插件发送设备认证请求;
步骤207:认证插件向浏览器发送设备认证请求;
具体地,认证插件中的第二函数通过echo语句向浏览器的浏览器脚本发送设备认证请求。
步骤208:浏览器提示用户按下认证设备的按钮,并向认证设备发送设备认证请求;
具体地,浏览器脚本在浏览器的认证等待页面提示用户按下认证设备的按钮,并向认证设备发送设备认证请求。
步骤209:当用户按下认证设备的按钮后,认证设备获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对第二挑战值和应用参数签名得到第二签名值,生成包括第二签名值的设备认证数据;
步骤210:认证设备向浏览器发送设备认证数据;
具体地,当浏览器接收到认证设备的设备认证数据后,浏览器中浏览器脚本将设备认证数据赋值给浏览器页面中的隐藏表单项“secretkey”。
步骤211:浏览器向网站发送包括设备认证数据和用户登录信息的用户第二登陆请求;
具体地,浏览器脚本向网站发送包括设备认证数据和用户登录信息的用户第二登陆请求。
步骤212:网站向认证插件发送设备认证数据和用户登录信息;
当网站向认证插件发送设备认证数据和用户登录信息后,认证插件的第三函数被调用,收来自网站的设备认证数据和用户登录信息。
本实施例中,认证插件的第三函数具体为onUserTwofactorAuthenticate函数。
步骤213:认证插件向认证服务器发送包括设备认证数据和用户登录信息中的用户标识的第二认证请求;
步骤214:认证服务器获取与第二认证请求中的用户标识对应的第一公钥,使用第一公钥对第二签名值验签,得到第二认证结果;
步骤215:认证服务器根据会话通道向认证插件发送第二认证结果;
步骤216:认证插件向网站发送第二认证结果;
步骤217:网站根据第二认证结果判断用户是否登录成功,如果是,则向浏览器发送登录成功信息,浏览器执行步骤218;否则,向浏览器发送登录失败信息,浏览器执行步骤219;
具体地,网站判断第二认证结果是否为true,如果是,则判断用户登录成功,浏览器执行步骤218;否则,判断用户登录失败,浏览器执行步骤219。
步骤218:浏览器显示登录成功,结束认证流程。
步骤219:浏览器显示登录失败,结束认证流程。
本实施例中步骤208还可以被替换为:浏览器向认证设备发送设备认证请求并显示认证等待页面;
相应地,步骤209中当认证设备接收到设备认证请求后,等待用户按下按钮之前,还包括:认证设备提示用户按下认证设备的按钮。
实施例4
本实施例提供了一种认证设备与网站的集成方法,包括注册方法和认证方法。其中,注册方法如图5所示,包括:
本实施例中,网站具体为应用Joomla技术开发的网站。
步骤301:注册插件接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识;
具体地,当网站接收到来自浏览器的包括用户注册信息的用户注册请求后,将用户注册信息保存到数据库中,获取与用户注册信息对应的注册结果标识,将用户注册信息和与用户注册信息对应的注册结果标识作为参数,调用注册插件的第一函数,向注册插件发送用户注册信息和与用户注册信息对应的注册结果标识。
当注册插件的第一函数被调用后,注册插件接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识。
本实施例中,用户注册信息可以包括用户标识、用户密码和用户邮箱等信息。
其中,用户标识为用于标识用户的唯一识别信息,优选地,用户标识为用户名。
本实施例中,注册插件的第一函数具体为onUserAfterSave函数。
步骤302:注册插件根据与用户注册信息对应的注册结果标识判断用户是否已注册成功,如果是,则向网站返回已注册信息,结束注册流程;否则,执行步骤303。
具体地,注册插件判断与用户注册信息对应的注册结果标识是否为成功标识true,如果是,则判断用户已注册成功,则向网站返回已注册信息,结束注册流程;否则,判断用户未注册成功,执行步骤303。
步骤303:注册插件初始化与认证服务器的会话通道;
具体地,注册插件根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例中,预设的应用配置信息中包括预设的应用标识appid、预设的应用验证序号appkey、预设应用统一资源定位符appurl和预设的应用保护主机信息app_protected_host等。
步骤304:注册插件通过会话通道向认证服务器发送包括用户注册信息中的用户标识的获取设备注册请求;通过会话通道接收来自认证服务器的设备注册请求;
例如:
resp_data为接收到的来自认证服务器的设备注册请求。
本实施例中,当认证服务器接收到来自认证插件的获取设备注册请求后,生成包括第一挑战值和应用参数的设备注册请求;通过会话通道向注册插件发送设备注册请求。
步骤305:注册插件向浏览器发送设备注册请求;
具体地,注册插件生成包括设备注册请求的第一网址重定向请求,向浏览器发送包括设备注册请求的第一网址重定向请求。
例如:
本实施例中,当注册插件向浏览器发送包括设备注册请求的第一网址重定向请求后,浏览器提示用户按下认证设备的按钮,并向认证设备发送设备注册请求;认证设备等待用户按下按钮,根据设备注册请求生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值,组织包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;向浏览器发送设备注册数据;浏览器向注册插件发送设备注册数据。
本实施例中,步骤305还可以具体为:注册插件生成包括设备注册请求的第二网址重定向请求,向浏览器发送包括设备注册请求的第二网址重定向请求。相应地,当浏览器接收到来自注册插件的包括设备注册请求的第二网址重定向请求后,浏览器显示注册等待页面,并向认证设备发送设备注册请求。认证设备提示用户按下认证设备的按键,当用户按下按钮后,认证设备根据设备注册请求生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值,组织包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;向浏览器发送设备注册数据;浏览器向注册插件发送设备注册数据。
需要说明的是,URL重定向(URL redirection,或称网址重定向或网域名称转址),是指当使用者浏览某个网址时,将他导向到另一个网址的技术。本实施例中,注册插件向浏览器发送包括设备注册请求的网址重定向请求的技术手段,可以实现当用户使用网站进行注册时,将用户导向了注册等待页面的网址上去的技术效果。
步骤306:注册插件等待接收设备注册数据,当接收到来自浏览器的设备注册数据后,通过会话通道向认证服务器发送包括设备注册数据的第一认证请求;接收来自认证服务器的第一认证结果;
本实施例中,当认证服务器通过会话通道接收到包括设备注册数据的第一认证请求后,认证服务器从设备注册数据中的硬件证书中获取硬件公钥,使用硬件公钥对设备注册数据中的第一签名值验签,得到第一认证结果,若第一认证结果为成功,则将密钥句柄、第一公钥和用户标识建立对应关系,向注册插件发送第一认证结果;若第一认证结果为失败,则向注册插件发送第一认证结果。
步骤307:注册插件向网站返回第一认证结果。
当网站接收到来自注册插件的第一认证结果后,判断第一认证结果是否为TRUE,如果是,则判断用户注册成功,并将与用户注册信息对应的注册结果标识设置为成功标识并向浏览器发送注册成功信息,浏览器显示注册成功;否则,判断用户注册失败,向浏览器发送注册失败信息;显示注册失败。
本施例提供的一种认证设备与网站的集成方法中的认证方法,如图6所示,包括:
步骤401:认证插件接收来自浏览器的包括用户登录信息中的用户标识的获取设备认证请求;
本实施例中,认证插件的类型为twofactorauth类型。
当浏览器中的浏览器脚本监听到登录点击事件后,浏览器脚本获取浏览器页面中的包括用户登录信息的用户第一登录请求,生成包括用户登录信息中的用户标识的获取设备认证请求,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求,认证插件接收来自浏览器的包括用户登录信息中的用户标识的获取设备认证请求。
具体地,当浏览器中的浏览器脚本监听到登录点击事件后,浏览器脚本获取浏览器页面中的包括用户登录信息的用户第一登录请求,生成包括用户登录信息中的用户标识的获取设备认证请求,使用ajax的post()方法向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。当浏览器脚本使用ajax的post()方法向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求后,认证插件中的第二函数被调用,接收到包括用户登录信息中的用户标识的获取设备认证请求。
优选地,浏览器脚本为JavaScript脚本,简称JS脚本。用户登录信息包括用户标识和用户密码。
本实施例中,认证插件中的第二函数具体为onAfterRender函数。
步骤402:认证插件初始化与认证服务器的会话通道;
具体地,认证插件根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例中,预设的应用配置信息中包括预设的应用标识appid、预设的应用验证序号appkey、预设应用统一资源定位符appurl和预设的应用保护主机信息app_protected_host等。
步骤403:认证插件通过会话通道向认证服务器发送包括用户登录信息中的用户标识的获取设备认证请求;通过会话通道接收来自认证服务器的设备认证请求;
例如:
$urlstring=$CloudentifyU2FSDK->getUrl($username,$app_protected_host,"signData");
$resp_data="";
$ret=$CloudentifyU2FSDK->do_http($urlstring,$resp_data);其中,resp_data为接收来自认证服务器的设备认证请求。
本实施例中,当认证服务器接收到来自认证插件的包括用户登录信息中的用户标识的获取设备认证请求后,获取与用户标识对应的密钥句柄,生成包括密钥句柄、第二挑战值和应用参数的认证设备请求;通过会话通道向认证插件发送设备认证请求。
步骤404:认证插件向浏览器发送设备认证请求;
步骤404具体地,认证插件中的第二函数通过echo语句向浏览器的浏览器脚本发送设备认证请求。
本实施例中,当认证插件向浏览器发送设备认证请求后,浏览器提示用户按下认证设备的按钮,并向认证设备发送设备认证请求;当用户按下认证设备的按钮后,获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对第二挑战值和应用参数签名得到第二签名值,生成包括第二签名值的设备认证数据;浏览器向网站发送包括设备认证数据和用户登录信息的用户第二登陆请求;网站向认证插件发送设备认证数据和用户登录信息。
具体地,认证插件中的第二函数通过echo语句向浏览器的浏览器脚本发送设备认证请求后,浏览器脚本在浏览器的认证等待页面提示用户按下认证设备的按钮,并向认证设备发送设备认证请求,当用户按下认证设备的按钮后,认证设备获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对第二挑战值和应用参数签名得到第二签名值,生成包括第二签名值的设备认证数据;认证设备向浏览器发送设备认证数据;当浏览器接收到认证设备的设备认证数据后,浏览器脚本将设备认证数据赋值给浏览器页面中的隐藏表单项“secretkey”,浏览器脚本向网站发送包括设备认证数据和用户登录信息的用户第二登陆请求,网站将设备认证数据和用户登录信息作为参数,调用认证插件的第三函数。
本实施例中,认证插件的第三函数具体为onUserTwofactorAuthenticate函数。
步骤405:认证插件等待接收设备认证数据,当接收到来自网站的设备注册数据和用户登录信息后,向认证服务器发送包括设备认证数据和用户登录信息中的用户标识的第二认证请求,通过会话通道接收来自认证服务器的第二认证结果;
具体地,认证插件等待接收设备认证数据,当接收到来自网站的设备注册数据和用户登录信息后,认证插件的第三函数被调用,向认证服务器发送包括设备认证数据和用户登录信息中的用户标识的第二认证请求,通过会话通道接收来自认证服务器的第二认证结果。
其中,向认证服务器发送包括设备认证数据和用户登录信息中的用户标识的第二认证请求,通过会话通道接收来自认证服务器的第二认证结果的一种具体实现方式可以如下所示:
$check=$this->validateCloudentifyOTP($appid,$appkey,$appurl,$otp,$username);其中,otp为设备认证数据,username为用户标识,check为接收来自认证服务器的第二认证结果。
本实施例中,当认证服务器通过会话通道接收到包括设备认证数据和用户登录信息中的用户标识的第二认证请求后,获取与第二认证请求中的用户标识对应的第一公钥,使用第一公钥对第二签名值验签,得到第二认证结果,通过会话通道向认证插件发送第二认证结果。
步骤406:认证插件向网站发送第二认证结果;
当网站接收到来自认证插件的第二认证结果后,判断第二认证结果是否为TRUE,如果是,则判断用户登录成功,向浏览器发送登录成功信息,浏览器显示登录成功,结束认证流程。否则,判断用户登录失败,向浏览器发送登录失败信息,结束认证流程。
实施例5
本实施例提供了一种认证设备与网站的集成系统,如图7所示,包括认证设备、浏览器、网站、注册插件和认证服务器;
本实施例中,网站具体为应用Joomla技术开发的网站。
网站包括:第一接收模块01、第一发送模块02、第十接收模块26、第二判断模块27、第十一接收模块28和第十发送模块29;
注册插件包括:第二接收模块03、第一判断模块04、第二发送模块05、第三发送模块06、第四接收模块09、第五发送模块10、第六接收模块18、第七发送模块19、第九接收模块24和第九发送模块25;
认证服务器包括:第三接收模块07、第四发送模块08、第七接收模块20、第一验签模块21、第一关联模块22和第八发送模块23;
认证设备包括:第五接收模块14、第一获取模块15、第一生成模块16和第六发送模块17;
浏览器包括:第十二接收模块11、第十一发送模块13和第一显示模块12、第十三接收模块30和第二显示模块31;
第一接收模块01,用于通过浏览器接收用户注册信息;
第一发送模块02,用于向注册插件发送用户注册信息和与用户注册信息对应的注册结果标识;
第一发送模块02,具体用于调用注册插件的第一函数,向注册插件发送用户注册信息和与用户注册信息对应的注册结果标识。
本实施例中,注册插件的第一函数具体为onUserAfterSave函数。
第二接收模块03,用于接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识;
第一判断模块04,用于根据注册结果标识判断用户是否已注册成功;
第一判断模块04,具体用于判断与用户注册信息对应的注册结果标识是否为成功标识,如果是,则判断用户已注册成功;否则,判断用户未注册成功。
第二发送模块05,用于当第一判断模块04判断为是后,向网站发送已注册信息;
第三发送模块06,用于当第一判断模块04判断为否后,向认证服务器发送包括用户注册信息中的用户标识的获取设备注册请求;
第三接收模块07,用于接收来自注册插件的包括用户注册信息中的用户标识的获取设备注册请求;
第四发送模块08,用于向注册插件发送包括第一挑战值和应用参数的设备注册请求;
第四接收模块09,用于接收来自认证服务器的包括认证服务器中的第一挑战值和应用参数的设备注册请求;
第五发送模块10,用于向浏览器发送设备注册请求;
第五发送模块10具体包括:第一生成单元和第一发送单元;
第一生成单元,用于生成包括设备注册请求的第一网址重定向请求;
第一发送单元,用于向浏览器发送包括设备注册请求的第一网址重定向请求。
第十二接收模块11,用于接收来自注册插件的设备注册请求;
第十二接收模块11,具体用于接收来自注册插件的包括认证服务器中的第一挑战值和应用参数的设备注册请求的第一网址重定向请求。
第一显示模块12,用于第十二接收模块11接收到设备注册请求后,在注册等待页面上提示用户按下认证设备的按钮;
第一显示模块12,具体用于根据第一网址重定向请求向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮。
第十一发送模块13,用于向认证设备发送设备注册请求;
第十一发送模块13,具体用于向认证设备发送第一网址重定向请求中的设备注册请求。
第五接收模块14,用于接收来自浏览器的设备注册请求;
第一获取模块15,用于当第五接收模块14接收到设备注册请求后,等待用户按下按钮,获取到用户按下按钮的信息;
第一生成模块16,用于当第一获取模块15获取到用户按下按钮的信息后,根据设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值;组织包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;
第六发送模块17,用于通过浏览器向注册插件发送第一生成模块16生成的包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;
第六接收模块18,用于接收来自浏览器的包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;
第七发送模块19,用于向认证服务器发送包括设备注册数据的第一认证请求;
第七接收模块20,用于接收来自注册插件的包括设备注册数据的第一认证请求;
第一验签模块21,用于从第七接收模块20接收到的第一认证请求的硬件证书中获取硬件公钥,使用硬件公钥对第一签名值验签,得到第一认证结果;
第一关联模块22,用于若第一认证结果为成功,则将密钥句柄、第一公钥和用户标识建立对应关系;
第八发送模块23,用于当第一关联模块22将密钥句柄、第一公钥和用户标识建立对应关系后,向注册插件发送第一认证结果;若第一认证结果为失败,向注册插件发送第一认证结果;
第九接收模块24,用于接收来自认证服务器的第一认证结果;
第九发送模块25,用于向网站发送第一认证结果;
第十接收模块26,用于接收来自注册插件的第一认证结果;
第二判断模块27,用于根据第十接收模块26接收到的第一认证结果判断用户是否注册成功;
第十一接收模块28,用于接收来自注册插件的已注册信息;
第十发送模块29,用于当第二判断模块27判断为是后,向浏览器发送注册成功信息;当第二判断模块27判断为否后,向浏览器发送注册失败信息;当第十一接收模块28接收到来自注册插件的已注册信息后,向浏览器发送已注册信息;
第十三接收模块30,用于接收来自网站的注册成功信息或注册失败信息或已注册信息;
第二显示模块31,用于当第十三接收模块30接收到注册成功信息后,显示用户注册成功;当第十三接收模块30接收到注册失败信息后,显示用户注册失败;当第十三接收模块30接收到已注册信息后,显示用户已注册。
本实施例中,网站还包括第一设置模块;
第一设置模块,用于当第二判断模块27判断为是后,将与用户注册信息对应的注册结果标识设置为成功标识。
本实施例中,认证设备还可以包括:第三显示模块;相应地:
第一显示模块12,或者用于第十二接收模块11接收到设备注册请求后,显示注册等待页面;
第三显示模块,用于当第五接收模块14接收到设备注册请求后,第一获取模块15获取到用户按下按钮的信息之前,提示用户按下认证设备的按钮。
当认证设备还包括:第三显示模块时,进一步地,第五发送模块10或者可以具体包括:第二生成单元和第二发送单元;第二生成单元,用于生成包括设备注册请求的第二网址重定向请求;第二发送单元,用于向浏览器发送包括设备注册请求的第二网址重定向请求;第十二接收模块11,或者具体用于接收来自浏览器的包括设备注册请求的第二网址重定向请求;第一显示模块12,或者具体用于根据第二网址重定向请求向用户显示注册等待页面;第十一发送模块13,或者具体用于向认证设备发送第二网址重定向请求中的设备注册请求。
本实施例提供的一种集成认证设备与网站的集成系统中,在包括如图7所示的认证设备、浏览器、网站、注册插件和认证服务器的基础上,还可以包括认证插件,相应的:
浏览器还包括:第二获取模块、第十二发送模块、第十七接收模块、第四显示模块、第十六发送模块、第十九接收模块、第十八发送模块、第二十四接收模块和第五显示模块;
认证插件包括:第十四接收模块、第十三发送模块、第十六接收模块、第十五发送模块、第二十一接收模块、第二十发送模块、第二十三接收模块和第二十二发送模块;
认证服务器还包括:第十五接收模块、第三获取模块、第十四发送模块、第二十二接收模块、第二验签模块和第二十一发送模块;
认证设备还包括:第十八接收模块、第四获取模块、第二生成模块和第十七发送模块;
网站还包括:第二十接收模块、第十九发送模块、第二十四接收模块、第三判断模块和第二十三发送模块;
第二获取模块,用于获取用户登录信息;
第二获取模块,具体用于当第十四接收模块接收来自浏览器的包括用户登录信息中的用户标识的获取设备认证请求之前,获取用户登录信息;
第十二发送模块,用于向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
第十二发送模块,具体用于调用认证插件中的第二函数向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
本实施例中,认证插件中的第二函数具体为onAfterRender函数。
第十四接收模块,用于接收来自浏览器的获取设备认证请求;
第十三发送模块,用于向认证服务器发送获取设备认证请求;
第十五接收模块,用于接收来自认证插件的获取设备认证请求;
第三获取模块,用于获取与获取认证设备请求中的用户标识对应的密钥句柄;
第十四发送模块,用于向认证插件发送包括密钥句柄、自身的第二挑战值和应用参数的设备认证请求;
第十六接收模块,用于接收来自认证服务器的设备认证请求;
第十五发送模块,用于向浏览器发送设备认证请求;
第十七接收模块,用于接收来自认证插件的设备认证请求;
第四显示模块,用于在认证等待页面提示用户按下认证设备的按钮;
第十六发送模块,用于向认证设备发送设备认证请求;
第十八接收模块,用于接收来自浏览器的设备认证请求;
第四获取模块,用于等待用户按下按钮,获取用户按下按钮的信息;
第二生成模块,用于获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对第二挑战值和应用参数签名生成第二签名值,生成包括第二签名值的设备认证数据;
第十七发送模块,用于向浏览器发送设备认证数据;
第十九接收模块,用于接收来自认证设备的设备认证数据;
第十八发送模块,用于向网站发送设备认证数据和用户登录信息;
第二十接收模块,用于接收来自浏览器的设备认证数据和用户登录信息;
第十九发送模块,用于向认证插件发送设备认证数据和用户登录信息;
第十九发送模块,具体用于调用认证插件的第三函数,向证插件发送设备认证数据和用户登录信息。
本实施例中,认证插件的第三函数具体为onUserTwofactorAuthenticate函数。
第二十一接收模块,用于接收来自网站的设备认证数据和用户登录信息;
第二十发送模块,用于向认证服务器发送包括设备认证数据和用户登录信息中的用户标识的第二认证请求;
第二十二接收模块,用于接收来自认证插件的第二认证请求;
第二验签模块,用于获取与第二认证请求中的用户标识对应的第一公钥,使用第一公钥对第二签名值验签,得到第二认证结果;
第二十一发送模块,用于向认证插件发送第二认证结果;
第二十三接收模块,用于接收来自认证服务器的第二认证结果;
第二十二发送模块,用于向网站发送第二认证结果;
第二十四接收模块,用于接收来自认证插件的第二认证结果;
第三判断模块,用于根据第二认证结果判断用户是否登录成功;
第二十三发送模块,用于当第三判断模块判断为是后,向浏览器发送登录成功信息;当第三判断模块判断为否后,向浏览器发送登录失败信息;
第二十四接收模块,用于接收来自网站的登录成功信息或登录失败信息;
第五显示模块,用于当第二十四接收模块接收到登录成功信息后,显示用户登录成功;当第二十四接收模块接收到登录失败信息后,显示用户登录失败。
本实施例中,认证设备还包括:第六显示模块;相应地:第四显示模块,或者用于显示认证等待页面;第六显示模块,用于当第十八接收模块接收到设备认证请求后,第四获取模块获取到用户按下按钮的信息前,提示用户按下认证设备的按钮。
本实施例中,浏览器中包括浏览器脚本,相应地:
第二获取模块,具体用于当浏览器中的浏览器脚本监听到登录点击事件后,通过浏览器脚本获取浏览器页面中的用户登录信息;
第十二发送模块,具体用于通过浏览器脚本生成包括用户登录信息中的用户标识的获取设备认证请求,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
第十八发送模块,具体用于通过浏览器脚本向网站发送设备认证数据和所述用户登录信息。
进一步地,浏览器中还包括:第一赋值模块;
第一赋值模块,用于当第十七发送模块向浏览器发送设备认证数据后,通过浏览器脚本将设备认证数据赋值给浏览器页面中的隐藏表单项;
第十八发送模块,具体用于通过浏览器脚本向网站发送隐藏表单项和用户登录信息。
本实施例中,注册插件还包括第一初始化模块;
第一初始化模块,用于第三发送模块06向认证服务器发送获取设备注册请求之前,初始化与认证服务器的会话通道。
第一初始化模块,具体用于第三发送模块06向认证服务器发送获取设备注册请求之前,根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例中,认证插件中还包括:第二初始化模块;
第二初始化模块,用于第十三发送模块向认证服务器发送获取设备认证请求之前,初始化与认证服务器的会话通道。
第二初始化模块,具体用于第十三发送模块向认证服务器发送获取设备认证请求之前,根据预设的应用配置信息初始化与认证服务器的会话通道。
本实施例提供了一种认证设备与网站的集成系统,系统将认证设备与网站集成在一起,实现用户在网站上的注册和认证。
实施例6
本实施例提供了一种认证设备与网站的集成装置,如图8所示,包括:注册插件;
本实施例中,网站具体为应用Joomla技术开发的网站。
注册插件包括:第二接收模块03、第一判断模块04、第二发送模块05、第三发送模块06、第四接收模块09、第五发送模块10、第六接收模块18、第七发送模块19、第九接收模块24和第九发送模块25;
第二接收模块03,用于接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识;
第二接收模块03,具体用于当注册插件的第一函数被调用时,接收来自网站的用户注册信息和与用户注册信息对应的注册结果标识。
本实施例中,注册插件的第一函数具体为onUserAfterSave函数。
第一判断模块04,用于根据注册结果标识判断用户是否已注册成功;
第二发送模块05,用于当第一判断模块04判断为是后,向网站发送已注册信息;
第三发送模块06,用于当第一判断模块04判断为否后,向认证服务器发送包括用户注册信息中的用户标识的获取设备注册请求;
第四接收模块09,用于接收来自认证服务器的设备注册请求;
第四接收模块09,具体用于接收来自认证服务器的包括第一挑战值和应用参数的设备注册请求。
第五发送模块10,用于通过浏览器向认证设备发送设备注册请求;
第六接收模块18,用于接收来自浏览器的认证设备生成的设备注册数据;
第六接收模块18,具体用于接收来自浏览器的包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据。
第七发送模块19,用于向认证服务器发送包括设备注册数据的第一认证请求;
第九接收模块24,用于接收来自认证服务器的第一认证结果;
第九发送模块25,用于向网站发送第一认证结果。
本实施例中,装置中还可以包括:浏览器;浏览器包括:第十二接收模块、第一显示模块和第十一发送模块;
第十二接收模块,用于接收来自注册插件的设备注册请求;
第一显示模块,用于第十二接收模块接收到设备注册请求后,在注册等待页面上提示用户按下认证设备的按钮或者用于第十二接收模块接收到设备注册请求后,显示注册等待页面;
第十一发送模块,用于向认证设备发送设备注册请求。
进一步地,第五发送模块10具体包括:第一生成单元和第一发送单元;或者具体包括:第二生成单元和第二发送单元;
第一生成单元,用于生成包括设备注册请求的第一网址重定向请求;
第一发送单元,用于向浏览器发送包括设备注册请求的第一网址重定向请求;
第十二接收模块,具体用于接收来自浏览器的包括设备注册请求的第一网址重定向请求;
第一显示模块,具体用于根据第一网址重定向请求向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮;
第十一发送模块,具体用于向认证设备发送第一网址重定向请求中的设备注册请求。
第二生成单元,用于生成包括设备注册请求的第二网址重定向请求;
第二发送单元,用于向浏览器发送包括设备注册请求的第二网址重定向请求;
第十二接收模块,具体用于接收来自浏览器的包括设备注册请求的第二网址重定向请求;
第一显示模块,具体用于根据第二网址重定向请求向用户显示注册等待页面;
第十一发送模块,具体用于向认证设备发送第二网址重定向请求中的设备注册请求。
本实施例提供的装置中还可以包括:认证设备;
若第一显示模块用于当第十二接收模块接收到设备注册请求后,显示注册等待页面,则认证设备包括:第三显示模块、第五接收模块、第一获取模块、第一生成模块和第六发送模块;
第五接收模块,用于接收来自浏览器接收设备注册请求;
第一获取模块,用于当第五接收模块接收到设备注册请求后,等待用户按下按钮,获取到用户按下按钮的信息;
第一生成模块,用于当第一获取模块获取到用户按下按钮的信息后,根据设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值;组织包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;
第六发送模块,用于通过浏览器向注册插件发送第一生成模块生成的包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;
第三显示模块,用于当第五接收模块接收到设备注册请求后,第一获取模块获取到用户按下按钮的信息之前,提示用户按下认证设备的按钮。
若第一显示模块用于当第十二接收模块接收到设备注册请求后,在注册等待页面上提示用户按下认证设备的按钮,则认证设备包括:第五接收模块、第一获取模块、第一生成模块和第六发送模块;
第五接收模块,用于接收来自浏览器接收设备注册请求;
第一获取模块,用于当第五接收模块接收到设备注册请求后,等待用户按下按钮,获取到用户按下按钮的信息;
第一生成模块,用于当第一获取模块获取到用户按下按钮的信息后,根据设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对第一公钥和密钥句柄签名生成第一签名值;组织包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据;
第六发送模块,用于通过浏览器向注册插件发送第一生成模块生成的包括密钥句柄、第一公钥、第一签名值和硬件证书的设备注册数据。
进一步地,本实施例提供的装置中,还可以包括:认证服务器;
认证服务器包括:第三接收模块、第四发送模块、第七接收模块、第一验签模块、第一关联模块和第八发送模块;
第三接收模块,用于接收来自注册插件的包括用户注册信息中的用户标识的获取设备注册请求;
第四发送模块,用于向注册插件发送包括第一挑战值和应用参数的设备注册请求;
第七接收模块,用于接收来自注册插件的包括设备注册数据的第一认证请求;
第一验签模块,用于从第七接收模块接收到的第一认证请求的硬件证书中获取硬件公钥,使用硬件公钥对第一签名值验签,得到第一认证结果;
第一关联模块,用于若第一认证结果为成功,则将密钥句柄、第一公钥和用户标识建立对应关系;
第八发送模块,用于当第一关联模块将密钥句柄、第一公钥和用户标识建立对应关系后,向注册插件发送第一认证结果;若第一认证结果为失败,向注册插件发送第一认证结果。
本实施例提供的装置中,还可以包括:网站和浏览器;
网站包括第十接收模块、第二判断模块和第十发送模块29;浏览器包括:第十三接收模块和第二显示模块;
第十接收模块,用于接收来自注册插件的第一认证结果;
第二判断模块,用于根据第十接收模块接收到的第一认证结果判断用户是否注册成功;
第十发送模块29,用于当第二判断模块判断为是后,向浏览器发送注册成功信息;当第二判断模块判断为否后,向浏览器发送注册失败信息;
第十三接收模块,用于接收来自网站的注册成功信息或注册失败信息;
第二显示模块,用于当第十三接收模块接收到注册成功信息后,显示用户注册成功;当第十三接收模块接收到注册失败信息后,显示用户注册失败;
本实施例中,所述第十发送模块,还可以用于当第十一接收模块接收到来自注册插件的已注册信息后,向浏览器发送已注册信息;相应地,第十三接收模块,还可以用于接收来自网站的已注册信息;第二显示模块,还可以用于当第十三接收模块接收到已注册信息后,显示用户已注册。
进一步地,网站中还可以包括第一设置模块;
第一判断模块04,具体用于判断与用户注册信息对应的注册结果标识是否为成功标识,如果是,则判断用户已注册成功;否则,判断用户未注册成功;
第一设置模块,用于当第二判断模块判断为是后,将与用户注册信息对应的注册结果标识设置为成功标识。
本实施例提供的装置中,还可以包括:认证插件;
认证插件包括:第十四接收模块、第十三发送模块、第十六接收模块、第十五发送模块、第二十一接收模块、第二十发送模块、第二十三接收模块和第二十二发送模块;
第十四接收模块,用于接收来自浏览器的获取设备认证请求;
第十四接收模块,具体用于当认证插件的第二函数被调用,接收来自浏览器的包括用户登录信息中的用户标识的获取设备认证请求。
本实施例中,认证插件的第二函数具体为onAfterRender函数。
第十三发送模块,用于向认证服务器发送获取设备认证请求;
第十六接收模块,用于接收来自认证服务器的设备认证请求;
第十五发送模块,用于向浏览器发送设备认证请求;
第二十一接收模块,用于接收来自网站的设备认证数据和用户登录信息;
第二十一接收模块,具体用于当认证插件的第三函数被调用时,接收来自网站的设备认证数据和用户登录信息。
本实施例中,认证插件的第三函数具体为onUserTwofactorAuthenticate函数。
第二十发送模块,用于向认证服务器发送包括设备认证数据和用户登录信息中的用户标识的第二认证请求;
第二十三接收模块,用于接收来自认证服务器的第二认证结果;
第二十二发送模块,用于向网站发送第二认证结果。
当本实施例中提供的装置中还包括认证插件时,装置中还可以包括:浏览器;浏览器包括:第十七接收模块、第四显示模块和第十六发送模块;
第十七接收模块,用于接收来自认证插件的设备认证请求;
第四显示模块,用于当第十七接收模块接收到来自认证插件的设备认证请求后,在认证等待页面提示用户按下认证设备的按钮或者用于显示认证等待页面;
第十六发送模块,用于向认证设备发送设备认证请求。
当本实施例中提供的装置中还包括认证插件时,装置中还可以包括:认证设备和浏览器;
认证设备包括:第十八接收模块和第十七发送模块;
浏览器包括:第十九接收模块和第十八发送模块;
第十八接收模块,用于接收来自浏览器的设备认证请求;
第十七发送模块,用于向浏览器发送设备认证数据;
第十九接收模块,用于接收来自认证设备的设备认证数据;
第十八发送模块,用于向网站发送设备认证数据和用户登录信息。
当浏览器包括第十九接收模块和第十八发送模块时,进一步地,浏览器还包括:第二获取模块和第十二发送模块;
第二获取模块,用于获取用户登录信息;
第十二发送模块,用于向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
本实施例中,浏览器中包括浏览器脚本;相应地:
第二获取模块,具体用于当浏览器中的浏览器脚本监听到登录点击事件后,通过浏览器脚本获取浏览器页面中的用户登录信息;
第十二发送模块,具体用于通过浏览器脚本生成包括用户登录信息中的用户标识的获取设备认证请求,向认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
第十八发送模块,具体用于通过浏览器脚本向网站发送设备认证数据和用户登录信息。
进一步地,浏览器中还包括:第一赋值模块;
第一赋值模块,用于当第十七发送模块向浏览器发送设备认证数据后,通过浏览器脚本将设备认证数据赋值给浏览器页面中的隐藏表单项;
第十八发送模块,具体用于通过浏览器脚本向网站发送隐藏表单项和用户登录信息。
当本实施例中提供的装置中还包括认证插件时,还可以包括:认证设备;
若第四显示模块,用于当第十七接收模块接收到来自认证插件的设备认证请求后,显示认证等待页面;则认证设备包括:第六显示模块、第四获取模块和第二生成模块;
第四获取模块,用于等待用户按下按钮,获取用户按下按钮的信息;
第二生成模块,用于获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对设备认证请求中的第二挑战值和应用参数签名生成第二签名值,生成包括第二签名值的设备认证数据。
第六显示模块,用于当第四获取模块获取到用户按下按钮的信息前,提示用户按下认证设备的按钮。
若第四显示模块,用于当第十七接收模块接收到来自认证插件的设备认证请求后,在认证等待页面提示用户按下认证设备的按钮;则认证设备包括:第四获取模块和第二生成模块;
第四获取模块,用于等待用户按下按钮,获取用户按下按钮的信息;
第二生成模块,用于获取与设备认证请求中的密钥句柄对应的第一私钥,使用第一私钥对设备认证请求中的第二挑战值和应用参数签名生成第二签名值,生成包括第二签名值的设备认证数据。
当本实施例中提供的装置中还包括认证插件和认证设备时,装置中还可以包括:认证服务器;
认证服务器包括:第三获取模块、第十五接收模块、第十四发送模块、第二十二接收模块、第二验签模块和第二十一发送模块;
第十五接收模块,用于接收来自认证插件的获取设备认证请求;
第三获取模块,用于获取与获取认证设备请求中的用户标识对应的密钥句柄;
第十四发送模块,用于向认证插件发送包括密钥句柄、自身的第二挑战值和应用参数的设备认证请求;
第二十二接收模块,用于接收来自认证插件的包括设备认证数据和用户登录信息中的用户标识的第二认证请求;
第二验签模块,用于获取与第二认证请求中的用户标识对应的第一公钥,使用第一公钥对第二签名值验签,得到第二认证结果;
第二十一发送模块,用于向认证插件发送第二认证结果。
当本实施例中提供的装置中还包括认证插件时,装置中还可以包括:网站和浏览器;
网站包括:第二十四接收模块、第三判断模块和第二十三发送模块;浏览器包括:第二十四接收模块和第五显示模块;
第二十四接收模块,用于接收来自认证插件的第二认证结果;
第三判断模块,用于根据第二认证结果判断用户是否登录成功;
第二十三发送模块,用于当第三判断模块判断为是后,向浏览器发送登录成功信息;当第三判断模块判断为否后,向浏览器发送登录失败信息;
第二十四接收模块,用于接收来自网站的登录成功信息或登录失败信息;
第五显示模块,用于当第二十四接收模块接收到登录成功信息后,显示用户登录成功;当第二十四接收模块接收到登录失败信息后,显示用户登录失败。
本实施例提供了一种认证设备与网站的集成装置,将认证设备与网站集成在一起,实现用户在网站上的注册和认证。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (68)
1.一种认证设备与网站的集成方法,适用于包括:认证设备、浏览器、网站、注册插件和认证服务器的系统,其特征在于,包括:注册流程,所述注册流程包括:
步骤s1:所述网站通过所述浏览器接收用户注册信息,向所述注册插件发送所述用户注册信息和与所述用户注册信息对应的注册结果标识;
步骤s2:所述注册插件根据所述注册结果标识判断用户是否已注册成功,如果是,则向所述网站发送已注册信息,所述网站执行步骤s10;否则,向所述认证服务器发送包括所述用户注册信息中的用户标识的获取设备注册请求;
步骤s3:所述认证服务器向所述注册插件发送包括自身的第一挑战值和应用参数的设备注册请求;
步骤s4:所述注册插件通过所述浏览器向所述认证设备发送所述设备注册请求,并通过所述浏览器在注册等待页面提示用户按下所述认证设备的按钮;
步骤s5:所述认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,根据所述设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对所述第一公钥和所述密钥句柄签名生成第一签名值,通过所述浏览器向所述注册插件发送包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
步骤s6:所述注册插件向所述认证服务器发送包括所述设备注册数据的第一认证请求;
步骤s7:所述认证服务器从所述硬件证书中获取硬件公钥,使用所述硬件公钥对所述第一签名值验签,得到第一认证结果,若所述第一认证结果为成功,则将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系,向所述注册插件发送第一认证结果,所述注册插件执行步骤s8;若所述第一认证结果为失败,则向所述注册插件发送第一认证结果,所述注册插件执行步骤s8;
步骤s8:所述注册插件向所述网站发送第一认证结果;
步骤s9:所述网站根据所述第一认证结果判断用户是否注册成功,如果是,则通过所述浏览器显示注册成功,结束注册流程;否则,通过所述浏览器显示注册失败,结束注册流程;
步骤s10:所述网站通过所述浏览器显示用户已注册,结束注册流程;
所述网站具体为应用Joomla技术开发的网站。
2.根据权利要求1所述的方法,其特征在于,所述步骤s4被替换为:所述注册插件通过所述浏览器向所述认证设备发送设备注册请求并通过所述浏览器显示注册等待页面;
所述步骤s5中所述认证设备接收到所述设备注册请求后,获取到用户按下按钮的信息之前,还包括:所述认证设备提示用户按下所述认证设备的按钮。
3.根据权利要求2所述的方法,其特征在于,所述注册插件通过所述浏览器向所述认证设备发送设备注册请求并通过所述浏览器显示注册等待页面,具体为:所述注册插件生成包括所述设备注册请求的第二网址重定向请求,向所述浏览器发送包括所述设备注册请求的第二网址重定向请求,所述浏览器根据所述第二网址重定向请求向用户显示注册等待页面,并向所述认证设备发送所述第二网址重定向请求中的设备注册请求。
4.根据权利要求1所述的方法,其特征在于,所述步骤s4具体为:所述注册插件生成包括所述设备注册请求的第一网址重定向请求,向所述浏览器发送包括设备注册请求的第一网址重定向请求,所述浏览器根据所述第一网址重定向请求向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮,并向所述认证设备发送所述第一网址重定向请求中的设备注册请求。
5.根据权利要求1所述的方法,其特征在于,所述网站向所述注册插件发送所述用户注册信息和与所述用户注册信息对应的注册结果标识,具体为:所述网站调用所述注册插件的第一函数,向所述注册插件发送用户注册信息和与用户注册信息对应的注册结果标识。
6.根据权利要求1所述的方法,其特征在于,所述注册插件根据所述注册结果标识判断用户是否已注册成功,具体为:所述注册插件判断与用户注册信息对应的注册结果标识是否为成功标识,如果是,则判断用户已注册成功;否则,判断用户未注册成功;
若所述网站根据所述第一认证结果判断用户注册成功,还包括:将与所述用户注册信息对应的注册结果标识设置为成功标识。
7.根据权利要求1所述的方法,其特征在于,所述系统中还包括:认证插件;所述方法中还包括:认证流程,所述认证流程包括:
步骤r1:所述浏览器获取用户登录信息,向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
步骤r2:所述认证插件向所述认证服务器发送所述获取设备认证请求;
步骤r3:所述认证服务器获取与所述用户标识对应的密钥句柄,向所述认证插件发送包括所述密钥句柄、自身的第二挑战值和应用参数的设备认证请求;
步骤r4:所述认证插件通过所述浏览器向所述认证设备发送所述设备认证请求,并通过所述浏览器在认证等待页面提示用户按下所述认证设备的按钮;
步骤r5:所述认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,获取与所述设备认证请求中的密钥句柄对应的第一私钥,使用所述第一私钥对所述第二挑战值和所述应用参数签名生成第二签名值,生成包括所述第二签名值的设备认证数据,向所述浏览器发送所述设备认证数据;
步骤r6:所述浏览器向所述网站发送所述设备认证数据和所述用户登录信息;
步骤r7:所述网站向所述认证插件发送所述设备认证数据和所述用户登录信息;
步骤r8:所述认证插件向所述认证服务器发送包括所述设备认证数据和所述用户登录信息中的用户标识的第二认证请求;
步骤r9:所述认证服务器获取与所述第二认证请求中的用户标识对应的第一公钥,使用所述第一公钥对所述第二签名值验签,得到第二认证结果,向所述认证插件发送所述第二认证结果;
步骤r10:所述认证插件向所述网站发送所述第二认证结果;
步骤r11:所述网站根据所述第二认证结果判断用户是否登录成功,如果是,则通过所述浏览器显示登录成功,结束认证流程;否则,通过所述浏览器显示登录失败,结束认证流程。
8.根据权利要求7所述的方法,其特征在于,所述步骤r4被替换为:所述认证插件通过所述浏览器向所述认证设备发送设备认证请求并通过所述浏览器显示认证等待页面;
所述步骤r5中所述认证设备接收到设备认证请求后,等待用户按下按钮之前,还包括:所述认证设备提示用户按下所述认证设备的按钮。
9.根据权利要求7所述的方法,其特征在于,所述步骤r1具体为:当所述浏览器中的浏览器脚本监听到登录点击事件后,所述浏览器脚本获取浏览器页面中的用户登录信息,生成包括用户登录信息中的用户标识的获取设备认证请求,向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
所述步骤r6具体为:所述浏览器中的所述浏览器脚本向所述网站发送所述设备认证数据和所述用户登录信息。
10.根据权利要求9所述的方法,其特征在于,所述认证设备向所述浏览器发送所述设备认证数据后,还包括:所述浏览器脚本将所述设备认证数据赋值给浏览器页面中的隐藏表单项;
所述浏览器中的所述浏览器脚本向所述网站发送所述设备认证数据和所述用户登录信息具体为:所述浏览器脚本向所述网站发送所述隐藏表单项和所述用户登录信息。
11.根据权利要求7所述的方法,其特征在于,所述向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求,具体为:所述浏览器调用认证插件中的第二函数向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
12.根据权利要求7所述的方法,其特征在于,所述步骤r7具体为:所述网站调用认证插件的第三函数,向所述证插件发送所述设备认证数据和所述用户登录信息。
13.一种认证设备与网站的集成方法,其特征在于,包括:注册流程,所述注册流程包括:
步骤t1:注册插件接收来自网站的用户注册信息和与所述用户注册信息对应的注册结果标识;
步骤t2:所述注册插件根据所述注册结果标识判断用户是否已注册成功,如果是,则向所述网站发送已注册信息,结束注册流程;否则,向认证服务器发送包括所述用户注册信息中的用户标识的获取设备注册请求,执行步骤t3;
步骤t3:所述注册插件接收来自所述认证服务器的设备注册请求;
步骤t4:所述注册插件通过浏览器向认证设备发送设备注册请求,等待所述认证设备生成设备注册数据;
步骤t5:所述注册插件通过所述浏览器接收所述认证设备生成的设备注册数据;
步骤t6:所述注册插件向所述认证服务器发送包括所述设备注册数据的第一认证请求;
步骤t7:所述注册插件接收来自所述认证服务器的第一认证结果;
步骤t8:所述注册插件向所述网站发送所述第一认证结果,用于所述网站验证用户是否注册成功;
所述网站具体为应用Joomla技术开发的网站。
14.根据权利要求13所述的方法,其特征在于,所述步骤t4中所述注册插件通过浏览器向认证设备发送设备注册请求后,还包括:所述注册插件通过所述浏览器在注册等待页面提示用户按下所述认证设备的按钮,或者所述注册插件通过所述浏览器显示注册等待页面。
15.根据权利要求14所述的方法,其特征在于,若所述注册插件通过所述浏览器在注册等待页面提示用户按下所述认证设备的按钮,所述步骤t4具体为:所述注册插件生成包括所述设备注册请求的第一网址重定向请求,向所述浏览器发送包括设备注册请求的第一网址重定向请求,通过所述浏览器向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮;并通过所述浏览器向所述认证设备发送所述第一网址重定向请求中的设备注册请求,等待所述认证设备生成设备注册数据。
16.根据权利要求14所述的方法,其特征在于,若所述注册插件通过所述浏览器显示注册等待页面,所述步骤t4具体为:所述注册插件生成包括所述设备注册请求的第二网址重定向请求,向所述浏览器发送包括设备注册请求的第二网址重定向请求,通过所述浏览器向用户显示注册等待页面,并通过所述浏览器向所述认证设备发送所述第二网址重定向请求中的设备注册请求,等待所述认证设备生成设备注册数据。
17.根据权利要求13所述的方法,其特征在于,所述步骤t1具体为:所述注册插件的第一函数被调用,接收来自所述网站的用户注册信息和与所述用户注册信息对应的注册结果标识。
18.根据权利要求14所述的方法,其特征在于,若所述注册插件通过所述浏览器显示注册等待页面,所述认证设备生成设备注册数据具体为:所述认证设备提示用户按下所述认证设备的按钮,等待用户按下按钮,当获取到用户按下按钮的信息后,根据所述设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对所述第一公钥和所述密钥句柄签名生成第一签名值,组织包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据。
19.根据权利要求14所述的方法,其特征在于,若所述注册插件通过所述浏览器在注册等待页面提示用户按下所述认证设备的按钮,所述认证设备生成设备注册数据具体为:所述认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,根据所述设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对所述第一公钥和所述密钥句柄签名生成第一签名值,组织包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据。
20.根据权利要求18或19所述的方法,其特征在于,还包括:当所述认证服务器接收到来自所述注册插件的包括所述用户注册信息中的用户标识的获取设备注册请求后,向所述注册插件发送包括第一挑战值和应用参数的设备注册请求;当所述认证服务器接收到来自所述注册插件的包括所述设备注册数据的第一认证请求后,所述认证服务器从所述硬件证书中获取硬件公钥,使用所述硬件公钥对所述第一签名值验签,得到第一认证结果,若所述第一认证结果为成功,则将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系,向所述注册插件发送第一认证结果;若所述第一认证结果为失败,则向所述注册插件发送第一认证结果。
21.根据权利要求13所述的方法,其特征在于,所述网站验证用户是否注册成功具体为:所述网站根据所述第一认证结果判断用户是否注册成功,如果是,则通过所述浏览器显示注册成功,结束注册流程;否则,通过所述浏览器显示注册失败,结束注册流程。
22.根据权利要求21所述的方法,其特征在于,所述注册插件根据所述注册结果标识判断用户是否已注册成功,具体为:所述注册插件判断与用户注册信息对应的注册结果标识是否为成功标识,如果是,则判断用户已注册成功;否则,判断用户未注册成功;
若所述网站根据所述第一认证结果判断用户注册成功,还包括:将与所述用户注册信息对应的注册结果标识设置为成功标识。
23.根据权利要求13所述的方法,其特征在于,还包括:认证流程,所述认证流程包括:
步骤w1:所述认证插件接收来自所述浏览器的包括用户登录信息中的用户标识的获取设备认证请求;
步骤w2:所述认证插件向所述认证服务器发送所述获取设备认证请求;
步骤w3:所述认证插件接收来自所述认证服务器的设备认证请求;
步骤w4:所述认证插件通过所述浏览器向所述认证设备发送所述设备认证请求;等待所述认证设备生成设备认证数据;
步骤w5:当所述认证插件通过所述网站接收到设备认证数据和用户登录信息后,所述认证插件向所述认证服务器发送包括所述设备认证数据和所述用户登录信息中的用户标识的第二认证请求;
步骤w6:所述认证插件接收来自所述认证服务器的第二认证结果;
步骤w7:所述认证插件向所述网站发送所述第二认证结果,用于所述网站验证用户是否登录成功。
24.根据权利要求23所述的方法,其特征在于,所述步骤w4中还包括:所述认证插件通过所述浏览器在认证等待页面提示用户按下所述认证设备的按钮或所述认证插件通过所述浏览器显示认证等待页面。
25.根据权利要求23所述的方法,其特征在于,所述步骤w4之后,所述步骤w5之前还包括:
所述认证设备向所述浏览器发送设备认证数据;所述浏览器向所述网站发送所述设备认证数据和所述用户登录信息。
26.根据权利要求25所述的方法,其特征在于,所述w1之前还包括:所述浏览器获取所述用户登录信息,向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
27.根据权利要求26所述的方法,其特征在于,所述浏览器获取所述用户登录信息,向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求,具体为:当所述浏览器中的浏览器脚本监听到登录点击事件后,浏览器脚本获取浏览器页面中的用户登录信息,生成包括用户登录信息中的用户标识的获取设备认证请求,向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
所述浏览器向所述网站发送所述设备认证数据和所述用户登录信息,具体为:所述浏览器中的所述浏览器脚本向所述网站发送所述设备认证数据和所述用户登录信息。
28.根据权利要求27所述的方法,其特征在于,所述认证设备向所述浏览器发送设备认证数据后,还包括:所述浏览器脚本将所述设备认证数据赋值给浏览器页面中的隐藏表单项;
所述浏览器脚本向所述网站发送所述设备认证数据和所述用户登录信息,具体为:所述浏览器脚本向所述网站发送所述隐藏表单项和所述用户登录信息。
29.根据权利要求23所述的方法,其特征在于,所述步骤w1具体为:所述认证插件中的第二函数被调用,接收来自所述浏览器的包括用户登录信息中的用户标识的获取设备认证请求。
30.根据权利要求23所述的方法,其特征在于,所述认证插件通过网站接收设备认证数据和用户登录信息,具体为:所述认证插件的第三函数被调用,接收来自所述网站的所述设备认证数据和所述用户登录信息。
31.根据权利要求24所述的方法,其特征在于,若所述认证插件通过所述浏览器显示认证等待页面,所述认证设备生成设备认证数据,具体为:所述认证设备提示用户按下所述认证设备的按钮,等待用户按下按钮,当获取到用户按下按钮的信息后,获取与所述设备认证请求中的密钥句柄对应的第一私钥,使用所述第一私钥对所述设备认证请求中的第二挑战值和应用参数签名生成第二签名值,生成包括所述第二签名值的设备认证数据。
32.根据权利要求24所述的方法,其特征在于,若所述认证插件通过所述浏览器在认证等待页面提示用户按下所述认证设备的按钮,所述认证设备生成设备认证数据,具体为:所述认证设备等待用户按下按钮,当获取到用户按下按钮的信息后,获取与所述设备认证请求中的密钥句柄对应的第一私钥,使用所述第一私钥对所述设备认证请求中的第二挑战值和应用参数签名生成第二签名值,生成包括所述第二签名值的设备认证数据。
33.根据权利要求31或32所述的方法,其特征在于,还包括:当所述认证服务器接收来自所述认证插件的获取设备认证请求后,获取与所述获取认证设备请求中的所述用户标识对应的密钥句柄,向所述认证插件发送包括所述密钥句柄、自身的第二挑战值和应用参数的设备认证请求;
当所述认证服务器接收到来自所述认证插件的包括所述设备认证数据和所述用户登录信息中的用户标识的第二认证请求后,获取与所述第二认证请求中的用户标识对应的第一公钥,使用所述第一公钥对所述第二签名值验签,得到第二认证结果,向所述认证插件发送所述第二认证结果。
34.根据权利要求23所述的方法,其特征在于,所述网站验证用户是否登录成功具体为:所述网站根据所述第二认证结果判断用户是否登录成功,如果是,则通过所述浏览器显示登录成功,结束认证流程;否则,通过所述浏览器显示登录失败,结束认证流程。
35.一种认证设备与网站的集成系统,其特征在于,包括:认证设备、浏览器、网站、注册插件和认证服务器;
所述网站包括:第一接收模块、第一发送模块、第十接收模块、第二判断模块、第十一接收模块和第十发送模块;
所述注册插件包括:第二接收模块、第一判断模块、第二发送模块、第三发送模块、第四接收模块、第五发送模块、第六接收模块、第七发送模块、第九接收模块和第九发送模块;
所述认证服务器包括:第三接收模块、第四发送模块、第七接收模块、第一验签模块、第一关联模块和第八发送模块;
所述认证设备包括:第五接收模块、第一获取模块、第一生成模块和第六发送模块;
所述浏览器包括:第十二接收模块、第十一发送模块和第一显示模块、第十三接收模块和第二显示模块;
所述第一接收模块,用于通过所述浏览器接收用户注册信息;
所述第一发送模块,用于向所述注册插件发送所述用户注册信息和与所述用户注册信息对应的注册结果标识;
所述第二接收模块,用于接收来自所述网站的用户注册信息和与所述用户注册信息对应的注册结果标识;
所述第一判断模块,用于根据所述注册结果标识判断用户是否已注册成功;
所述第二发送模块,用于当所述第一判断模块判断为是后,向所述网站发送已注册信息;
所述第三发送模块,用于当所述第一判断模块判断为否后,向所述认证服务器发送包括所述用户注册信息中的用户标识的获取设备注册请求;
所述第三接收模块,用于接收来自所述注册插件的包括所述用户注册信息中的用户标识的获取设备注册请求;
所述第四发送模块,用于向所述注册插件发送包括第一挑战值和应用参数的所述设备注册请求;
所述第四接收模块,用于接收来自所述认证服务器的包括所述认证服务器中的第一挑战值和应用参数的所述设备注册请求;
所述第五发送模块,用于向所述浏览器发送设备注册请求;
所述第十二接收模块,用于接收来自所述注册插件的包括所述认证服务器中的第一挑战值和应用参数的设备注册请求;
所述第一显示模块,用于所述第十二接收模块接收到所述设备注册请求后,在注册等待页面上提示用户按下认证设备的按钮;
所述第十一发送模块,用于向所述认证设备发送所述设备注册请求;
所述第五接收模块,用于接收来自所述浏览器的所述设备注册请求;
所述第一获取模块,用于当所述第五接收模块接收到所述设备注册请求后,等待用户按下按钮,获取到用户按下按钮的信息;
所述第一生成模块,用于当所述第一获取模块获取到用户按下按钮的信息后,根据所述设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对所述第一公钥和所述密钥句柄签名生成第一签名值,组织包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第六发送模块,用于通过所述浏览器向所述注册插件发送所述第一生成模块生成的包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第六接收模块,用于接收来自所述浏览器的包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第七发送模块,用于向所述认证服务器发送包括所述设备注册数据的第一认证请求;
所述第七接收模块,用于接收来自所述注册插件的包括所述设备注册数据的第一认证请求;
所述第一验签模块,用于从所述第七接收模块接收到的第一认证请求的硬件证书中获取硬件公钥,使用所述硬件公钥对所述第一签名值验签,得到第一认证结果;
所述第一关联模块,用于若所述第一认证结果为成功,则将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系;
所述第八发送模块,用于当所述第一关联模块将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系后,向所述注册插件发送第一认证结果;若所述第一认证结果为失败,向所述注册插件发送第一认证结果;
所述第九接收模块,用于接收来自所述认证服务器的第一认证结果;
所述第九发送模块,用于向所述网站发送第一认证结果;
所述第十接收模块,用于接收来自所述注册插件的第一认证结果;
所述第二判断模块,用于根据所述第十接收模块接收到的第一认证结果判断用户是否注册成功;
所述第十一接收模块,用于接收来自所述注册插件的已注册信息;
所述第十发送模块,用于当所述第二判断模块判断为是后,向所述浏览器发送注册成功信息;当所述第二判断模块判断为否后,向所述浏览器发送注册失败信息;当所述第十一接收模块接收到来自所述注册插件的已注册信息后,向所述浏览器发送已注册信息;
所述第十三接收模块,用于接收来自所述网站的注册成功信息或注册失败信息或已注册信息;
所述第二显示模块,用于当所述第十三接收模块接收到注册成功信息后,显示用户注册成功;当所述第十三接收模块接收到注册失败信息后,显示用户注册失败;当所述第十三接收模块接收到已注册信息后,显示用户已注册;
所述网站具体为应用Joomla技术开发的网站。
36.根据权利要求35所述的系统,其特征在于,所述认证设备还包括:第三显示模块;
所述第一显示模块,或者用于所述第十二接收模块接收到所述设备注册请求后,显示注册等待页面;
所述第三显示模块,用于当所述第五接收模块接收到设备注册请求后,所述第一获取模块获取到用户按下按钮的信息之前,提示用户按下所述认证设备的按钮。
37.根据权利要求36所述的系统,其特征在于,所述第五发送模块包括:第二生成单元和第二发送单元;
所述第二生成单元,用于生成包括所述设备注册请求的第二网址重定向请求;
所述第二发送单元,用于向所述浏览器发送所述包括设备注册请求的第二网址重定向请求;
所述第十二接收模块,具体用于接收来自所述浏览器的包括设备注册请求的第二网址重定向请求;
所述第一显示模块,具体用于根据所述第二网址重定向请求向用户显示注册等待页面;
所述第十一发送模块,具体用于向所述认证设备发送所述第二网址重定向请求中的设备注册请求。
38.根据权利要求35所述的系统,其特征在于,所述第五发送模块包括:第一生成单元和第一发送单元;
所述第一生成单元,用于生成包括所述设备注册请求的第一网址重定向请求;
所述第一发送单元,用于向所述浏览器发送包括设备注册请求的第一网址重定向请求;
所述第十二接收模块,具体用于接收来自所述浏览器的包括设备注册请求的第一网址重定向请求;
所述第一显示模块,具体用于根据所述第一网址重定向请求向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮;
所述第十一发送模块,具体用于向所述认证设备发送所述第一网址重定向请求中的设备注册请求。
39.根据权利要求35所述的系统,其特征在于,所述第一发送模块,具体用于调用所述注册插件的第一函数,向所述注册插件发送用户注册信息和与用户注册信息对应的注册结果标识。
40.根据权利要求35所述的系统,其特征在于,所述网站还包括第一设置模块;
所述第一判断模块,具体用于判断与用户注册信息对应的注册结果标识是否为成功标识,如果是,则判断用户已注册成功;否则,判断用户未注册成功;
所述第一设置模块,用于当所述第二判断模块判断为是后,将与所述用户注册信息对应的注册结果标识设置为成功标识。
41.根据权利要求35所述的系统,其特征在于,还包括:认证插件;
所述浏览器还包括:第二获取模块、第十二发送模块、第十七接收模块、第四显示模块、第十六发送模块、第十九接收模块、第十八发送模块、第二十四接收模块和第五显示模块;
所述认证插件包括:第十四接收模块、第十三发送模块、第十六接收模块、第十五发送模块、第二十一接收模块、第二十发送模块、第二十三接收模块和第二十二发送模块;
所述认证服务器还包括:第十五接收模块、第三获取模块、第十四发送模块、第二十二接收模块、第二验签模块和第二十一发送模块;
所述认证设备还包括:第十八接收模块、第四获取模块、第二生成模块和第十七发送模块;
所述网站还包括:第二十接收模块、第十九发送模块、第二十四接收模块、第三判断模块和第二十三发送模块;
所述第二获取模块,用于获取用户登录信息;
所述第十二发送模块,用于向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
所述第十四接收模块,用于接收来自所述浏览器的获取设备认证请求;
所述第十三发送模块,用于向所述认证服务器发送所述获取设备认证请求;
所述第十五接收模块,用于接收来自所述认证插件的获取设备认证请求;
所述第三获取模块,用于获取与所述获取认证设备请求中的所述用户标识对应的密钥句柄;
所述第十四发送模块,用于向所述认证插件发送包括所述密钥句柄、自身的第二挑战值和应用参数的设备认证请求;
所述第十六接收模块,用于接收来自所述认证服务器的设备认证请求;
所述第十五发送模块,用于向所述浏览器发送所述设备认证请求;
所述第十七接收模块,用于接收来自所述认证插件的所述设备认证请求;
所述第四显示模块,用于在认证等待页面提示用户按下所述认证设备的按钮;
所述第十六发送模块,用于向所述认证设备发送所述设备认证请求;
所述第十八接收模块,用于接收来自所述浏览器的设备认证请求;
所述第四获取模块,用于等待用户按下按钮,获取用户按下按钮的信息;
所述第二生成模块,用于获取与所述设备认证请求中的密钥句柄对应的第一私钥,使用所述第一私钥对所述第二挑战值和所述应用参数签名生成第二签名值,生成包括所述第二签名值的设备认证数据;
所述第十七发送模块,用于向所述浏览器发送所述设备认证数据;
所述第十九接收模块,用于接收来自所述认证设备的设备认证数据;
所述第十八发送模块,用于向所述网站发送所述设备认证数据和所述用户登录信息;
所述第二十接收模块,用于接收来自所述浏览器的设备认证数据和用户登录信息;
所述第十九发送模块,用于向所述认证插件发送所述设备认证数据和所述用户登录信息;
所述第二十一接收模块,用于接收来自所述网站的设备认证数据和用户登录信息;
所述第二十发送模块,用于向所述认证服务器发送包括所述设备认证数据和所述用户登录信息中的用户标识的第二认证请求;
所述第二十二接收模块,用于接收来自所述认证插件的第二认证请求;
所述第二验签模块,用于获取与所述第二认证请求中的用户标识对应的第一公钥,使用所述第一公钥对所述第二签名值验签,得到第二认证结果;
所述第二十一发送模块,用于向所述认证插件发送所述第二认证结果;
所述第二十三接收模块,用于接收来自所述认证服务器的第二认证结果;
所述第二十二发送模块,用于向所述网站发送所述第二认证结果;
所述第二十四接收模块,用于接收来自所述认证插件的第二认证结果;
所述第三判断模块,用于根据所述第二认证结果判断用户是否登录成功;
所述第二十三发送模块,用于当所述第三判断模块判断为是后,向所述浏览器发送登录成功信息;当所述第三判断模块判断为否后,向所述浏览器发送登录失败信息;
所述第二十四接收模块,用于接收来自所述网站的登录成功信息或登录失败信息;
所述第五显示模块,用于当所述第二十四接收模块接收到登录成功信息后,显示用户登录成功;当所述第二十四接收模块接收到登录失败信息后,显示用户登录失败。
42.根据权利要求41所述的系统,其特征在于,所述第四显示模块,或者用于显示认证等待页面;所述认证设备还包括:第六显示模块;
所述第六显示模块,用于当所述第十八接收模块接收到设备认证请求后,所述第四获取模块获取到用户按下按钮的信息前,提示用户按下所述认证设备的按钮。
43.根据权利要求41所述的系统,其特征在于,所述浏览器中包括浏览器脚本;
第二获取模块,具体用于当所述浏览器中的浏览器脚本监听到登录点击事件后,通过所述浏览器脚本获取浏览器页面中的用户登录信息;
所述第十二发送模块,具体用于通过所述浏览器脚本生成包括用户登录信息中的用户标识的获取设备认证请求,向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
所述第十八发送模块,具体用于通过所述浏览器脚本向所述网站发送所述设备认证数据和所述用户登录信息。
44.根据权利要求43所述的系统,其特征在于,所述浏览器还包括:第一赋值模块;
所述第一赋值模块,用于当所述第十七发送模块向所述浏览器发送所述设备认证数据后,通过所述浏览器脚本将所述设备认证数据赋值给浏览器页面中的隐藏表单项;
所述第十八发送模块,具体用于通过所述浏览器脚本向所述网站发送所述隐藏表单项和所述用户登录信息。
45.根据权利要求41所述的系统,其特征在于,所述第十二发送模块,具体用于调用认证插件中的第二函数向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
46.根据权利要求41所述的系统,其特征在于,所述第十九发送模块,具体用于调用认证插件的第三函数,向所述证插件发送所述设备认证数据和所述用户登录信息。
47.一种认证设备与网站的集成装置,其特征在于,包括:注册插件;
所述注册插件包括:第二接收模块、第一判断模块、第二发送模块、第三发送模块、第四接收模块、第五发送模块、第六接收模块、第七发送模块、第九接收模块和第九发送模块;
所述第二接收模块,用于接收来自网站的用户注册信息和与所述用户注册信息对应的注册结果标识;
所述第一判断模块,用于根据所述注册结果标识判断用户是否已注册成功;
所述第二发送模块,用于当所述第一判断模块判断为是后,向所述网站发送已注册信息;
所述第三发送模块,用于当所述第一判断模块判断为否后,向认证服务器发送包括所述用户注册信息中的用户标识的获取设备注册请求;
所述第四接收模块,用于接收来自所述认证服务器的设备注册请求;
所述第五发送模块,用于通过浏览器向认证设备发送设备注册请求;
所述第六接收模块,用于接收来自所述浏览器的所述认证设备生成的设备注册数据;
所述第七发送模块,用于向所述认证服务器发送包括所述设备注册数据的第一认证请求;
所述第九接收模块,用于接收来自所述认证服务器的第一认证结果;
所述第九发送模块,用于向所述网站发送所述第一认证结果;
所述网站具体为应用Joomla技术开发的网站。
48.根据权利要求47所述的装置,其特征在于,所述装置还包括:浏览器;所述浏览器包括:第十二接收模块、第一显示模块和第十一发送模块;
所述第十二接收模块,用于接收来自所述注册插件的设备注册请求;
所述第一显示模块,用于所述第十二接收模块接收到所述设备注册请求后,在注册等待页面上提示用户按下所述认证设备的按钮,或者用于所述第十二接收模块接收到所述设备注册请求后,显示注册等待页面;
所述第十一发送模块,用于向所述认证设备发送所述设备注册请求。
49.根据权利要求48所述的装置,其特征在于,所述第五发送模块包括:第一生成单元和第一发送单元;
所述第一生成单元,用于生成包括所述设备注册请求的第一网址重定向请求;
所述第一发送单元,用于向所述浏览器发送所述包括设备注册请求的第一网址重定向请求;
所述第十二接收模块,具体用于接收来自所述浏览器的包括设备注册请求的第一网址重定向请求;
所述第一显示模块,具体用于根据所述第一网址重定向请求向用户显示注册等待页面,在注册等待页面上提示用户按下认证设备的按钮;
所述第十一发送模块,具体用于向所述认证设备发送所述第一网址重定向请求中的设备注册请求。
50.根据权利要求48所述的装置,其特征在于,所述第五发送模块包括:第二生成单元和第二发送单元;
所述第二生成单元,用于生成包括所述设备注册请求的第二网址重定向请求;
所述第二发送单元,用于向所述浏览器发送所述包括设备注册请求的第二网址重定向请求;
所述第十二接收模块,具体用于接收来自所述浏览器的包括设备注册请求的第二网址重定向请求;
所述第一显示模块,具体用于根据所述第二网址重定向请求向用户显示注册等待页面;
所述第十一发送模块,具体用于向所述认证设备发送所述第二网址重定向请求中的设备注册请求。
51.根据权利要求47所述的装置,其特征在于,所述第二接收模块,具体用于当注册插件的第一函数被调用时,接收来自所述网站的用户注册信息和与所述用户注册信息对应的注册结果标识。
52.根据权利要求48所述的装置,其特征在于,还包括:认证设备;
若所述第一显示模块用于当所述第十二接收模块接收到所述设备注册请求后,显示注册等待页面,则所述认证设备包括:第三显示模块、第五接收模块、第一获取模块、第一生成模块和第六发送模块;
所述第五接收模块,用于接收来自所述浏览器接收设备注册请求;
所述第一获取模块,用于当所述第五接收模块接收到所述设备注册请求后,等待用户按下按钮,获取到用户按下按钮的信息;
所述第一生成模块,用于当所述第一获取模块获取到用户按下按钮的信息后,根据所述设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对所述第一公钥和所述密钥句柄签名生成第一签名值,组织包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第六发送模块,用于通过所述浏览器向所述注册插件发送所述第一生成模块生成的包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第三显示模块,用于当所述第五接收模块接收到设备注册请求后,所述第一获取模块获取到用户按下按钮的信息之前,提示用户按下所述认证设备的按钮。
53.根据权利要求48所述的装置,其特征在于,还包括:认证设备;
若所述第一显示模块用于当所述第十二接收模块接收到所述设备注册请求后,在注册等待页面上提示用户按下认证设备的按钮,则所述认证设备包括:第五接收模块、第一获取模块、第一生成模块和第六发送模块;
所述第五接收模块,用于接收来自所述浏览器接收设备注册请求;
所述第一获取模块,用于当所述第五接收模块接收到所述设备注册请求后,等待用户按下按钮,获取到用户按下按钮的信息;
所述第一生成模块,用于当所述第一获取模块获取到用户按下按钮的信息后,根据所述设备注册请求中的第一挑战值和应用参数生成密钥句柄、与密钥句柄对应的第一公钥和第一私钥,使用预设的硬件私钥对所述第一公钥和所述密钥句柄签名生成第一签名值,组织包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据;
所述第六发送模块,用于通过所述浏览器向所述注册插件发送所述第一生成模块生成的包括所述密钥句柄、所述第一公钥、所述第一签名值和硬件证书的设备注册数据。
54.根据权利要求52或者53所述的装置,其特征在于,还包括:认证服务器;
所述认证服务器包括:第三接收模块、第四发送模块、第七接收模块、第一验签模块、第一关联模块和第八发送模块;
所述第三接收模块,用于接收来自所述注册插件的包括所述用户注册信息中的用户标识的获取设备注册请求;
所述第四发送模块,用于向所述注册插件发送包括第一挑战值和应用参数的设备注册请求;
所述第七接收模块,用于接收来自所述注册插件的包括所述设备注册数据的第一认证请求;
所述第一验签模块,用于从所述第七接收模块接收到的第一认证请求的硬件证书中获取硬件公钥,使用所述硬件公钥对所述第一签名值验签,得到第一认证结果;
所述第一关联模块,用于若所述第一认证结果为成功,则将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系;
所述第八发送模块,用于当所述第一关联模块将所述密钥句柄、所述第一公钥和所述用户标识建立对应关系后,向所述注册插件发送第一认证结果;若所述第一认证结果为失败,向所述注册插件发送第一认证结果。
55.根据权利要求47所述的装置,其特征在于,还包括:网站和浏览器;
所述网站包括第十接收模块、第二判断模块和第十发送模块;所述浏览器包括:第十三接收模块和第二显示模块;
所述第十接收模块,用于接收来自所述注册插件的第一认证结果;
所述第二判断模块,用于根据所述第十接收模块接收到的第一认证结果判断用户是否注册成功;
所述第十发送模块,用于当所述第二判断模块判断为是后,向所述浏览器发送注册成功信息;当所述第二判断模块判断为否后,向所述浏览器发送注册失败信息;
所述第十三接收模块,用于接收来自所述网站的注册成功信息或注册失败信息;
所述第二显示模块,用于当所述第十三接收模块接收到注册成功信息后,显示用户注册成功;当所述第十三接收模块接收到注册失败信息后,显示用户注册失败。
56.根据权利要求55所述的装置,其特征在于,所述网站还包括第一设置模块;
所述第一判断模块,具体用于判断与用户注册信息对应的注册结果标识是否为成功标识,如果是,则判断用户已注册成功;否则,判断用户未注册成功;
所述第一设置模块,用于当所述第二判断模块判断为是后,将与所述用户注册信息对应的注册结果标识设置为成功标识。
57.根据权利要求47所述的装置,其特征在于,还包括:认证插件;
所述认证插件包括:第十四接收模块、第十三发送模块、第十六接收模块、第十五发送模块、第二十一接收模块、第二十发送模块、第二十三接收模块和第二十二发送模块;
所述第十四接收模块,用于接收来自所述浏览器的包括用户登录信息中的用户标识的获取设备认证请求;
所述第十三发送模块,用于向所述认证服务器发送所述获取设备认证请求;
所述第十六接收模块,用于接收来自所述认证服务器的设备认证请求;
所述第十五发送模块,用于向所述浏览器发送所述设备认证请求;
所述第二十一接收模块,用于接收来自所述网站的设备认证数据和用户登录信息;
所述第二十发送模块,用于向所述认证服务器发送包括所述设备认证数据和所述用户登录信息中的用户标识的第二认证请求;
所述第二十三接收模块,用于接收来自所述认证服务器的第二认证结果;
所述第二十二发送模块,用于向所述网站发送所述第二认证结果。
58.根据权利要求57所述的装置,其特征在于,还包括:浏览器;所述浏览器包括:第十七接收模块、第四显示模块和第十六发送模块;
所述第十七接收模块,用于接收来自所述认证插件的所述设备认证请求;
所述第四显示模块,用于当所述第十七接收模块接收到来自所述认证插件的所述设备认证请求后,在认证等待页面提示用户按下所述认证设备的按钮或者用于显示认证等待页面;
所述第十六发送模块,用于向所述认证设备发送所述设备认证请求。
59.根据权利要求57所述的装置,其特征在于,还包括:所述认证设备和所述浏览器;
所述认证设备包括:第十八接收模块和第十七发送模块;
所述浏览器包括:第十九接收模块和第十八发送模块;
所述第十八接收模块,用于接收来自所述浏览器的设备认证请求;
所述第十七发送模块,用于向所述浏览器发送所述设备认证数据;
所述第十九接收模块,用于接收来自所述认证设备的设备认证数据;
所述第十八发送模块,用于向所述网站发送所述设备认证数据和所述用户登录信息。
60.根据权利要求59所述的装置,其特征在于,所述浏览器还包括:第二获取模块和第十二发送模块;
所述第二获取模块,用于获取用户登录信息;
所述第十二发送模块,用于向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求。
61.根据权利要求60所述的装置,其特征在于,所述浏览器中包括浏览器脚本;
第二获取模块,具体用于当所述浏览器中的浏览器脚本监听到登录点击事件后,通过所述浏览器脚本获取浏览器页面中的用户登录信息;
所述第十二发送模块,具体用于通过所述浏览器脚本生成包括用户登录信息中的用户标识的获取设备认证请求,向所述认证插件发送包括用户登录信息中的用户标识的获取设备认证请求;
所述第十八发送模块,具体用于通过所述浏览器脚本向所述网站发送所述设备认证数据和所述用户登录信息。
62.根据权利要求61所述的装置,其特征在于,所述浏览器中还包括:第一赋值模块;
所述第一赋值模块,用于当所述第十七发送模块向所述浏览器发送所述设备认证数据后,通过所述浏览器脚本将所述设备认证数据赋值给浏览器页面中的隐藏表单项;
所述第十八发送模块,具体用于通过所述浏览器脚本向所述网站发送所述隐藏表单项和所述用户登录信息。
63.根据权利要求57所述的装置,其特征在于,所述第十四接收模块,具体用于当所述认证插件的第二函数被调用,接收来自所述浏览器的包括用户登录信息中的用户标识的获取设备认证请求。
64.根据权利要求57所述的装置,其特征在于,所述第二十一接收模块,具体用于当所述认证插件的第三函数被调用时,接收来自所述网站的所述设备认证数据和所述用户登录信息。
65.根据权利要求58所述的装置,其特征在于,还包括:认证设备;
若所述第四显示模块,用于当所述第十七接收模块接收到来自所述认证插件的所述设备认证请求后,显示认证等待页面;则所述认证设备包括:第六显示模块、第四获取模块和第二生成模块;
所述第四获取模块,用于等待用户按下按钮,获取用户按下按钮的信息;
所述第二生成模块,用于获取与所述设备认证请求中的密钥句柄对应的第一私钥,使用所述第一私钥对所述设备认证请求中的第二挑战值和应用参数签名生成第二签名值,生成包括所述第二签名值的设备认证数据;
所述第六显示模块,用于当所述第四获取模块获取到用户按下按钮的信息前,提示用户按下所述认证设备的按钮。
66.根据权利要求58所述的装置,其特征在于,还包括:认证设备;
若所述第四显示模块,用于当所述第十七接收模块接收到来自所述认证插件的所述设备认证请求后,在认证等待页面提示用户按下所述认证设备的按钮;则所述认证设备包括:第四获取模块和第二生成模块;
所述第四获取模块,用于等待用户按下按钮,获取用户按下按钮的信息;
所述第二生成模块,用于获取与所述设备认证请求中的密钥句柄对应的第一私钥,使用所述第一私钥对所述设备认证请求中的第二挑战值和应用参数签名生成第二签名值,生成包括所述第二签名值的设备认证数据。
67.根据权利要求65或66所述的装置,其特征在于,还包括:认证服务器;
所述认证服务器包括:第三获取模块、第十五接收模块、第十四发送模块、第二十二接收模块、第二验签模块和第二十一发送模块;
所述第十五接收模块,用于接收来自所述认证插件的获取设备认证请求;
所述第三获取模块,用于获取与所述获取认证设备请求中的所述用户标识对应的密钥句柄;
所述第十四发送模块,用于向所述认证插件发送包括所述密钥句柄、自身的第二挑战值和应用参数的设备认证请求;
所述第二十二接收模块,用于接收来自所述认证插件的包括所述设备认证数据和所述用户登录信息中的用户标识的第二认证请求;
所述第二验签模块,用于获取与所述第二认证请求中的用户标识对应的第一公钥,使用所述第一公钥对所述第二签名值验签,得到第二认证结果;
所述第二十一发送模块,用于向所述认证插件发送所述第二认证结果。
68.根据权利要求57所述的装置,其特征在于,还包括:网站和浏览器;
所述网站包括:第二十四接收模块、第三判断模块和第二十三发送模块;所述浏览器包括:第二十四接收模块和第五显示模块;
所述第二十四接收模块,用于接收来自所述认证插件的第二认证结果;
所述第三判断模块,用于根据所述第二认证结果判断用户是否登录成功;
所述第二十三发送模块,用于当所述第三判断模块判断为是后,向所述浏览器发送登录成功信息;当所述第三判断模块判断为否后,向所述浏览器发送登录失败信息;
所述第二十四接收模块,用于接收来自所述网站的登录成功信息或登录失败信息;
所述第五显示模块,用于当所述第二十四接收模块接收到登录成功信息后,显示用户登录成功;当所述第二十四接收模块接收到登录失败信息后,显示用户登录失败。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710068729.6A CN106878298B (zh) | 2017-02-08 | 2017-02-08 | 一种认证设备与网站的集成方法、系统及装置 |
US16/470,591 US11271932B2 (en) | 2017-02-08 | 2018-01-31 | Method for integrating authentication device and website, system and apparatus |
PCT/CN2018/074736 WO2018145593A1 (zh) | 2017-02-08 | 2018-01-31 | 一种认证设备与网站的集成方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710068729.6A CN106878298B (zh) | 2017-02-08 | 2017-02-08 | 一种认证设备与网站的集成方法、系统及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106878298A CN106878298A (zh) | 2017-06-20 |
CN106878298B true CN106878298B (zh) | 2019-11-29 |
Family
ID=59165921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710068729.6A Active CN106878298B (zh) | 2017-02-08 | 2017-02-08 | 一种认证设备与网站的集成方法、系统及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11271932B2 (zh) |
CN (1) | CN106878298B (zh) |
WO (1) | WO2018145593A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106878298B (zh) * | 2017-02-08 | 2019-11-29 | 飞天诚信科技股份有限公司 | 一种认证设备与网站的集成方法、系统及装置 |
US11050607B2 (en) * | 2017-06-21 | 2021-06-29 | Red Hat, Inc. | Proxy with a function as a service (FAAS) support |
CN111597491B (zh) * | 2020-07-24 | 2020-10-27 | 飞天诚信科技股份有限公司 | 一种实现浏览器弹框的方法及装置 |
CN114676330B (zh) * | 2022-03-30 | 2023-12-08 | 南京厚建软件有限责任公司 | 一种互联网平台互动数据统一回收的方法 |
TWI847516B (zh) * | 2023-01-31 | 2024-07-01 | 系微股份有限公司 | 遠端驗證實體安全性金鑰的系統及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002042886A1 (fr) * | 2000-11-23 | 2002-05-30 | Xu Xulin | Systeme de commerce electronique |
CN105162785A (zh) * | 2015-09-07 | 2015-12-16 | 飞天诚信科技股份有限公司 | 一种基于认证设备进行注册的方法和设备 |
CN106055966A (zh) * | 2016-05-16 | 2016-10-26 | 邵军利 | 一种认证方法及系统 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030233361A1 (en) * | 2002-06-13 | 2003-12-18 | Cady C. Conrad | Resumption of user authentication and restoration of interrupted virtual sessions in a stateless network |
CN1886928B (zh) | 2003-12-26 | 2010-04-28 | 三菱电机株式会社 | 被认证装置、认证装置以及认证方法 |
US20060259767A1 (en) * | 2005-05-16 | 2006-11-16 | Mansz Robert P | Methods and apparatuses for information authentication and user interface feedback |
US20100274634A1 (en) * | 2007-12-20 | 2010-10-28 | Meyer Ifrah | Method and system of conducting a communication |
US8799666B2 (en) * | 2009-10-06 | 2014-08-05 | Synaptics Incorporated | Secure user authentication using biometric information |
US8621571B2 (en) * | 2010-03-03 | 2013-12-31 | Htc Corporation | Online service providing system, method, server and mobile device thereof, and computer program product |
US20120284195A1 (en) * | 2011-05-04 | 2012-11-08 | Mcmillen Glenn Curtiss | Method and system for secure user registration |
CN102916933A (zh) * | 2011-08-03 | 2013-02-06 | 腾讯科技(深圳)有限公司 | 通过第三方网站进行注册或登陆的方法和系统 |
EP2860906B1 (en) * | 2012-06-29 | 2017-09-06 | Huawei Technologies Co., Ltd. | Identity authentication method and device |
US20140122343A1 (en) * | 2012-11-01 | 2014-05-01 | Symantec Corporation | Malware detection driven user authentication and transaction authorization |
US9172687B2 (en) * | 2012-12-28 | 2015-10-27 | Nok Nok Labs, Inc. | Query system and method to determine authentication capabilities |
US9686284B2 (en) * | 2013-03-07 | 2017-06-20 | T-Mobile Usa, Inc. | Extending and re-using an IP multimedia subsystem (IMS) |
US10270748B2 (en) * | 2013-03-22 | 2019-04-23 | Nok Nok Labs, Inc. | Advanced authentication techniques and applications |
CN103414824B (zh) * | 2013-08-14 | 2015-10-28 | 惠州Tcl移动通信有限公司 | 一种基于移动终端的自动登录处理方法及系统 |
US20170109751A1 (en) * | 2014-05-02 | 2017-04-20 | Nok Nok Labs, Inc. | System and method for carrying strong authentication events over different channels |
US9577999B1 (en) * | 2014-05-02 | 2017-02-21 | Nok Nok Labs, Inc. | Enhanced security for registration of authentication devices |
US9654469B1 (en) * | 2014-05-02 | 2017-05-16 | Nok Nok Labs, Inc. | Web-based user authentication techniques and applications |
CN106713235B (zh) * | 2015-11-16 | 2019-10-18 | 泰金宝电通股份有限公司 | 帐号注册与登入方法及使用所述方法的网络附加存储系统 |
US10581823B2 (en) * | 2016-03-21 | 2020-03-03 | Vmware, Inc. | Web client plugin manager in vCenter managed object browser |
US10356621B2 (en) * | 2016-05-23 | 2019-07-16 | Citrix Systems, Inc. | Browser plug-in for secure web access |
CN106878298B (zh) * | 2017-02-08 | 2019-11-29 | 飞天诚信科技股份有限公司 | 一种认证设备与网站的集成方法、系统及装置 |
DE102017113529A1 (de) * | 2017-06-12 | 2018-12-13 | Rubean AG | Verfahren und System zur Echtheitsprüfung einer vertrauenswürdigen Benutzeroberfläche |
US11831409B2 (en) * | 2018-01-12 | 2023-11-28 | Nok Nok Labs, Inc. | System and method for binding verifiable claims |
-
2017
- 2017-02-08 CN CN201710068729.6A patent/CN106878298B/zh active Active
-
2018
- 2018-01-31 WO PCT/CN2018/074736 patent/WO2018145593A1/zh active Application Filing
- 2018-01-31 US US16/470,591 patent/US11271932B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002042886A1 (fr) * | 2000-11-23 | 2002-05-30 | Xu Xulin | Systeme de commerce electronique |
CN105162785A (zh) * | 2015-09-07 | 2015-12-16 | 飞天诚信科技股份有限公司 | 一种基于认证设备进行注册的方法和设备 |
CN106055966A (zh) * | 2016-05-16 | 2016-10-26 | 邵军利 | 一种认证方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US20190386993A1 (en) | 2019-12-19 |
US11271932B2 (en) | 2022-03-08 |
WO2018145593A1 (zh) | 2018-08-16 |
CN106878298A (zh) | 2017-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106878298B (zh) | 一种认证设备与网站的集成方法、系统及装置 | |
CN105162785B (zh) | 一种基于认证设备进行注册的方法和设备 | |
CN106209763B (zh) | 一种登录方法及系统 | |
CN105187450B (zh) | 一种基于认证设备进行认证的方法和设备 | |
CN107733852B (zh) | 一种身份验证方法及装置,电子设备 | |
CN104378206B (zh) | 一种基于USB‑Key的虚拟桌面安全认证方法及系统 | |
CN105897424B (zh) | 一种增强身份认证的方法 | |
CN105306490B (zh) | 支付验证系统、方法及装置 | |
CN104468115B (zh) | 信息系统访问认证方法及装置 | |
CN104065621B (zh) | 一种第三方服务的身份验证方法、客户端和系统 | |
US8438620B2 (en) | Portable device for clearing access | |
CN108881310A (zh) | 一种注册系统及其工作方法 | |
CN104283885B (zh) | 一种基于智能终端本地认证的多sp安全绑定的实现方法 | |
CN104540129B (zh) | 第三方应用的注册和登录方法及系统 | |
CN104283886B (zh) | 一种基于智能终端本地认证的web安全访问的实现方法 | |
CN104700007A (zh) | 一种手势印象密码的设置及应用方法 | |
CN109150541A (zh) | 一种认证系统及其工作方法 | |
TW201014315A (en) | User identity authentication method, system thereof and identifying code generating maintenance subsystem | |
CN106100848A (zh) | 基于智能手机和用户口令的双因子身份认证系统及方法 | |
CN111062023B (zh) | 多应用系统实现单点登录的方法及装置 | |
CN101136915A (zh) | 一种实现多业务统一安全认证的方法和系统 | |
CN106063308A (zh) | 基于用户标识符的装置、身份和活动管理系统 | |
CN105162773B (zh) | 一种基于移动终端的Web系统便捷登录方法 | |
CN110336870A (zh) | 远程办公运维通道的建立方法、装置、系统及存储介质 | |
CN106230594A (zh) | 一种基于动态口令进行用户认证的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |