CN115834074B - 一种身份认证方法、装置及设备 - Google Patents
一种身份认证方法、装置及设备 Download PDFInfo
- Publication number
- CN115834074B CN115834074B CN202211271551.2A CN202211271551A CN115834074B CN 115834074 B CN115834074 B CN 115834074B CN 202211271551 A CN202211271551 A CN 202211271551A CN 115834074 B CN115834074 B CN 115834074B
- Authority
- CN
- China
- Prior art keywords
- authentication
- information
- identity authentication
- server
- verification
- 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
Abstract
本说明书实施例公开了一种身份认证方法、装置及设备,该方法包括:获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求;向服务器发送该身份认证请求,并接收该身份认证请求对应的认证响应数据,该认证响应数据是服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成的数据;对目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于验证信息和目标生物信息对应的身份认证开通信息创建认证数据,将认证数据发送给服务器;接收服务器发送的对验证信息和目标生物信息对应的身份认证开通信息进行校验的结果,基于该结果确定身份认证请求对应的身份认证是否通过。
Description
技术领域
本文件涉及计算机技术领域,尤其涉及一种身份认证方法、装置及设备。
背景技术
目前,在终端设备(如手机)中开通本地身份认证(如通过某金融应用程序开通在线支付中的基于面部识别的身份认证)后,此时,会在服务端记录一条该用户的身份认证的开通记录,其中包括用户标识、设备标识、认证类型(如面部识别类或指纹识别类等)、业务密钥对(包括业务密钥对的标识和业务密钥对中的公钥等),在后续的身份认证过程中,会读取上述开通记录确认该用户是否具有相应的开通记录,如果未开通,在身份认证可用性分析阶段或认证阶段,即使服务端认证通过,最终结果也无法完成身份认证。
然而,上述处理方式存在一定隐私合规风险,在服务端虽然没有存储用户的具体生物特征,但是仍然存储有设备标识与用户标识的关系、用户使用的生物验证类型等信息,在监管要求高,且目前大家对自己的隐私数据越来越关注,用户不希望信息被记录的情况下,无法满足要求,此外,在高并发时,扩展性差,而且,新的IFAA联盟会员在接入时,需要持久化设备标识、业务公钥等信息,方案复杂度高。为此,需要提供一种更优的隐私合规处理机制,同时,可以具有更高的扩展性,而且可以减少中间信息的持久化保存的技术方案。
发明内容
本说明书实施例的目的是提供一种更优的隐私合规处理机制,同时,可以具有更高的扩展性,而且可以减少中间信息的持久化保存的技术方案。
为了实现上述技术方案,本说明书实施例是这样实现的:
本说明书实施例提供的一种身份认证方法,所述方法包括:获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型。向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息。对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例提供的一种身份认证系统,所述系统包括终端设备和服务器,其中:所述终端设备,被配置为获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,向所述服务器发送所述身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型。所述服务器,被配置为对所述目标生物信息对应的认证类型进行验证,如果验证通过,则生成所述身份认证请求对应的认证响应数据,所述认证响应数据中包括验证信息。所述终端设备,被配置为接收所述身份认证请求对应的认证响应数据,对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器。所述服务器,被配置为对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。所述终端设备,被配置为接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例提供的一种身份认证装置,所述装置包括:认证请求模块,获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型。认证响应模块,向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息。验证模块,对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。校验模块,接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例提供的一种身份认证设备,所述身份认证设备包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型。向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息。对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例还提供了一种存储介质,所述存储介质用于存储计算机可执行指令,所述可执行指令在被处理器执行时实现以下流程:获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型。向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息。对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1A为本说明书一种身份认证方法实施例;
图1B为本说明书一种身份认证过程的示意图;
图2为本说明书一种身份认证的注册过程的示意图;
图3为本说明书另一种身份认证过程的示意图;
图4为本说明书又一种身份认证过程的示意图;
图5为本说明书一种身份认证的注销过程的示意图;
图6为本说明书一种身份认证系统的结构示意图;
图7为本说明书另一种身份认证系统的结构示意图;
图8为本说明书又一种身份认证过程的示意图;
图9为本说明书另一种身份认证的注册过程的示意图;
图10为本说明书一种身份认证装置实施例;
图11为本说明书一种身份认证设备实施例。
具体实施方式
本说明书实施例提供一种身份认证方法、装置及设备。
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
实施例一
如图1A和图1B所示,本说明书实施例提供一种身份认证方法,该方法的执行主体可以为终端设备,其中,该终端设备可以如手机、平板电脑等移动终端设备,还可以如笔记本电脑或台式电脑等计算机设备,或者,也可以为IoT设备(具体如智能手表、车载设备等)等。该方法具体可以包括以下步骤:
在步骤S102中,获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求,该身份认证请求中包括目标生物信息对应的认证类型。
其中,目标生物信息可以是任意生物信息,例如面部信息或指纹信息等,其中的面部信息具体可以是通过面部图像获取,指纹信息可以是通过指纹图像获取等,具体可以根据实际情况设定,本说明书实施例对此不做限定。身份认证请求可以是对指定用户的身份进行认证的请求,身份认证请求可以是在执行某项业务之前或执行的过程中需要进行的身份认证请求,其中的业务可以如支付业务、转账业务或即时通讯业务等,具体可以根据实际情况设定。目标生物信息对应的认证类型可以包括如面部识别类、指纹识别类或虹膜识别类等,具体可以根据实际情况设定,本说明书实施例对此不做限定。
在实施中,目前,在终端设备(如手机)中开通本地身份认证(如通过某金融应用程序开通在线支付中的基于面部识别的身份认证)后,此时,会在服务端记录一条该用户的身份认证的开通记录,其中包括用户标识、设备标识、认证类型(如面部识别类或指纹识别类等)、业务密钥对(包括业务密钥对的标识和业务密钥对中的公钥等),在后续的身份认证过程中,会读取上述开通记录确认该用户是否具有相应的开通记录,如果未开通,在身份认证可用性分析阶段或认证阶段,即使服务端认证通过,最终结果也无法完成身份认证。
具体地,如图2所示,在进行身份认证注册的过程中,IFAA Server和IFAA认证中心可以是认证服务器中的主要服务和功能,其中,创建RegisterReqData的过程:终端设备可以发起免密注册流程,首先通过可信应用TA获取设备标识(即deviceId,可以是终端设备的标识,具体如终端设备的名称、编码、MAC地址等),并还可以获取认证类型、certEncode和IFAA协议的版本信息,并创建注册请求,将其传递给业务服务器,并由业务服务器传递给IFAA Server(即认证服务器)。生成RegisterRespData的过程:IFAA Server会创建业务token、挑战码(可以用来避免重放攻击)等信息构建RegisterRespData,并采用IFAAServer证书私钥签名再发送给终端设备。通常,业务服务器会通过开放平台接入IFAAServer,所以IFAA Server接收到业务服务器的注册请求时,可以明确知道业务服务器在开放平台注册的应用,以及确保是真实的业务服务器与IFAA Server通信。在生物特征确认的过程中,会要求用户进行生物特征识别以获取生物特征的标识,其中,生物特征为指纹特征的情况,其标识可以是指位信息(即finId),此外,指纹识别还要求用户此时输入的指位必须为其在系统绑定的多个指位中的一个。在创建业务密钥对的过程中,当生物特征识别通过后,会由可信执行环境TEE中的IFAA Authenticator创建业务密钥对,其中的业务私钥和业务Token会放置于SFS文件系统中。可以使用设备私钥进行签名以创建BizPubKeyData,其中,可以创建BizPubKeyData,即使用上述创建的业务公钥以及之前IFAA Server下发的token、挑战码发送给业务服务器,并将其转发至IFAA Server。在确定校验设备是否合法的过程中,由于IFAA Server传来的BizPubKeyData包含了设备私钥的签名信息,且设备信息以及设备公钥都存放在IFAA认证中心,所以该步骤由IFAA认证中心负责执行。通过校验token、挑战码是否合法来避免重放攻击,同时也确保token与挑战码为之前IFAA Server下发的数据。
如图3所示,在进行身份认证的过程中,在创建AuthReqData的过程中,为了创建发起认证请求数据,通常,终端设备的用户处于登录状态时下才会进入校验流程,因此,终端设备在此环节需要找到对应该登录用户的业务Token(在免密登录环节已经获取,并与用户建立一一对应关系),同时,还要指明使用的生物特征识别类型,以及本机设备的生物特征识别能力(比如该设备是否有指纹识别的功能等)。在验证并创建AuthReqRespData的过程中,该环节主要是确认客户端的验证请求信息是否和服务端一致,比如客户端发来的Token与设备标识之间的关系是否与服务端一致。校验过后服务端会生成挑战码,避免重放攻击。在客户端生物特征校验的过程中,AuthReqRespData一旦被发到客户端,且经过IFAAauthenticator校验(IFAA 证书校验)后,根据IFAA Server指令执行发起指定类型的生物特征识别校验。在创建AuthData并使用业务私钥签名的过程中,会拿到用户生物特征校验结果,创建AuthReqRespData,并使用token对应的业务密钥进行签名,这样就能保证该生物特征标识是由某一个用户在具体某一个设备,使用了某一个应用授权产生的。对于指纹而言这里的生物特征标识就是FinId(指位信息)。在校验AuthData签名及客户端校验有效性的过程中,会用业务Token对应的业务公钥(在注册阶段已经留存在IFAA Server)去校验AuthData的签名是否可信。此外,还要比对一下传入的FinId是否与注册阶段记录的FinId一致,以确保注册与校验的指位是一致的。将校验结果用IFAA Server证书签名,以确保客户端能够确认校验结果是否来自于真实可信的IFAA Server,具体校验过程是由客户端IFAA Authenticator执行的。
然而,上述处理方式存在一定隐私合规风险,在服务端虽然没有存储用户的具体生物特征,但是仍然存储有设备标识与用户标识的关系、用户使用的生物验证类型等信息,在监管要求高或用户不希望信息被记录的情况下,无法满足要求,此外,在高并发时,扩展性差,而且,新的IFAA联盟会员在接入时,需要持久化设备标识、业务公钥等信息,方案复杂度高。为此,需要提供一种更优的隐私合规处理机制,同时,可以具有更高的扩展性,而且可以减少中间信息的持久化保存的技术方案。本说明书实施例提供一种可实现的技术方案,具体可以包括以下内容。
当某用户需要进行身份认证处理(具体如进行支付或转账处理等)时,可以启动终端设备中安装的相应的应用程序,该应用程序中可以设置有身份认证处理的入口(具体如超链接或按键等),通过该入口可以执行身份认证处理,此时,终端设备可以通过生物信息采集组件(如摄像组件或指纹采集组件等)采集该用户的生物信息,可以将采集的生物信息作为待验证的目标生物信息,可以获取目标生物信息对应的认证类型,并可以基于目标生物信息生成身份认证请求。
需要说明的是,在生成身份认证请求时,除了可以使用目标生物信息对应的认证类型外,还可以使用其它相关信息生成身份认证请求,例如,还可以使用包括设备标识、证书编码格式、IFAA协议的版本信息中的一个或多个生成身份认证请求,具体可以根据实际情况设定,本说明书实施例对此不做限定。此外,通常用户处于登录状态时下才会进入身份认证流程,同时还要指明使用的目标生物信息对应的认证类型,以及终端设备的生物特征识别能力(比如该终端设备是否有指纹识别的功能或该终端设备是否有面部识别的功能等)等,,具体可以根据实际情况设定。
在步骤S104中,向服务器发送上述身份认证请求,并接收该身份认证请求对应的认证响应数据,该认证响应数据是服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成的数据,该认证响应数据中包括验证信息。
其中,服务器可以包括用于进行身份认证的认证服务器,认证服务器中可以设置有IFAA服务和IFAA认证中心等,IFFA可以为解决andorid系统碎片化、生态链协同需求、手机安全性问题而发起并联合多家厂商组建的IFAA(Internet finance Authenticationalliance)互联网金融身份认证联盟,制定IFAA协议即生物认证识统一协议,解决产业链协同问题,实现为公众提供更便捷安全的生物识别服务的目的。IFAA服务负责第三方应用生物特征识别校验与注册,目前由IFAA负责实现与维护,而后续如果拿到IFAA CA签发证书的用户则可以搭建IFAA Server开展注册与校验服务。IFAA认证中心负责设备信息认证,目前由IFAA负责实现与维护。IFAA协议中共存在三对公私密钥对:设备私钥与公钥:由设备出厂期间创建,其中私钥由生产商写入设备RPMB中,公钥提交给IFAA认证中心,用于校验设备合法性;IFAA根证书公钥与私钥:由IFAA提供证书公钥,其内置于TEE厂商对IFAAAuthenticator标准实现的代码中,私钥保存在IFAA认证中心,用于确保IFAA SDK与IFAAServer通信信息的可靠;业务私钥与业务公钥:第三方应用在开启生物识别功能时会由IFAA Authenticator创建,其中私钥加密存储于终端设备中,公钥由IFAA Server保存,用于第三方应用进行免密验证。验证信息可以通过多种不同的方式获取或通过多种不同的方式设定,例如,验证信息可以是预先设定的挑战码或指定的字符串等,可以用于避免出现重放攻击,其中的挑战码也称作挑战口令,可以是指遵循握手验证协议(CHAP)生成的一组加密口令,用于在传输过程中保证用户的真实密码不被泄露,其中,CHAP是一种加密的验证方式,能够避免建立连接时传送用户的真实密码,CHAP不再直接通过链路发送明文口令,而是使用挑战码以哈希算法对口令进行加密,因为服务器端存有明文口令,因此,服务器可以重复客户端进行的操作,并将结果与用户返回的口令进行对照,CHAP为每一次验证任意生成一个挑战字串来防止受到再现攻击,在整个连接过程中,CHAP将不定时的向客户端重复发送挑战码,从而避免第三方进行冒充攻击。
在实施中,终端设备可以向服务器发送上述身份认证请求,服务器接收到身份认证请求后,可以获取身份认证请求中的认证类型,并判断该认证类型是否与终端设备预先注册的身份认证机制中的生物信息对应的认证类型相同,如果两者相同,则可以生成相应的验证信息,并可以基于该验证信息生成该身份认证请求对应的认证响应数据,可以将该认证响应数据发送给终端设备,终端设备可以接收该身份认证请求对应的认证响应数据。
在实际应用中,该认证响应数据中除了可以包括验证信息外,还可以包括其它相关信息,例如,还可以使用包括设备标识、应用标识、认证类型、Token、IFAA协议的版本信息中的一个或多个,具体可以根据实际情况设定,本说明书实施例对此不做限定。
在步骤S106中,对上述目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于该验证信息和目标生物信息对应的身份认证开通信息创建认证数据,将该认证数据发送给服务器,该认证数据用于触发服务器对该认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验。
其中,身份认证开通信息可以是相应的身份认证机制开通时采集的相关信息,其中可以包括设备标识、用户标识、认证类型、身份认证机制开通时设置的基准生物信息对应的验证信息(具体如基准生物信息的哈希值等)、基准生物信息签名等,具体可以根据实际情况设定,本说明书实施例对此不做限定。身份认证开通信息中不包含用户的生物信息(具体如面部图像信息或指纹信息等)、且身份认证开通信息不会持久化存储于服务器中(即在身份认证的注册完成后,服务器会删除相应的身份认证开通信息)。
在实施中,终端设备可以将获取的目标生物信息与预先存储的身份认证机制开通时设置的基准生物信息进行比对,如果两者相匹配,则表明对上述目标生物信息的验证通过,此时,可以获取目标生物信息对应的身份认证开通信息,并基于该验证信息和目标生物信息对应的身份认证开通信息创建认证数据,可以将该认证数据发送给服务器,服务器接收到该认证数据后,可以对认证数据进行分析,得到其中包含的验证信息和目标生物信息对应的身份认证开通信息,然后,可以将得到的验证信息与服务器中存储的验证信息进行比对,并可以重新计算目标生物信息对应的身份认证开通信息中的某一项或多项数据的数值,并将其与接收到的身份认证开通信息中的相应信息进行比对(例如,可以重新计算目标生物信息对应的身份认证开通信息中的基准生物信息签名,然后,将其与接收到的身份认证开通信息中的目标生物信息签名进行比对,或者,可以重新计算目标生物信息对应的身份认证开通信息中的基准生物信息的哈希值,然后,将其与接收到的身份认证开通信息中的目标生物信息的哈希值进行比对等),以对该认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验,如果上述两种比对的结果均为通过,则可以确定对上述验证信息和目标生物信息对应的身份认证开通信息进行校验的结果为通过,否则,可以确定对上述验证信息和目标生物信息对应的身份认证开通信息进行校验的结果为不通过。
在步骤S108中,接收服务器发送的对上述验证信息和目标生物信息对应的身份认证开通信息进行校验的结果,基于该结果确定上述身份认证请求对应的身份认证是否通过。
在实施中,如果对上述验证信息和目标生物信息对应的身份认证开通信息进行校验的结果为通过,则可以确定上述身份认证请求对应的身份认证通过,此时,可以继续执行相应业务中的其它操作,如果对上述验证信息和目标生物信息对应的身份认证开通信息进行校验的结果为不通过,则可以确定上述身份认证请求对应的身份认证不通过,此时,可以向用户发出相应的提示信息,以促使用户进行相应处理。
本说明书实施例提供一种身份认证方法,通过获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求,该身份认证请求中包括目标生物信息对应的认证类型,然后,向服务器发送该身份认证请求,服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成认证响应数据,该认证响应数据中包括验证信息,终端设备接收该身份认证请求对应的认证响应数据,终端设备对目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于验证信息和目标生物信息对应的身份认证开通信息创建认证数据,将认证数据发送给服务器,服务器对认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验,终端设备接收服务器发送的对验证信息和目标生物信息对应的身份认证开通信息进行校验的结果,基于该结果确定身份认证请求对应的身份认证是否通过,这样,由于身份认证开通信息完全存在与用户的终端设备上,服务器端并不会持久化存储该信息,因此,不存在任何的隐私合规问题,此外,提高扩展性是有一定的前提的,服务器的网络IO消耗很低,这样在扩容时,就不需要考虑数据库或缓存的状态问题,完全为无状态的水平扩容,从而提高了扩展性,而且,由于没有中间信息的持久化保存,简化了接入的复杂程度。
实施例二
如图4所示,本说明书实施例提供一种身份认证方法,该方法的执行主体可以为终端设备,其中,该终端设备可以如手机、平板电脑等移动终端设备,还可以如笔记本电脑或台式电脑等计算机设备,或者,也可以为IoT设备(具体如智能手表、车载设备等)等。该方法具体可以包括以下步骤:
在步骤S402中,向服务器发送目标用户的身份认证开通请求,该身份认证开通请求中包括设备标识,该身份认证开通请求用于触发服务器生成身份认证开通请求对应的开通验证信息。
其中,开通验证信息可以是用于开通身份认证机制的验证信息,开通验证信息可以通过多种不同的方式获取或通过多种不同的方式设定,例如,开通验证信息可以是预先设定的挑战码、会话标识、指定的字符串等中的一个或多个,可以用于避免出现重放攻击等。目标用户可以是任意用户。设备标识可以为终端设备的名称、编码或MAC地址等,具体可以根据实际情况设定。
在实施中,考虑到执行某些业务的安全性,终端设备可以开通身份认证机制,因此,需要为终端设备设置一种用于进行身份认证的生物识别机制,以方便用户执行上述业务时进行身份认证,基于此,目标用户可以使用终端设备通过可信应用TA获取设备标识等信息,并可以基于获取的信息生成身份认证开通请求,并可以发起生物识别机制的身份认证开通请求,并将该身份认证开通请求发送给服务器,此时,服务器可以接收终端设备发送的生物识别机制的身份认证开通请求,并可以为该身份认证开通请求生成相应的开通验证信息。
其中的TA(Trusted Application)可以位于TEE域内的应用被称为可信应用,一般由TEE生产商开发或由手机设备产商开发写入,其创建的数据可以被加密存储,仅能被自身访问。另外,一些敏感信息(如获取指纹标识等)接口也仅能被该区域内的TA访问。TEE还有一个特性就是无视终端设备(如手机)root操作,尽管终端设备被root了,但TEE环境仍然不受影响独立运作,其数据安全性与系统安全性得到了保障。正是基于TEE的安全特性,IFAA协议在此区域内设定了一个IFAA authenticator,TA主要负责生物特征信息索引的查询和相关秘钥的创建等与安全息息相关相关的操作。
需要说明的是,该身份认证开通请求中除了可以包括设备标识外,还可以包括其它信息,例如认证类型、IFAA协议的版本信息、证书编码格式等,具体可以根据实际情况设定。
在步骤S404中,接收服务器发送的携带有开通验证信息的开通请求响应信息,并获取目标用户的基准生物信息,基于基准生物信息确定基准生物信息的哈希值和基准生物信息对应的认证类型,并基于基准生物信息的哈希值、基准生物信息对应的认证类型和开通验证信息,生成身份认证开通信息,将该身份认证开通信息发送给服务器,该身份认证开通信息用于触发服务器对开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备。
其中,身份认证开通信息可以包括以下中的一个或多个:设备标识、用户标识、基准生物信息对应的认证类型、基准生物信息的哈希值、身份认证开通信息对应的签名密钥。
在实施中,服务器可以基于开通验证信息生成开通请求响应信息,可以将该开通请求响应信息发送给终端设备,终端设备可以在接收到开通请求响应信息后,获取目标用户的基准生物信息,基于基准生物信息确定基准生物信息的哈希值和基准生物信息对应的认证类型,基于基准生物信息的哈希值、基准生物信息对应的认证类型和开通验证信息,生成身份认证开通信息,将该身份认证开通信息发送给服务器,服务器可以接收该身份认证开通信息,并对开通验证信息进行验证,验证通过后,可以对身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,可以将签名后的身份认证开通信息发送给终端设备。其中的对身份认证开通信息进行签名处理,得到签名后的身份认证开通信息的处理可以包括多种,例如,可以预先设定签名密钥,可以使用该签名密钥对身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,具体可以根据实际情况设定,本说明书实施例对此不做限定。
需要说明的是,上述获取目标用户的基准生物信息,基于基准生物信息确定基准生物信息的哈希值和基准生物信息对应的认证类型,并基于基准生物信息的哈希值、基准生物信息对应的认证类型和开通验证信息,生成身份认证开通信息的处理会要求用户进行生物特征识别获取生物特征的标识,对于指纹识别而言其标识可以是指位信息(即finId),此外,指纹识别还要求用户此时输入的指位必须为其在系统绑定的多个指位中的一个。
在实际应用中,上述将该身份认证开通信息发送给服务器的具体处理可以多种多样,以下提供一种可选的处理方式,具体可以包括以下内容:基于设备密钥对身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,签名后的身份认证开通信息用于触发服务器对签名后的身份认证开通信息进行验签处理,如果验签通过,则对开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备。
其中,设备密钥可以是终端设备预先设定的密钥,设备密钥可以是一个密钥,可以用于加密或加签,也可以用于解密或验签,设备密钥也可以是密钥对中的一个密钥,具体可以是设备私钥,也可以是设备公钥等,具体可以根据实际情况设定。
上述处理通过设备密钥进行签名处理,一方面是为了保证数据不可篡改性,另外确保信息是由可信设备产生的。
在步骤S406中,接收服务器发送的携带有签名后的身份认证开通信息的注册确认结果,并将签名后的身份认证开通信息存储于可信执行环境中。
其中,可信执行环境可以设置于终端设备中,可信执行环境可以是TEE(TrustedExecution Environment),该可信执行环境可以通过预定的编程语言编写的程序来实现(即可以是以软件的形式实现),也可以通过硬件设备和预先编写的程序共同实现(即可以是以硬件+软件的形式实现)等,可信执行环境可以是安全并与其它环境相隔离的数据处理环境,即在可信执行环境中执行的处理,以及数据处理的过程中产生的数据等无法被可执行环境外的其它执行环境或应用程序所访问。可信执行环境可以通过创建一个可以在可信区域(如TrustZone等)中独立运行的小型操作系统实现,可信执行环境可以以系统调用(如由TrustZone内核直接处理)的方式直接提供的服务。终端设备中可以包括REE(富执行环境)和TEE(即可信执行环境),REE下可以运行终端设备安装的操作系统,如Android操作系统、iOS操作系统、Windows操作系统、Linux操作系统等,REE的特点可以包括功能强大,开放性和扩展性好,可以为上层应用程序提供终端设备的所有功能,比如摄像功能,触控功能等,但是,REE中存在很多安全隐患,例如,操作系统可以获得某应用程序的所有数据,但很难验证该操作系统或该应用程序是否被篡改,如果被篡改,则用户的信息将存在很大的安全隐患,针对于此,就需要终端设备中的TEE进行处理。TEE具有其自身的执行空间,也就是说在TEE下也存在一个操作系统,TEE比REE的安全级别更高,TEE所能访问的终端设备中的软件和硬件资源是与REE分离的,但TEE可以直接获取REE的信息,而REE不能获取TEE的信息。TEE可以通过提供的接口来进行验证等处理,从而保证用户信息(如支付信息、用户隐私信息等)不会被篡改、密码不会被劫持、指纹或面部等信息不会被盗用。
在实施中,服务器可以基于签名后的身份认证开通信息生成注册确认结果,并可以将该注册确认结果发送给终端设备,终端设备可以接收服务器发送的携带有签名后的身份认证开通信息的注册确认结果,并将签名后的身份认证开通信息存储于可信执行环境中。
基于上述的身份认证注册过程,已完成身份认证的注册,此时,可以应用注册的身份认证机制对某业务中的身份认证进行处理,具体可以包括以下步骤S408~步骤S418的处理。
在步骤S408中,获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求,该身份认证请求中包括目标生物信息对应的认证类型。
其中,目标生物信息可以为面部信息、指纹信息、掌纹信息、虹膜信息中的任一种。
在步骤S410中,向服务器发送上述身份认证请求,并接收该身份认证请求对应的认证响应数据,该认证响应数据是服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成的数据,该认证响应数据中包括验证信息。
在步骤S412中,对目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于上述验证信息和目标生物信息对应的身份认证开通信息创建认证数据。
在步骤S414中,使用预设的设备密钥对上述认证数据进行签名处理,得到签名的认证数据,并将签名的认证数据发送给服务器,签名的认证数据用于触发服务器对签名的认证数据验签处理,并在验签通过后对认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验。
在步骤S416中,接收服务器发送的对验证信息和目标生物信息对应的身份认证开通信息进行校验的结果。
其中,接收的结果为服务器通过预设的签名证书对结果进行签名处理后的结果,该签名证书可以是服务器预先设定的IFAA证书。
在步骤S418中,对接收的结果进行验签处理,如果验签通过,则基于该结果确定身份认证请求对应的身份认证是否通过。
上述是身份认证处理的注册和认证过程,还可以对上述注册的身份认证机制进行注销,为了与通常的身份认证注销形成区别,以下对通常的身份认证注销进行说明,具体可以参见下述内容:
如图5所示,终端设备可以获取认证类型、设备标识、证书编码格式、IFAA协议的版本信息和业务Token等信息,可以基于获取的信息生成身份认证注销请求,可以将该身份认证注销请求发送给服务器,服务器可以对该身份认证注销请求中的信息进行验证,如果验证通过,则可以获取业务Token、应用标识、设备标识、认证类型和IFAA协议的版本信息等信息,可以基于获取的信息生成注销响应数据,并可以基于IFAA服务的证书私钥对注销响应数据进行签名处理,得到签名后的注销响应数据,然后,可以删除业务Token和业务私钥,并将签名后的注销响应数据发送给终端设备,终端设备可以删除业务Token和业务私钥。其中的服务器可以包括业务服务器和IFAA服务器。上述注销流程相对简单,由终端设备发起身份认证注销请求并带上设备标识与业务Token,IFAA服务器校验成功后会清除本地记录的业务Token和业务公钥,并下发注销指令给终端设备,终端设备校验指令的合法性后,将会清除本地存放的Token以及业务私钥。
基于上述处理,可以对上述注册的身份认证机制进行注销,由于身份认证开通信息只保存在终端设备上,注销过程只在终端设备上删除身份认证开通信息即可,具体可以参见下述步骤S420和步骤S422的处理。
在步骤S420中,接收基准生物信息对应的身份认证注销指令。
在步骤S422中,删除可信执行环境中存储的基准生物信息对应的签名后的身份认证开通信息。
本说明书实施例提供一种身份认证方法,通过获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求,该身份认证请求中包括目标生物信息对应的认证类型,然后,向服务器发送该身份认证请求,服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成认证响应数据,该认证响应数据中包括验证信息,终端设备接收该身份认证请求对应的认证响应数据,终端设备对目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于验证信息和目标生物信息对应的身份认证开通信息创建认证数据,将认证数据发送给服务器,服务器对认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验,终端设备接收服务器发送的对验证信息和目标生物信息对应的身份认证开通信息进行校验的结果,基于该结果确定身份认证请求对应的身份认证是否通过,这样,由于身份认证开通信息完全存在与用户的终端设备上,服务器端并不会持久化存储该信息,因此,不存在任何的隐私合规问题,此外,提高扩展性是有一定的前提的,服务器的网络IO消耗很低,这样在扩容时,就不需要考虑数据库或缓存的状态问题,完全为无状态的水平扩容,从而提高了扩展性,而且,由于没有中间信息的持久化保存,简化了接入的复杂程度。
实施例三
如图6所示,本说明书实施例提供一种身份认证系统,该身份认证系统包括终端设备610和服务器620,其中,终端设备610可以是上述实施例一和实施例二中的终端设备,该终端设备610可以如手机、平板电脑等移动终端设备,还可以如笔记本电脑或台式电脑等计算机设备,或者,也可以为IoT设备(具体如智能手表、车载设备等)等。该服务器可以是独立的一个服务器,还可以是由多个服务器构成的服务器集群等,该服务器可以是如金融业务或网络购物业务等的后台服务器,也可以是某应用程序的后台服务器等。其中:
所述终端设备610,被配置为获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,向所述服务器620发送所述身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
所述服务器620,被配置为对所述目标生物信息对应的认证类型进行验证,如果验证通过,则生成所述身份认证请求对应的认证响应数据,所述认证响应数据中包括验证信息;
所述终端设备610,被配置为接收所述身份认证请求对应的认证响应数据,对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器620;
所述服务器620,被配置为对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验;
所述终端设备610,被配置为接收所述服务器620发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
上述终端设备610和服务器620的具体处理可以参见上述实施例一和实施例二中终端设备610和服务器620的具体处理过程,以及图1A、图1B和图4所示,在此不再赘述。
本说明书实施例中,如图7所示,所述服务器620包括业务服务器621和认证服务器622,其中在进行身份认证的过程中,可以包括:
所述业务服务器621,被配置为接收所述终端设备610发送的所述身份认证请求,并将所述身份认证请求发送给所述认证服务器622;
所述认证服务器622,被配置为对所述目标生物信息对应的认证类型进行验证,如果验证通过,则生成所述身份认证请求对应的认证响应数据,所述认证响应数据中包括验证信息;
所述业务服务器621,被配置为接收所述身份认证请求对应的认证响应数据,并将所述认证响应数据发送给所述终端设备610;
所述终端设备610,被配置为对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述业务服务器621;
所述业务服务器621,被配置为将所述认证数据发送给所述认证服务器622;
所述认证服务器622,被配置为对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,将校验结果发送给所述业务服务器621;
所述终端设备610,被配置为接收所述业务服务器621发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
上述终端设备610、业务服务器621和认证服务器622的具体处理可以参见上述实施例一和实施例二中终端设备610和服务器的具体处理过程,以及图8所示,其中,业务服务器621可以是某项业务的后台服务器,在进行身份认证的过程中,业务服务器621可以将终端设备610发起的与身份认证相关的信息转发给认证服务器622,认证服务器622中可以设置有IFAA服务和IFAA认证中心等,IFAA服务负责第三方应用生物特征识别校验与注册,目前由IFAA负责实现与维护,而后续如果拿到IFAA CA签发证书的用户则可以搭建IFAAServer开展注册与校验服务。IFAA认证中心负责设备信息认证,目前由IFAA负责实现与维护。IFAA协议中共存在三对公私密钥对:设备私钥与公钥、IFAA根证书公钥与私钥和业务私钥与业务公钥。
本说明书实施例中,上述身份认证过程中认证服务器622将校验结果发送给业务服务器621的处理过程,还可以通过下述方式处理,如图8所示:所述终端设备610,被配置为使用预设的设备密钥对所述认证数据进行签名处理,得到签名的认证数据,并将所述签名的认证数据发送给所述业务服务器621;
所述业务服务器621,被配置为将所述签名的认证数据发送给所述认证服务器622;
所述认证服务器622,被配置为对所述签名的认证数据验签处理,并在验签通过后对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,将校验结果发送给所述业务服务器621。
本说明书实施例中,如图8所示,上述身份认证过程中认证服务器622将校验结果发送给业务服务器621的处理过程,还可以通过下述方式处理:所述认证服务器622,被配置为对所述签名的认证数据验签处理,并在验签通过后对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,通过预设的签名证书对校验结果进行签名处理,将签名后的校验结果发送给所述业务服务器621;
所述业务服务器621,被配置为将签名后的校验结果发送给所述终端设备610;
所述终端设备610,被配置为对接收的结果进行验签处理,如果验签通过,则基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例中,如图9所示,身份认证的注册过程可以通过下述方式处理:所述终端设备610,被配置为向所述业务服务器621发送目标用户的身份认证开通请求,所述身份认证开通请求中包括设备标识;
所述业务服务器621,被配置为将所述身份认证开通请求发送给所述认证服务器622;
所述认证服务器622,被配置为生成所述身份认证开通请求对应的开通验证信息,并基于所述开通验证信息生成开通请求响应信息,将所述开通请求响应信息发送给所述业务服务器621;
所述业务服务器621,被配置为将所述开通请求响应信息发送给所述终端设备610;
所述终端设备610,被配置为获取所述目标用户的基准生物信息,基于所述基准生物信息确定所述基准生物信息的哈希值和所述基准生物信息对应的认证类型,并基于所述基准生物信息的哈希值、所述基准生物信息对应的认证类型和所述开通验证信息,生成所述身份认证开通信息,将所述身份认证开通信息发送给所述业务服务器621;
所述业务服务器621,被配置为将所述身份认证开通信息发送给所述认证服务器622;
所述认证服务器622,被配置为对所述开通验证信息进行验证,验证通过后基于签名后的身份认证开通信息生成注册确认结果,将所述注册确认结果发送给所述业务服务器621;
所述业务服务器621,被配置为将所述注册确认结果发送给所述终端设备610;
所述终端设备610,被配置为将所述注册确认结果中的所述签名后的身份认证开通信息存储于可信执行环境中。
上述身份认证的注册的具体处理过程可以参见上述实施例二中终端设备610和服务器的具体处理过程,在此不再赘述。
本说明书实施例中,如图9所示,身份认证的注册过程中终端设备610将所述身份认证开通信息发送给所述业务服务器621的处理可以通过下述方式处理:所述终端设备610,被配置为基于设备密钥对所述身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,将所述签名后的身份认证开通信息发送给所述业务服务器621;
所述业务服务器621,被配置为将所述签名后的身份认证开通信息发送给所述认证服务器622;
所述认证服务器622,被配置为对所述签名后的身份认证开通信息进行验签处理,如果验签通过,则对所述开通验证信息进行验证,验证通过后存储签名后的身份认证开通信息对所述开通验证信息进行验证,验证通过后基于签名后的身份认证开通信息生成注册确认结果,将所述注册确认结果发送给所述业务服务器621。
本说明书实施例中,如图8所示,终端设备610还可以对上述注册的身份认证机制进行注销处理,具体可以参见上述实施例二中终端设备610和服务器的具体处理过程,在此不再赘述。
本说明书实施例提供一种身份认证系统,通过获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求,该身份认证请求中包括目标生物信息对应的认证类型,然后,向服务器发送该身份认证请求,服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成认证响应数据,该认证响应数据中包括验证信息,终端设备接收该身份认证请求对应的认证响应数据,终端设备对目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于验证信息和目标生物信息对应的身份认证开通信息创建认证数据,将认证数据发送给服务器,服务器对认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验,终端设备接收服务器发送的对验证信息和目标生物信息对应的身份认证开通信息进行校验的结果,基于该结果确定身份认证请求对应的身份认证是否通过,这样,由于身份认证开通信息完全存在与用户的终端设备上,服务器端并不会持久化存储该信息,因此,不存在任何的隐私合规问题,此外,提高扩展性是有一定的前提的,服务器的网络IO消耗很低,这样在扩容时,就不需要考虑数据库或缓存的状态问题,完全为无状态的水平扩容,从而提高了扩展性,而且,由于没有中间信息的持久化保存,简化了接入的复杂程度。
实施例四
以上为本说明书实施例提供的身份认证系统,基于同样的思路,本说明书实施例还提供一种身份认证装置,如图10所示。
该身份认证装置包括:认证请求模块1001、认证响应模块1002、验证模块1003和身份认证模块1004,其中:
认证请求模块1001,获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
认证响应模块1002,向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息;
验证模块1003,对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验;
身份认证模块1004,接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例中,所述验证模块1003,使用预设的设备密钥对所述认证数据进行签名处理,得到签名的认证数据,并将所述签名的认证数据发送给所述服务器,所述签名的认证数据用于触发所述服务器对所述签名的认证数据验签处理,并在验签通过后对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。
本说明书实施例中,接收的结果为所述服务器通过预设的签名证书对所述结果进行签名处理后的结果,所述身份认证模块1004,对接收的结果进行验签处理,如果验签通过,则基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例中,所述验证信息包括挑战码,所述身份认证开通信息包括以下中的一个或多个:设备标识、用户标识、所述目标生物信息对应的认证类型、所述目标生物信息的哈希值、所述身份认证开通信息对应的签名密钥。
本说明书实施例中,所述装置还包括:
开通请求模块,向服务器发送目标用户的身份认证开通请求,所述身份认证开通请求中包括设备标识,所述身份认证开通请求用于触发所述服务器生成所述身份认证开通请求对应的开通验证信息;
信息处理模块,接收所述服务器发送的携带有所述开通验证信息的开通请求响应信息,并获取所述目标用户的基准生物信息,基于所述基准生物信息确定所述基准生物信息的哈希值和所述基准生物信息对应的认证类型,并基于所述基准生物信息的哈希值、所述基准生物信息对应的认证类型和所述开通验证信息,生成所述身份认证开通信息,将所述身份认证开通信息发送给所述服务器,所述身份认证开通信息用于触发所述服务器对所述开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备;
注册确认模块,接收所述服务器发送的携带有签名后的身份认证开通信息的注册确认结果,并将所述签名后的身份认证开通信息存储于可信执行环境中。
本说明书实施例中,所述装置还包括:
注销指令接收模块,接收所述基准生物信息对应的身份认证注销指令;
注销模块,删除所述可信执行环境中存储的所述基准生物信息对应的签名后的身份认证开通信息。
本说明书实施例中,所述信息处理模块,基于设备密钥对所述身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,所述签名后的身份认证开通信息用于触发所述服务器对所述签名后的身份认证开通信息进行验签处理,如果验签通过,则对所述开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备。
本说明书实施例中,所述目标生物信息为面部信息、指纹信息、掌纹信息、虹膜信息中的任一种。
本说明书实施例提供一种身份认证装置,通过获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求,该身份认证请求中包括目标生物信息对应的认证类型,然后,向服务器发送该身份认证请求,服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成认证响应数据,该认证响应数据中包括验证信息,终端设备接收该身份认证请求对应的认证响应数据,终端设备对目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于验证信息和目标生物信息对应的身份认证开通信息创建认证数据,将认证数据发送给服务器,服务器对认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验,终端设备接收服务器发送的对验证信息和目标生物信息对应的身份认证开通信息进行校验的结果,基于该结果确定身份认证请求对应的身份认证是否通过,这样,由于身份认证开通信息完全存在与用户的终端设备上,服务器端并不会持久化存储该信息,因此,不存在任何的隐私合规问题,此外,提高扩展性是有一定的前提的,服务器的网络IO消耗很低,这样在扩容时,就不需要考虑数据库或缓存的状态问题,完全为无状态的水平扩容,从而提高了扩展性,而且,由于没有中间信息的持久化保存,简化了接入的复杂程度。
实施例五
以上为本说明书实施例提供的身份认证装置,基于同样的思路,本说明书实施例还提供一种身份认证设备,如图11所示。
所述身份认证设备可以为上述实施例提供终端设备等。
身份认证设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器1101和存储器1102,存储器1102中可以存储有一个或一个以上存储应用程序或数据。其中,存储器1102可以是短暂存储或持久存储。存储在存储器1102的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对身份认证设备中的一系列计算机可执行指令。更进一步地,处理器1101可以设置为与存储器1102通信,在身份认证设备上执行存储器1102中的一系列计算机可执行指令。身份认证设备还可以包括一个或一个以上电源1103,一个或一个以上有线或无线网络接口1104,一个或一个以上输入输出接口1105,一个或一个以上键盘1106。
具体在本实施例中,身份认证设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对身份认证设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息;
对所述目标生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验;
接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例中,所述将所述认证数据发送给所述服务器,包括:
使用预设的设备密钥对所述认证数据进行签名处理,得到签名的认证数据,并将所述签名的认证数据发送给所述服务器,所述签名的认证数据用于触发所述服务器对所述签名的认证数据验签处理,并在验签通过后对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。
本说明书实施例中,接收的结果为所述服务器通过预设的签名证书对所述结果进行签名处理后的结果,所述基于所述结果确定所述身份认证请求对应的身份认证是否通过,包括:
对接收的结果进行验签处理,如果验签通过,则基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例中,所述验证信息包括挑战码,所述身份认证开通信息包括以下中的一个或多个:设备标识、用户标识、所述目标生物信息对应的认证类型、所述目标生物信息的哈希值、所述身份认证开通信息对应的签名密钥。
本说明书实施例中,还包括:
向服务器发送目标用户的身份认证开通请求,所述身份认证开通请求中包括设备标识,所述身份认证开通请求用于触发所述服务器生成所述身份认证开通请求对应的开通验证信息;
接收所述服务器发送的携带有所述开通验证信息的开通请求响应信息,并获取所述目标用户的基准生物信息,基于所述基准生物信息确定所述基准生物信息的哈希值和所述基准生物信息对应的认证类型,并基于所述基准生物信息的哈希值、所述基准生物信息对应的认证类型和所述开通验证信息,生成所述身份认证开通信息,将所述身份认证开通信息发送给所述服务器,所述身份认证开通信息用于触发所述服务器对所述开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备;
接收所述服务器发送的携带有签名后的身份认证开通信息的注册确认结果,并将所述签名后的身份认证开通信息存储于可信执行环境中。
本说明书实施例中,还包括:
接收所述基准生物信息对应的身份认证注销指令;
删除所述可信执行环境中存储的所述基准生物信息对应的签名后的身份认证开通信息。
本说明书实施例中,所述将所述身份认证开通信息发送给所述服务器,包括:
基于设备密钥对所述身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,所述签名后的身份认证开通信息用于触发所述服务器对所述签名后的身份认证开通信息进行验签处理,如果验签通过,则对所述开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备。
本说明书实施例中,所述目标生物信息为面部信息、指纹信息、掌纹信息、虹膜信息中的任一种。
本说明书实施例提供一种身份认证设备,通过获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求,该身份认证请求中包括目标生物信息对应的认证类型,然后,向服务器发送该身份认证请求,服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成认证响应数据,该认证响应数据中包括验证信息,终端设备接收该身份认证请求对应的认证响应数据,终端设备对目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于验证信息和目标生物信息对应的身份认证开通信息创建认证数据,将认证数据发送给服务器,服务器对认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验,终端设备接收服务器发送的对验证信息和目标生物信息对应的身份认证开通信息进行校验的结果,基于该结果确定身份认证请求对应的身份认证是否通过,这样,由于身份认证开通信息完全存在与用户的终端设备上,服务器端并不会持久化存储该信息,因此,不存在任何的隐私合规问题,此外,提高扩展性是有一定的前提的,服务器的网络IO消耗很低,这样在扩容时,就不需要考虑数据库或缓存的状态问题,完全为无状态的水平扩容,从而提高了扩展性,而且,由于没有中间信息的持久化保存,简化了接入的复杂程度。
实施例六
进一步地,基于上述图1A到图5所示的方法,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令信息,一种具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令信息在被处理器执行时,能实现以下流程:
获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息;
对所述目标生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验;
接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例中,所述将所述认证数据发送给所述服务器,包括:
使用预设的设备密钥对所述认证数据进行签名处理,得到签名的认证数据,并将所述签名的认证数据发送给所述服务器,所述签名的认证数据用于触发所述服务器对所述签名的认证数据验签处理,并在验签通过后对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。
本说明书实施例中,接收的结果为所述服务器通过预设的签名证书对所述结果进行签名处理后的结果,所述基于所述结果确定所述身份认证请求对应的身份认证是否通过,包括:
对接收的结果进行验签处理,如果验签通过,则基于所述结果确定所述身份认证请求对应的身份认证是否通过。
本说明书实施例中,所述验证信息包括挑战码,所述身份认证开通信息包括以下中的一个或多个:设备标识、用户标识、所述目标生物信息对应的认证类型、所述目标生物信息的哈希值、所述身份认证开通信息对应的签名密钥。
本说明书实施例中,还包括:
向服务器发送目标用户的身份认证开通请求,所述身份认证开通请求中包括设备标识,所述身份认证开通请求用于触发所述服务器生成所述身份认证开通请求对应的开通验证信息;
接收所述服务器发送的携带有所述开通验证信息的开通请求响应信息,并获取所述目标用户的基准生物信息,基于所述基准生物信息确定所述基准生物信息的哈希值和所述基准生物信息对应的认证类型,并基于所述基准生物信息的哈希值、所述基准生物信息对应的认证类型和所述开通验证信息,生成所述身份认证开通信息,将所述身份认证开通信息发送给所述服务器,所述身份认证开通信息用于触发所述服务器对所述开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备;
接收所述服务器发送的携带有签名后的身份认证开通信息的注册确认结果,并将所述签名后的身份认证开通信息存储于可信执行环境中。
本说明书实施例中,还包括:
接收所述基准生物信息对应的身份认证注销指令;
删除所述可信执行环境中存储的所述基准生物信息对应的签名后的身份认证开通信息。
本说明书实施例中,所述将所述身份认证开通信息发送给所述服务器,包括:
基于设备密钥对所述身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,所述签名后的身份认证开通信息用于触发所述服务器对所述签名后的身份认证开通信息进行验签处理,如果验签通过,则对所述开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备。
本说明书实施例中,所述目标生物信息为面部信息、指纹信息、掌纹信息、虹膜信息中的任一种。
本说明书实施例提供一种存储介质,通过获取待验证的目标生物信息,并基于目标生物信息生成身份认证请求,该身份认证请求中包括目标生物信息对应的认证类型,然后,向服务器发送该身份认证请求,服务器在对目标生物信息对应的认证类型进行验证并验证通过后生成认证响应数据,该认证响应数据中包括验证信息,终端设备接收该身份认证请求对应的认证响应数据,终端设备对目标生物信息进行验证,如果验证通过,则获取目标生物信息对应的身份认证开通信息,并基于验证信息和目标生物信息对应的身份认证开通信息创建认证数据,将认证数据发送给服务器,服务器对认证数据中的验证信息和目标生物信息对应的身份认证开通信息进行校验,终端设备接收服务器发送的对验证信息和目标生物信息对应的身份认证开通信息进行校验的结果,基于该结果确定身份认证请求对应的身份认证是否通过,这样,由于身份认证开通信息完全存在与用户的终端设备上,服务器端并不会持久化存储该信息,因此,不存在任何的隐私合规问题,此外,提高扩展性是有一定的前提的,服务器的网络IO消耗很低,这样在扩容时,就不需要考虑数据库或缓存的状态问题,完全为无状态的水平扩容,从而提高了扩展性,而且,由于没有中间信息的持久化保存,简化了接入的复杂程度。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书的实施例是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程欺诈案例的串并设备的处理器以产生一个机器,使得通过计算机或其他可编程欺诈案例的串并设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程欺诈案例的串并设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程欺诈案例的串并设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
Claims (17)
1.一种身份认证方法,所述方法包括:
获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息;
对所述目标生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,所述身份认证开通信息未持久化存储于所述服务器中,所述身份认证开通信息包括所述身份认证开通信息对应的签名密钥;
接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
2.根据权利要求1所述的方法,所述将所述认证数据发送给所述服务器,包括:
使用预设的设备密钥对所述认证数据进行签名处理,得到签名的认证数据,并将所述签名的认证数据发送给所述服务器,所述签名的认证数据用于触发所述服务器对所述签名的认证数据验签处理,并在验签通过后对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验。
3.根据权利要求2所述的方法,接收的结果为所述服务器通过预设的签名证书对所述结果进行签名处理后的结果,所述基于所述结果确定所述身份认证请求对应的身份认证是否通过,包括:
对接收的结果进行验签处理,如果验签通过,则基于所述结果确定所述身份认证请求对应的身份认证是否通过。
4.根据权利要求3所述的方法,所述验证信息包括挑战码,所述身份认证开通信息包括以下中的一个或多个:设备标识、用户标识、所述目标生物信息对应的认证类型、所述目标生物信息的哈希值。
5.根据权利要求1所述的方法,所述方法还包括:
向服务器发送目标用户的身份认证开通请求,所述身份认证开通请求中包括设备标识,所述身份认证开通请求用于触发所述服务器生成所述身份认证开通请求对应的开通验证信息;
接收所述服务器发送的携带有所述开通验证信息的开通请求响应信息,并获取所述目标用户的基准生物信息,基于所述基准生物信息确定所述基准生物信息的哈希值和所述基准生物信息对应的认证类型,并基于所述基准生物信息的哈希值、所述基准生物信息对应的认证类型和所述开通验证信息,生成所述身份认证开通信息,将所述身份认证开通信息发送给所述服务器,所述身份认证开通信息用于触发所述服务器对所述开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备;
接收所述服务器发送的携带有签名后的身份认证开通信息的注册确认结果,并将所述签名后的身份认证开通信息存储于可信执行环境中。
6.根据权利要求5所述的方法,所述方法还包括:
接收所述基准生物信息对应的身份认证注销指令;
删除所述可信执行环境中存储的所述基准生物信息对应的签名后的身份认证开通信息。
7.根据权利要求5所述的方法,所述将所述身份认证开通信息发送给所述服务器,包括:
基于设备密钥对所述身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,所述签名后的身份认证开通信息用于触发所述服务器对所述签名后的身份认证开通信息进行验签处理,如果验签通过,则对所述开通验证信息进行验证,验证通过后将签名后的身份认证开通信息发送给终端设备。
8.根据权利要求1-7中任一项所述的方法,所述目标生物信息为面部信息、指纹信息、掌纹信息、虹膜信息中的任一种。
9.一种身份认证系统,所述系统包括终端设备和服务器,其中:
所述终端设备,被配置为获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,向所述服务器发送所述身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
所述服务器,被配置为对所述目标生物信息对应的认证类型进行验证,如果验证通过,则生成所述身份认证请求对应的认证响应数据,所述认证响应数据中包括验证信息;
所述终端设备,被配置为接收所述身份认证请求对应的认证响应数据,对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述身份认证开通信息未持久化存储于所述服务器中,所述身份认证开通信息包括所述身份认证开通信息对应的签名密钥;
所述服务器,被配置为对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验;
所述终端设备,被配置为接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
10.根据权利要求9所述的系统,所述服务器包括业务服务器和认证服务器,其中:
所述业务服务器,被配置为接收所述终端设备发送的所述身份认证请求,并将所述身份认证请求发送给所述认证服务器;
所述认证服务器,被配置为对所述目标生物信息对应的认证类型进行验证,如果验证通过,则生成所述身份认证请求对应的认证响应数据,所述认证响应数据中包括验证信息;
所述业务服务器,被配置为接收所述身份认证请求对应的认证响应数据,并将所述认证响应数据发送给所述终端设备;
所述终端设备,被配置为对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述业务服务器;
所述业务服务器,被配置为将所述认证数据发送给所述认证服务器;
所述认证服务器,被配置为对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,将校验结果发送给所述业务服务器;
所述终端设备,被配置为接收所述业务服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
11.根据权利要求10所述的系统,所述终端设备,被配置为使用预设的设备密钥对所述认证数据进行签名处理,得到签名的认证数据,并将所述签名的认证数据发送给所述业务服务器;
所述业务服务器,被配置为将所述签名的认证数据发送给所述认证服务器;
所述认证服务器,被配置为对所述签名的认证数据验签处理,并在验签通过后对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,将校验结果发送给所述业务服务器。
12.根据权利要求11所述的系统,所述认证服务器,被配置为对所述签名的认证数据验签处理,并在验签通过后对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,通过预设的签名证书对校验结果进行签名处理,将签名后的校验结果发送给所述业务服务器;
所述业务服务器,被配置为将签名后的校验结果发送给所述终端设备;
所述终端设备,被配置为对接收的结果进行验签处理,如果验签通过,则基于所述结果确定所述身份认证请求对应的身份认证是否通过。
13.根据权利要求10所述的系统,所述终端设备,被配置为向所述业务服务器发送目标用户的身份认证开通请求,所述身份认证开通请求中包括设备标识;
所述业务服务器,被配置为将所述身份认证开通请求发送给所述认证服务器;
所述认证服务器,被配置为生成所述身份认证开通请求对应的开通验证信息,并基于所述开通验证信息生成开通请求响应信息,将所述开通请求响应信息发送给所述业务服务器;
所述业务服务器,被配置为将所述开通请求响应信息发送给所述终端设备;
所述终端设备,被配置为获取所述目标用户的基准生物信息,基于所述基准生物信息确定所述基准生物信息的哈希值和所述基准生物信息对应的认证类型,并基于所述基准生物信息的哈希值、所述基准生物信息对应的认证类型和所述开通验证信息,生成所述身份认证开通信息,将所述身份认证开通信息发送给所述业务服务器;
所述业务服务器,被配置为将所述身份认证开通信息发送给所述认证服务器;
所述认证服务器,被配置为对所述开通验证信息进行验证,验证通过后基于签名后的身份认证开通信息生成注册确认结果,将所述注册确认结果发送给所述业务服务器;
所述业务服务器,被配置为将所述注册确认结果发送给所述终端设备;
所述终端设备,被配置为将所述注册确认结果中的所述签名后的身份认证开通信息存储于可信执行环境中。
14.根据权利要求13所述的系统,所述终端设备,被配置为基于设备密钥对所述身份认证开通信息进行签名处理,得到签名后的身份认证开通信息,将所述签名后的身份认证开通信息发送给所述业务服务器;
所述业务服务器,被配置为将所述签名后的身份认证开通信息发送给所述认证服务器;
所述认证服务器,被配置为对所述签名后的身份认证开通信息进行验签处理,如果验签通过,则对所述开通验证信息进行验证,验证通过后存储签名后的身份认证开通信息对所述开通验证信息进行验证,验证通过后基于签名后的身份认证开通信息生成注册确认结果,将所述注册确认结果发送给所述业务服务器。
15.一种身份认证装置,所述装置包括:
认证请求模块,获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
认证响应模块,向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息;
验证模块,对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,所述身份认证开通信息未持久化存储于所述服务器中,所述身份认证开通信息包括所述身份认证开通信息对应的签名密钥;
身份认证模块,接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
16.一种身份认证设备,所述身份认证设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息;
对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,所述身份认证开通信息未持久化存储于所述服务器中,所述身份认证开通信息包括所述身份认证开通信息对应的签名密钥;
接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
17.一种存储介质,所述存储介质用于存储计算机可执行指令,所述可执行指令在被处理器执行时实现以下流程:
获取待验证的目标生物信息,并基于所述目标生物信息生成身份认证请求,所述身份认证请求中包括所述目标生物信息对应的认证类型;
向服务器发送所述身份认证请求,并接收所述身份认证请求对应的认证响应数据,所述认证响应数据是所述服务器在对所述目标生物信息对应的认证类型进行验证并验证通过后生成的数据,所述认证响应数据中包括验证信息;
对所述生物信息进行验证,如果验证通过,则获取所述目标生物信息对应的身份认证开通信息,并基于所述验证信息和所述目标生物信息对应的身份认证开通信息创建认证数据,将所述认证数据发送给所述服务器,所述认证数据用于触发所述服务器对所述认证数据中的所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验,所述身份认证开通信息未持久化存储于所述服务器中,所述身份认证开通信息包括所述身份认证开通信息对应的签名密钥;
接收所述服务器发送的对所述验证信息和所述目标生物信息对应的身份认证开通信息进行校验的结果,基于所述结果确定所述身份认证请求对应的身份认证是否通过。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211271551.2A CN115834074B (zh) | 2022-10-18 | 2022-10-18 | 一种身份认证方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211271551.2A CN115834074B (zh) | 2022-10-18 | 2022-10-18 | 一种身份认证方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115834074A CN115834074A (zh) | 2023-03-21 |
CN115834074B true CN115834074B (zh) | 2023-07-21 |
Family
ID=85524922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211271551.2A Active CN115834074B (zh) | 2022-10-18 | 2022-10-18 | 一种身份认证方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115834074B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116402510B (zh) * | 2023-04-14 | 2024-01-30 | 广东车卫士信息科技有限公司 | 一种基于高并发网络服务的无感支付方法、介质以及设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112953970A (zh) * | 2021-04-01 | 2021-06-11 | 国民认证科技(北京)有限公司 | 一种身份认证方法及身份认证系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106487511B (zh) * | 2015-08-27 | 2020-02-04 | 阿里巴巴集团控股有限公司 | 身份认证方法及装置 |
CN106549919B (zh) * | 2015-09-21 | 2021-01-22 | 创新先进技术有限公司 | 一种信息注册、认证方法及装置 |
CN107294900B (zh) * | 2016-03-30 | 2021-01-26 | 创新先进技术有限公司 | 基于生物特征的身份注册方法和装置 |
CN105959287A (zh) * | 2016-05-20 | 2016-09-21 | 中国银联股份有限公司 | 一种基于生物特征的安全认证方法及装置 |
CN111917799B (zh) * | 2020-08-14 | 2022-07-22 | 支付宝(杭州)信息技术有限公司 | 基于验证信息、基于隐私数据的验证方法、装置及设备 |
-
2022
- 2022-10-18 CN CN202211271551.2A patent/CN115834074B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112953970A (zh) * | 2021-04-01 | 2021-06-11 | 国民认证科技(北京)有限公司 | 一种身份认证方法及身份认证系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115834074A (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6992105B2 (ja) | 認証能力を決定するためのクエリシステム及び方法 | |
EP3439230B1 (en) | Method and device for registering biometric identity and authenticating biometric identity | |
US10367817B2 (en) | Systems and methods for challengeless coauthentication | |
US9659160B2 (en) | System and methods for authentication using multiple devices | |
CN106575326B (zh) | 利用非对称加密实施一次性密码的系统和方法 | |
Grosse et al. | Authentication at scale | |
US9380058B1 (en) | Systems and methods for anonymous authentication using multiple devices | |
US8689290B2 (en) | System and method for securing a credential via user and server verification | |
CN113474774A (zh) | 用于认可新验证器的系统和方法 | |
US10050791B2 (en) | Method for verifying the identity of a user of a communicating terminal and associated system | |
US9871804B2 (en) | User authentication | |
EP1777641A1 (en) | Biometric authentication system | |
WO2019226115A1 (en) | Method and apparatus for user authentication | |
US20200196143A1 (en) | Public key-based service authentication method and system | |
CN113239853B (zh) | 一种基于隐私保护的生物识别方法、装置及设备 | |
WO2015015366A1 (en) | Secure transaction and access using insecure device | |
CN115834074B (zh) | 一种身份认证方法、装置及设备 | |
TW202207667A (zh) | 通訊系統中改善安全性之認證及驗證方法 | |
US20170257364A1 (en) | Systems and methods for authentication using authentication votes | |
US11936649B2 (en) | Multi-factor authentication | |
CN115603943A (zh) | 一种离线身份验证的方法、装置、存储介质及电子设备 | |
KR20210133178A (ko) | 인증 정보 처리 방법 및 장치와 인증 정보 처리 방법 장치를 포함한 사용자 단말 | |
CN113591053A (zh) | 通用性的移动设备基于生物信息的识别方法及系统 | |
WO2017003651A1 (en) | Systems and methods for anonymous authentication using multiple devices | |
KR101879842B1 (ko) | Otp를 이용한 사용자 인증 방법 및 시스템 |
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 |