基于可信执行环境的Level2FIDO验证器制造技术

技术编号:38420317 阅读:12 留言:0更新日期:2023-08-07 11:21
本发明专利技术涉及身份验证技术领域,具体涉及基于可信执行环境的Level2FIDO验证器,包括接入设备、用户端应用和验证器应用,验证器应用包括密钥模块、签名模块和存储模块;接入设备将验证器接入用户设备,密钥模块利用加密算法产生用户的公私钥,签名模块执行对相关数据的签名操作,存储模块储存用户的私钥和认证信息,用户端应用确保FIDO2协议中的私钥、公钥和扩展信息的有关认证信息的完整性,保证对公钥或挑战值进行签名的安全性,该验证器将FIDO2的验证器放在可信执行环境中,即验证器应用,将验证器同普通执行环境相隔离,保证了其运行的安全性和密钥信息存储的安全性,解决传统密码验证方式存在安全性的问题。验证方式存在安全性的问题。验证方式存在安全性的问题。

【技术实现步骤摘要】
基于可信执行环境的Level2 FIDO验证器


[0001]本专利技术涉及身份验证
,尤其涉及基于可信执行环境的Level2 FIDO验证器。

技术介绍

[0002]普通的密码认证时的USERNAME和PASSWORD很容易被黑客攻击所泄露,导致密码被盗、隐私被窃取和网上银行被盗付等问题,为了改善传统密码认证方式存在的问题,因此产生了许多无密码认证技术,例如:生物识别的指纹识别、面部识别和虹膜识别描等技术;利用设备的IMEI号、MAC地址等信息来确认设备身份的设备验证技术;单点登录等技术。因此无密码认证作为一种更加安全和方便的身份认证方式,逐渐被广泛应用。
[0003]而FIDO2就是采用了无密码验证的思想的一种新兴的身份验证协议,它使用公钥加密技术来实现身份验证的安全性,可以通过多种认证方式实行身份认证的高可用性。以此提供一个可以代替传统的USERNAME和PASSWORD方式的安全、可用的无密码认证方式。
[0004]FIDO2工作主要基于密钥加密技术,使用FIDO2的验证器中生成的公钥与私钥,用来实现身份注册和验证服务两个流程。在身份注册阶段,认证器生成公钥和私钥对,私钥存储在本地,并将公钥通过客户端传输到服务器,在服务端存储公钥。在验证阶段,验证器提供私钥对挑战值等验证信息进行签名,该认证响应通过本地端传输至服务端,用于服务端通过公钥验证用户身份并授权操作。
[0005]虽然FIDO2已经成为一种比较可靠的安全验证技术,但是它仍然存在一些问题。例如:由于FIDO2协议需要在本地处理私钥,如果私钥存储在非安全的环境中,那么就会存在私钥被黑客盗取的风险。如果攻击者能够控制本地环境,则可以轻松在普通环境中窃取FIDO2验证器的私钥,进而可能会使用该密钥来冒充用户进行身份验证。又如,在不可信环境下的FIDO2验证器很容易受到硬件或软件篡改的攻击。黑客可以在FIDO2验证器中植入恶意硬件或软件,从而在传输中获取用户的私钥和认证信息,或者修改签名或认证请求,使其看起来合法,进而实现攻击。

技术实现思路

[0006]本专利技术的目的在于提供基于可信执行环境的Level2 FIDO验证器,旨在解决传统密码验证方式存在安全性的问题。
[0007]为实现上述目的,本专利技术提供了基于可信执行环境的Level2 FIDO验证器,包括接入设备、用户端应用和验证器应用,所述验证器应用包括密钥模块、签名模块和存储模块;
[0008]所述接入设备,用于将验证器接入用户设备;
[0009]所述用户端应用,通过OP

TEE Client API来调用验证器,确保FIDO2协议中的私钥、公钥和扩展信息的有关认证信息的完整性,保证对公钥或挑战值进行签名的安全性;
[0010]所述密钥模块,通过加密算法产生用户的公私钥;
[0011]所述签名模块,用于执行对相关数据的签名操作;
[0012]所述存储模块,用于储存用户的私钥和认证信息。
[0013]其中,所述用户端应用和所述验证器应用接口和参数包括认证证明输出、认证注册、认证断言输出、认证验证、导航创建和导航验证。
[0014]其中,所述认证证明输出,用于用户向验证器请求用户注册,在用户通过身份认证录入通过后,生成一组新的密钥对和一个证明,该API接受一组输入,并返回一个“证明”的输出。
[0015]其中,所述认证注册,用于注册时验证器所述用户端应用向所述验证器应用发起请求,在可信环境下生成一组密钥对和一个证明,所述认证注册输入参数和返回值应与所述认证证明输出保持一致。
[0016]其中,所述认证断言输出,用于用户向验证器请求用户身份验证,在用户通过身份验证通过后,用私钥对公钥和挑战信息进行签名,该API接受一组输入,并返回一个“断言”的输出。
[0017]其中,所述认证验证,用于验证时验证器所述用户端应用向所述验证器应用发起请求,使得在可信环境下用私钥对公钥和挑战值信息进行签名,所述认证验证输入参数和返回值应与所述认证断言输出保持一致。
[0018]其中,所述导航创建,用于代理APP向用户请求用户注册。
[0019]其中,所述导航验证,用于代理APP向用户请求用户验证。
[0020]其中,所述用户注册操作会将用户的信息和新生成的密钥对中的公钥上传进服务器中并注册,将私钥存储于本地当中。
[0021]其中,所述用户验证操作会把代理发送过来的挑战在验证器中进行签名,并将签名后的信息返回至服务端,服务端使用注册时保存的公钥对该信息进行验证。
[0022]本专利技术的基于可信执行环境的Level2 FIDO验证器,所述接入设备将验证器接入用户设备,所述密钥模块利用加密算法产生用户的公私钥,所述签名模块执行对相关数据的签名操作,所述存储模块储存用户的私钥和认证信息,所述用户端应用确保FIDO2协议中的私钥、公钥和扩展信息的有关认证信息的完整性,保证对公钥或挑战值进行签名的安全性,该验证器基于ARM TrustZone的开源可信执行环境——OP

TEE,利用其安全特性,通过创建硬件、软件隔离的安全执行环境来其免受恶意软件和攻击的影响,将FIDO2的验证器放在可信执行环境中,即所述验证器应用,将验证器同普通执行环境相隔离,保证了其运行的安全性和密钥信息存储的安全性,解决传统密码验证方式存在安全性的问题。
附图说明
[0023]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0024]图1是本专利技术提供的基于TEE的FIDO2整体架构示意图。
[0025]图2是本专利技术提供的FIDO2验证器应用程序(TA)的构成图。
[0026]图3是本专利技术提供的密钥模块与签名模块和存储模块关系示意图。
[0027]图4是本专利技术提供的签名模块与密钥模块和存储模块关系示意图。
[0028]图5是本专利技术提供的存储模块与密钥模块和签名模块关系示意图。
[0029]图6是本专利技术提供的注册流程图。
[0030]图7是本专利技术提供的身份注册时,TA中的流程图。
[0031]图8是本专利技术提供的验证流程图。
[0032]图9是本专利技术提供的身份验证时,TA中的流程图。
[0033]图中:1

接入设备、2

用户端应用、3

验证器应用、4

密钥模块、5

签名模块、6

存储模块。
具体实施方式
[0034]下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于可信执行环境的Level2 FIDO验证器,其特征在于,包括接入设备、用户端应用和验证器应用,所述验证器应用包括密钥模块、签名模块和存储模块;所述接入设备,用于将验证器接入用户设备;所述用户端应用,通过OP

TEE Client API来调用验证器,确保FIDO2协议中的私钥、公钥和扩展信息的有关认证信息的完整性,保证对公钥或挑战值进行签名的安全性;所述密钥模块,通过加密算法产生用户的公私钥;所述签名模块,用于执行对相关数据的签名操作;所述存储模块,用于储存用户的私钥和认证信息。2.如权利要求1所述的基于可信执行环境的Level2 FIDO验证器,其特征在于,所述用户端应用和所述验证器应用接口和参数包括认证证明输出、认证注册、认证断言输出、认证验证、导航创建和导航验证。3.如权利要求2所述的基于可信执行环境的Level2 FIDO验证器,其特征在于,所述认证证明输出,用于用户向验证器请求用户注册,在用户通过身份认证录入通过后,生成一组新的密钥对和一个证明,该API接受一组输入,并返回一个“证明”的输出。4.如权利要求2所述的基于可信执行环境的Level2 FIDO验证器,其特征在于,所述认证注册,用于注册时验证器所述用户端应用向所述验证器应用发起请求,在可信环境下生成一组密钥对和一个证明,所述认证注册输入参数和返回值应与所述认证证...

【专利技术属性】
技术研发人员:李欣李元正
申请(专利权)人:北京国泰网信科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1