一种基于网页的生物识别方法、装置及设备与流程

文档序号:31546613发布日期:2022-09-17 01:21阅读:188来源:国知局
一种基于网页的生物识别方法、装置及设备与流程

1.本文件涉及计算机技术领域,尤其涉及一种基于网页的生物识别方法、装置及设备。


背景技术:

2.随着互联网的发展与智能终端的普及,基于html5的应用愈加普及,基于html5的应用的优势是用户无需下载应用程序(即app)就可以打开对应的应用,即用户可以通过应用中内嵌的webview控件访问应用的uri地址,以实现访问基于html5的应用的目的。
3.而对于基于html5的应用的登录认证或识别过程,则依然通过打开登录app进行扫描图像码进行认证的方式,或者,在网页中输入认证用户相关的凭证的方式实现,但在认证过程中,在基于html5的应用采集的数据很容易被劫持攻击。基于此,需要提供一种基于html5的应用能够安全获取生物信息,并保证生物信息的完整性,防止生物信息在传输链路上不被攻击者劫持的技术方案。


技术实现要素:

4.本说明书实施例的目的是提供一种基于html5的应用能够安全获取生物信息,并保证生物信息的完整性,防止生物信息在传输链路上不被攻击者劫持的技术方案。
5.为了实现上述技术方案,本说明书实施例是这样实现的:
6.本说明书实施例提供的一种基于网页的生物识别方法,应用于终端设备,所述终端设备中包括可信执行环境,所述方法包括:获取目标用户通过目标网页程序发起的生物识别指令。通过所述目标网页程序向所述可信执行环境发送所述生物识别指令对应的生物识别请求。通过所述可信执行环境调用生物信息采集组件,并通过所述生物信息采集组件采集所述目标用户的生物信息,将所述生物信息提供给所述可信执行环境。将所述生物信息和所述生物识别请求发送给服务器,所述生物信息和所述生物识别请求用于触发所述服务器基于所述生物信息对所述目标用户进行生物识别处理。
7.本说明书实施例提供的一种基于网页的生物识别装置,设置有可信执行环境,所述装置包括:webview模块,集成于目标网页程序中,调用所述应用层模块的api,并获取目标用户发起的生物识别指令,向应用层模块发送所述生物识别指令对应的生物识别请求。所述应用层模块,将所述生物识别请求发送给原生层模块。所述原生层模块,将所述生物识别请求发送给tee层模块。所述tee层模块,通过所述可信执行环境调用摄像组件,并通过所述摄像组件采集所述目标用户的生物信息,将所述生物信息提供给所述可信执行环境,并在所述可信执行环境中对所述生物信息进行签名处理,将签名后的生物信息发送给所述原生层模块。所述原生层模块,将签名后的生物信息发送给所述应用层模块。所述应用层模块,将签名后的生物信息和所述生物识别请求发送给服务器,所述签名后的生物信息和所述生物识别请求用于触发所述服务器对所述签名后的生物信息进行验签处理,并在验签通过后,基于所述生物信息对所述目标用户进行生物识别处理。
8.本说明书实施例提供的一种基于网页的生物识别设备,所述基于网页的生物识别设备包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取目标用户通过目标网页程序发起的生物识别指令。通过所述目标网页程序向所述可信执行环境发送所述生物识别指令对应的生物识别请求。通过所述可信执行环境调用生物信息采集组件,并通过所述生物信息采集组件采集所述目标用户的生物信息,将所述生物信息提供给所述可信执行环境。将所述生物信息和所述生物识别请求发送给服务器,所述生物信息和所述生物识别请求用于触发所述服务器基于所述生物信息对所述目标用户进行生物识别处理。
9.本说明书实施例还提供了一种存储介质,所述存储介质用于存储计算机可执行指令,所述可执行指令在被处理器执行时实现以下流程:获取目标用户通过目标网页程序发起的生物识别指令。通过所述目标网页程序向可信执行环境发送所述生物识别指令对应的生物识别请求。通过所述可信执行环境调用生物信息采集组件,并通过所述生物信息采集组件采集所述目标用户的生物信息,将所述生物信息提供给所述可信执行环境。将所述生物信息和所述生物识别请求发送给服务器,所述生物信息和所述生物识别请求用于触发所述服务器基于所述生物信息对所述目标用户进行生物识别处理。
附图说明
10.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
11.图1为本说明书一种基于网页的生物识别装置实施例;
12.图2为一种ree与tee的结构示意图;
13.图3为本说明书另一种基于网页的生物识别装置实施例;
14.图4a为本说明书一种基于网页的生物识别方法实施例;
15.图4b为本说明书一种基于网页的生物识别过程的示意图;
16.图5为本说明书另一种基于网页的生物识别过程的示意图;
17.图6为本说明书又一种基于网页的生物识别过程的示意图;
18.图7为本说明书一种基于网页的生物识别设备实施例。
19.图例说明:
20.110-webview模块,120-应用层模块,130-原生层模块,140-tee层模块,150-生物信息采集组件,160-内存,170-可信应用,200-服务器。
具体实施方式
21.本说明书实施例提供一种基于网页的生物识别方法、装置及设备。
22.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于
本说明书保护的范围。
23.实施例一
24.如图1所示,本说明书实施例提供一种基于网页的生物识别装置,该装置可以如为终端设备,该终端设备可以是手机、平板电脑等移动终端设备,也可以是个人计算机、笔记本电脑等终端设备。该装置设置有可信执行环境,该可信执行环境可以是tee(trustedexecutionenvironment),该可信执行环境可以通过预定的编程语言编写的程序来实现(即可以是以软件的形式实现),也可以通过硬件设备和预先编写的程序共同实现(即可以是以硬件+软件的形式实现)等,该可信执行环境可以为进行数据处理的安全运行环境。该装置包括webview模块110、应用层模块120、原生层模块130和tee层模块140,其中:
25.随着互联网的发展与智能终端的普及,基于html5的应用愈加普及,基于html5的应用的优势是用户无需下载应用程序(即app)就可以打开对应的应用,即用户可以通过应用中内嵌的webview控件访问应用的uri地址,以实现访问基于html5的应用的目的。通常,app采用生物识别的方式对用户的身份进行认证,通过生物识别的方式,用户无需输入其他凭证,从而极大地便捷了登录认证流程。而实现生物识别的登录认证通常需要很高的安全保证,常规的应用程序会通过控制摄像头等组件并向用户发出“眨眼”或“张嘴”等动作要求,以进行用户的真实性检测,或是通过调用可信执行环境内的安全摄像头来获取生物信息,以保证相关流程不会受到攻击者的影响。而对于基于html5的应用的登录认证过程,则依然采用传统的方式进行身份认证,即通过打开登录app进行扫描图像码进行认证的方式,或者,在网页中输入认证用户相关的凭证。由于网页程序对终端设备中的摄像头等组件的控制能力较弱,而上述app进行用户的真实性检测方式一般无法应用于基于html5的应用中。在基于html5的应用采取生物识别的身份认证方式,很容易被攻击,在认证过程中,在基于html5的应用采集的数据链路中注入预先准备的数据,即可实现用户身份劫持攻击。基于此,需要提供一种能够安全获取生物信息,并保证生物信息的完整性,防止生物信息在传输链路上不被攻击者劫持的技术方案。本说明书实施例提供一种可实现的技术方案,具体可以包括以下内容:
26.基于tee的网页生物识别系统可以在移动智能终端系统上实现,终端设备上可以运行一套可信执行环境,由并行运行的可信执行环境和通用执行环境(ree,richexecutionenvironment)组成,可信执行环境可以是安全并与其它环境相隔离的数据处理环境,即在可信执行环境中执行的处理,以及数据处理的过程中产生的数据等无法被可执行环境外的其它执行环境或应用程序所访问。如图2所示,可信执行环境可以通过创建一个可以在可信区域(如trustzone等)中独立运行的小型操作系统实现,可信执行环境可以以系统调用(如由trustzone内核直接处理)的方式直接提供的服务。设备中可以包括ree(通用执行环境)和可信执行环境,ree下可以运行终端设备安装的操作系统,如android操作系统、ios操作系统、windows操作系统、linux操作系统等,ree的特点可包括如功能强大,开放性和扩展性较好等,可以为上层应用程序提供该设备的所有功能,比如摄像功能,触控功能等,但是,ree中存在很多安全隐患,例如,操作系统可以获得某应用程序的所有数据,但很难验证该操作系统或该应用程序是否被篡改,如果被篡改,则用户的信息将存在很大的安全隐患,针对于此,就需要设备中的可信执行环境进行处理。可信执行环境具有其自身的执行空间,也即是在可信执行环境下也存在一个操作系统,可信执行环境比ree的安全级
别更高,可信执行环境所能访问的该设备中的软件和硬件资源是与ree分离的,但可信执行环境可以直接获取ree的信息,而ree不能获取可信执行环境的信息。可信执行环境可以通过提供的接口来进行验证等处理,从而保证用户信息(如支付信息、用户隐私信息等)不会被篡改、密码不会被劫持、指纹或面部等信息不会被盗用。其中,可信执行环境下运行着tee层模块140,ree下运行着原生层模块130、应用层模块120和webview模块110。
27.webview模块110可以是用于进行网页视图的模块,webview模块110可以内嵌在终端设备中的目标网页程序中,webview模块110可以实现前端的混合式开发,大多数混合式开发框架都可以基于webview模式进行二次开发。目标网页程序可以是基于超文本标记语言html构建的网页,具体如,可以是基于html5构建的网页。
28.应用层模块120可以集成生物信息采集和登录认证等功能,应用层模块120可以调用原生层模块130,并可以与原生层模块130和webview模块110进行信息交互,此外,还可以与服务器200之间构建安全链路,并可以通过该安全链路进行信息交互。
29.原生层模块130可以用于提供与可信执行环境的tee层模块140交互的链路,并可以编写与tee层模块140交互的代码,以实现相应的功能。原生层模块130可以与tee层模块140建立会话,通过建立的会话可以触发tee层模块140创建可信应用170实例,并可以创建上述会话。此外,原生层模块130可以关闭与tee层模块140之间的会话,并可以触发tee层模块140关闭上述会话和关闭可信应用170。
30.tee层模块140可以提供一条安全调用摄像组件等生物信息采集组件的链路,并可以编写与原生层模块130交互的代码,通过该代码可以创建可信应用170的实例,可以创建与原生层模块130的会话,调用相应的功能函数,并可以关闭上述会话和关闭上述可信应用170的实例。
31.在实际应用中,可以依次在终端设备中安装tee层模块140、原生层模块130、应用层模块120和webview模块110,通过上述各模块,可以实现下述功能:
32.webview模块110可以集成于目标网页程序中,当用户(即目标用户)需要进行生物识别时,可以触发webview模块110中提供的生物识别指令的机制,此时,目标网页程序生成生物识别指令,此时,终端设备可以获取通过目标网页程序发起的生物识别指令,webview模块110可以调用应用层模块120的api,并获取目标用户发起的生物识别指令,然后,可以向应用层模块120发送该生物识别指令对应的生物识别请求。
33.应用层模块120可以将上述生物识别请求发送给原生层模块130。原生层模块130可以将该生物识别请求发送给tee层模块140。tee层模块140可以通过可信执行环境调用摄像组件,并通过摄像组件采集目标用户的生物信息,然后,可以将该生物信息提供给可信执行环境,并在可信执行环境中对该生物信息进行签名处理,将签名后的生物信息发送给原生层模块130。原生层模块130可以将签名后的生物信息发送给应用层模块120。应用层模块120可以将签名后的生物信息和上述生物识别请求发送给服务器200,服务器200可以对签名后的生物信息进行验签处理,并在验签通过后,基于其对应的生物信息对目标用户进行生物识别处理,最终可以得到相应的识别结果,可以将识别结果发送给应用层模块120,应用层模块120可以将识别结果转发给webview模块110,webview模块110可以将该识别结果呈现给目标用户。
34.需要说明的是,本说明书实施例中的生物信息可以包括多种,例如指纹信息、面部
信息、掌纹信息、虹膜信息等,上述信息所呈现的方式可以为图像、也可以为由字符构成的数据等,具体可以根据实际情况设定,本说明书实施例对此不做限定。
35.本说明书实施例提供一种基于网页的生物识别装置,设置有可信执行环境,包括:webview模块,集成于目标网页程序中,调用应用层模块的api,并获取目标用户发起的生物识别指令,向应用层模块发送该生物识别指令对应的生物识别请求,然后,通过应用层模块和原生层模块,将该生物识别请求发送给tee层模块,tee层模块通过可信执行环境调用摄像组件,并通过摄像组件采集目标用户的生物信息,将生物信息提供给可信执行环境,并在可信执行环境中对生物信息进行签名处理,将签名后的生物信息提供给服务器,服务器对所述签名后的生物信息进行验签处理,并在验签通过后,基于生物信息对目标用户进行生物识别处理,这样,基于tee的网页程序生物识别机制实现了在网页端通过在tee环境下安全地提取用户的生物信息,并在tee环境下对生物信息进行完整性保护措施,保证了生物信息在传输链路上不被攻击者劫持。
36.实施例二
37.本说明书实施例提供一种基于网页的生物识别装置,该基于网页的生物识别装置包含了图1~图2所示的基于网页的生物识别装置的全部功能模块,并在其基础上,对其进行了改进,改进内容如下:
38.如图3所示,在实际应用中,应用层模块120其主要功能可以包括:集成生物信息采集和登录认证等功能,具体实现可以包括:通过目标网页程序对应的内核(具体如webkit等)的原生api,添加webview层与原生层模块130的桥接器jsbridge,桥接器jsbridge实现了原生层模块130和webview模块110之间的双向通信。应用层模块120将通过桥接器jsbridge接收webview模块110发送的生物识别请求,并向webview模块110发送生物识别请求结果。除此之外,还可以通过java的标准类httpurlconnection等,应用层模块120将与服务器200建立安全链接,并向服务器200发送采集的生物信息和生物识别请求,接收服务器200端返回的识别结果等。
39.此外,如图3所示,webview模块110的功能可以包括:提供给目标网页程序调用生物识别或基于生物识别的登录认证接口,具体地,目标网页程序可以通过上述桥接器jsbridge,调用应用层模块120的js api,发起生物识别请求,并接收识别结果,以供后续目标网页程序的进一步处理。
40.在实际应用中,如图3所示,原生层模块130的主要功能可以包括:提供与可信执行环境的tee层模块140交互的链路,具体实现可以包括:在通用执行环境下,可以通过如libteec库等,编写与tee层模块140交互的代码,该代码能够实现的功能可以包括通过建立原生层模块130与tee层模块140的会话上下文;通过建立原生层模块130与tee层模块140的会话,建立上述会话会触发tee层模块140的创建可信应用170(即ta)实例方法和创建会话方法,tee层模块140会返回给原生层模块130创建会话的结果;发送生物识别请求,以此将该生物识别请求发送给tee层模块140的采集生物信息方法,tee层模块140会返回给原生层模块130命令执行的结果;关闭与tee层模块140的会话,并可以触发tee层模块140关闭会话和关闭可信应用170(即ta)的实例,tee层模块140会返回给原生层模块130关闭会话的结果;释放之前原生层模块130所创建的会话上下文。最后,将上述代码编译为通用执行环境下的ca。
41.基于上述内容,原生层模块130可以建立与tee层模块140的会话上下文,并触发tee层模块140创建可信执行环境中的可信应用170,并在可信执行环境中对该生物信息进行签名处理,在完成与tee层模块140之间的交互时,触发tee层模块140关闭会话,且关闭可信应用170,释放与tee层模块140的会话上下文。
42.在实际应用中,如图3所示,tee层模块140的主要功能可以包括:提供一条安全调用生物信息采集组件(如摄像组件等)的链路,具体实现可以包括:终端设备中可以提供安全生物信息采集组件硬件,会将采集的生物信息更新至只有可信执行环境可访问的内存160中。可以利用可信执行环境内的dma机制,安全地采集目标用户的生物信息,因此,可以根据终端设备中的移动智能终端开发平台所提供的内存160访问控制器sdk,为tee层模块140编写通过dma安全通道采集生物信息的功能函数,以及使用存储在可信应用170中的用户密钥对生物信息进行签名的功能函数;同时,可以通过如libteec库等,在tee层模块140中添加与原生层模块130交互的代码,该代码可以实现的功能可以包括创建一个ta(可信应用170)实例,创建与原生层模块130的会话,调用上述的功能函数,关闭上述会话和关闭上述ta实例,最后,可以将上述代码编译为可信执行环境下的可信应用ta170。
43.基于上述内容,tee层模块140可以将上述生物信息存储于仅可信执行环境访问的内存160中,并触发可信执行环境直接读取内存160中存储的该生物信息。此外,tee层模块140可以在可信执行环境中创建可信应用170,并触发可信执行环境中的可信应用170对该生物信息进行签名处理,得到签名后的生物信息,将签名后的生物信息和生物识别请求发送给服务器200。
44.在实施中,可以在可信执行环境与服务器200之间建立信息传输通道,可以通过该信息传输通道将签名后的生物信息和生物识别请求发送给服务器200,或者,也可以通过可信执行环境中的可信应用170将签名后的生物信息发送给原生层模块130,原生层模块130,可以将签名后的生物信息发送给应用层模块120,应用层模块120可以将签名后的生物信息和生物识别请求发送给服务器200,具体可以根据实际情况设定,本说明书实施例对此不做限定。
45.本说明书实施例提供一种基于网页的生物识别装置,设置有可信执行环境,包括:webview模块,集成于目标网页程序中,调用应用层模块的api,并获取目标用户发起的生物识别指令,向应用层模块发送该生物识别指令对应的生物识别请求,然后,通过应用层模块和原生层模块,将该生物识别请求发送给tee层模块,tee层模块通过可信执行环境调用摄像组件,并通过摄像组件采集目标用户的生物信息,将生物信息提供给可信执行环境,并在可信执行环境中对生物信息进行签名处理,将签名后的生物信息提供给服务器,服务器对所述签名后的生物信息进行验签处理,并在验签通过后,基于生物信息对目标用户进行生物识别处理,这样,基于tee的网页程序生物识别机制实现了在网页端通过在tee环境下安全地提取用户的生物信息,并在tee环境下对生物信息进行完整性保护措施,保证了生物信息在传输链路上不被攻击者劫持。
46.实施例三
47.如图4a和4b所示,本说明书实施例提供一种基于网页的生物识别方法,该方法的执行主体可以为上述实施例中提供的终端设备,其中,该终端设备可以是手机、平板电脑等移动终端设备,也可以是个人计算机、笔记本电脑等终端设备。该终端设备设置有可信执行
环境,该可信执行环境可以是tee(trusted execution environment),该可信执行环境可以通过预定的编程语言编写的程序来实现(即可以是以软件的形式实现),也可以通过硬件设备和预先编写的程序共同实现(即可以是以硬件+软件的形式实现)等,该可信执行环境可以为进行数据处理的安全运行环境。该方法具体可以包括以下步骤:
48.在步骤s402中,获取目标用户通过目标网页程序发起的生物识别指令。
49.在步骤s404中,通过目标网页程序向可信执行环境发送上述生物识别指令对应的生物识别请求。
50.在实施中,可以通过webview模块110调用应用层模块120的api,获取目标用户发起的生物识别指令,并可以向应用层模块120发送该生物识别指令对应的生物识别请求,应用层模块120可以将该生物识别请求发送给原生层模块130,原生层模块130可以将该生物识别请求发送给tee层模块140,从而可信执行环境中可以包括该生物识别请求。
51.在步骤s406中,通过可信执行环境调用生物信息采集组件150,并通过生物信息采集组件150采集目标用户的生物信息,将生物信息提供给可信执行环境。
52.在步骤s408中,将上述生物信息和上述生物识别请求发送给服务器200,该生物信息和该生物识别请求用于触发服务器200基于该生物信息对目标用户进行生物识别处理。
53.在实施中,可以根据实际情况,建立可信执行环境与服务器200之间的信息传输通道,可以通过可信执行环境与服务器200之间预先构建的信息传输通道,将可信执行环境中的生物信息发送给服务器200,并将生物识别请求发送给服务器200。
54.本说明书实施例提供一种基于网页的生物识别方法,通过获取目标用户通过目标网页程序发起的生物识别指令,并通过目标网页程序向可信执行环境发送生物识别指令对应的生物识别请求,然后,通过可信执行环境调用生物信息采集组件,并通过生物信息采集组件采集目标用户的生物信息,将生物信息提供给可信执行环境,最后,将该生物信息和该生物识别请求发送给服务器,服务器基于该生物信息对目标用户进行生物识别处理,这样,基于tee的网页程序生物识别机制实现了在网页端通过在tee环境下安全地提取用户的生物信息,并在tee环境下对生物信息进行完整性保护措施,保证了生物信息在传输链路上不被攻击者劫持。
55.实施例四
56.如图5所示,本说明书实施例提供一种基于网页的生物识别方法,该方法的执行主体可以为上述实施例中提供的终端设备,其中,该终端设备可以是手机、平板电脑等移动终端设备,也可以是个人计算机、笔记本电脑等终端设备。该终端设备设置有可信执行环境,该可信执行环境可以是tee(trusted execution environment),该可信执行环境可以通过预定的编程语言编写的程序来实现(即可以是以软件的形式实现),也可以通过硬件设备和预先编写的程序共同实现(即可以是以硬件+软件的形式实现)等,该可信执行环境可以为进行数据处理的安全运行环境。该方法具体可以包括以下步骤:
57.在步骤s502中,获取目标用户通过目标网页程序发起的生物识别指令。
58.其中,目标网页程序可以是基于超文本标记语言html5构建的网页。
59.在步骤s504中,通过目标网页程序向可信执行环境发送上述生物识别指令对应的生物识别请求。
60.上述步骤s502和步骤s504的具体处理过程可以参见上述实施例中的相关内容,在
此不再赘述。
61.在步骤s506中,通过可信执行环境调用生物信息采集组件,并通过生物信息采集组件采集目标用户的生物信息。
62.在步骤s508中,将上述生物信息存储于仅可信执行环境访问的内存中。
63.在步骤s510中,通过可信执行环境直接读取内存中存储的生物信息。
64.在步骤s512中,在可信执行环境中,通过可信应用对上述生物信息进行签名处理,得到签名后的生物信息。
65.在步骤s514中,将签名后的生物信息和上述生物识别请求发送给服务器,该签名后的生物信息和该生物识别请求用于触发服务器对签名后的生物信息进行验签处理,并在验签通过后,基于该生物信息对目标用户进行生物识别处理。
66.本说明书实施例提供一种基于网页的生物识别方法,通过获取目标用户通过目标网页程序发起的生物识别指令,并通过目标网页程序向可信执行环境发送生物识别指令对应的生物识别请求,然后,通过可信执行环境调用生物信息采集组件,并通过生物信息采集组件采集目标用户的生物信息,将生物信息提供给可信执行环境,最后,将该生物信息和该生物识别请求发送给服务器,服务器基于该生物信息对目标用户进行生物识别处理,这样,基于tee的网页程序生物识别机制实现了在网页端通过在tee环境下安全地提取用户的生物信息,并在tee环境下对生物信息进行完整性保护措施,保证了生物信息在传输链路上不被攻击者劫持。
67.实施例五
68.以下通过具体的应用场景对上述基于网页的生物识别进行详细说明,该场景可以包括:面部识别的应用场景,其中的目标网页程序以html5构建的网页(以下以h5网页代替),生物信息采集组件为摄像头,生物信息为面部图像,生物识别请求为面部识别请求,生物识别指令为面部识别指令为例进行说明。
69.如图6所示,本说明书实施例提供一种基于网页的生物识别方法,该方法的执行主体可以为上述实施例中提供的终端设备,其中,该终端设备可以是手机、平板电脑等移动终端设备,也可以是个人计算机、笔记本电脑等终端设备。该终端设备设置有可信执行环境,该可信执行环境可以是tee(trusted execution environment),该可信执行环境可以通过预定的编程语言编写的程序来实现(即可以是以软件的形式实现),也可以通过硬件设备和预先编写的程序共同实现(即可以是以硬件+软件的形式实现)等,该可信执行环境可以为进行数据处理的安全运行环境。该方法具体可以包括以下步骤:
70.在步骤s602中,获取目标用户通过h5网页发起的面部识别指令。
71.在步骤s604中,通过h5网页向可信执行环境发送上述面部识别指令对应的面部识别请求。
72.在步骤s606中,通过可信执行环境调用摄像头,并通过摄像头采集目标用户的面部图像。
73.在步骤s608中,将上述面部图像存储于仅可信执行环境访问的内存中。
74.在步骤s610中,通过可信执行环境直接读取内存中存储的面部图像。
75.在步骤s612中,在可信执行环境中,通过可信应用对上述面部图像进行签名处理,得到签名后的面部图像。
76.在步骤s614中,将签名后的面部图像和上述面部识别请求发送给服务器,该签名后的面部图像和该面部识别请求用于触发服务器对该签名后的面部图像进行验签处理,并在验签通过后,基于该面部图像对目标用户进行面部识别处理。
77.本说明书实施例提供一种基于网页的生物识别方法,通过获取目标用户通过目标网页程序发起的生物识别指令,并通过目标网页程序向可信执行环境发送生物识别指令对应的生物识别请求,然后,通过可信执行环境调用生物信息采集组件,并通过生物信息采集组件采集目标用户的生物信息,将生物信息提供给可信执行环境,最后,将该生物信息和该生物识别请求发送给服务器,服务器基于该生物信息对目标用户进行生物识别处理,这样,基于tee的网页程序生物识别机制实现了在网页端通过在tee环境下安全地提取用户的生物信息,并在tee环境下对生物信息进行完整性保护措施,保证了生物信息在传输链路上不被攻击者劫持。
78.实施例六
79.以上为本说明书实施例提供的基于网页的生物识别方法,基于同样的思路,本说明书实施例还提供一种基于网页的生物识别设备,基于网页的生物识别设备中包括可信执行环境,如图7所示。
80.所述基于网页的生物识别设备可以为上述实施例提供终端设备等。
81.基于网页的生物识别设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器701和存储器702,存储器702中可以存储有一个或一个以上存储应用程序或数据。其中,存储器702可以是短暂存储或持久存储。存储在存储器702的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对基于网页的生物识别设备中的一系列计算机可执行指令。更进一步地,处理器701可以设置为与存储器702通信,在基于网页的生物识别设备上执行存储器702中的一系列计算机可执行指令。基于网页的生物识别设备还可以包括一个或一个以上电源703,一个或一个以上有线或无线网络接口704,一个或一个以上输入输出接口705,一个或一个以上键盘706。
82.具体在本实施例中,基于网页的生物识别设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对基于网页的生物识别设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
83.获取目标用户通过目标网页程序发起的生物识别指令;
84.通过所述目标网页程序向所述可信执行环境发送所述生物识别指令对应的生物识别请求;
85.通过所述可信执行环境调用生物信息采集组件,并通过所述生物信息采集组件采集所述目标用户的生物信息,将所述生物信息提供给所述可信执行环境;
86.将所述生物信息和所述生物识别请求发送给服务器,所述生物信息和所述生物识别请求用于触发所述服务器基于所述生物信息对所述目标用户进行生物识别处理。
87.本说明书实施例中,所述将所述生物信息提供给所述可信执行环境,包括:
88.将所述生物信息存储于仅所述可信执行环境访问的内存中;
89.通过所述可信执行环境直接读取所述内存中存储的所述生物信息。
90.本说明书实施例中,所述将所述生物信息和所述生物识别请求发送给服务器,包括:
91.通过所述可信执行环境与所述服务器之间预先构建的信息传输通道,将所述可信执行环境中的所述生物信息发送给所述服务器,并将所述生物识别请求发送给所述服务器。
92.本说明书实施例中,所述将所述生物信息和所述生物识别请求发送给服务器,包括:
93.在所述可信执行环境中,通过可信应用对所述生物信息进行签名处理,得到签名后的生物信息;
94.将所述签名后的生物信息和所述生物识别请求发送给所述服务器。
95.本说明书实施例中,所述目标网页程序是基于超文本标记语言html5构建的网页。
96.本说明书实施例提供一种基于网页的生物识别设备,通过获取目标用户通过目标网页程序发起的生物识别指令,并通过目标网页程序向可信执行环境发送生物识别指令对应的生物识别请求,然后,通过可信执行环境调用生物信息采集组件,并通过生物信息采集组件采集目标用户的生物信息,将生物信息提供给可信执行环境,最后,将该生物信息和该生物识别请求发送给服务器,服务器基于该生物信息对目标用户进行生物识别处理,这样,基于tee的网页程序生物识别机制实现了在网页端通过在tee环境下安全地提取用户的生物信息,并在tee环境下对生物信息进行完整性保护措施,保证了生物信息在传输链路上不被攻击者劫持。
97.实施例七
98.进一步地,基于上述图4a到图6所示的方法,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令信息,一种具体的实施例中,该存储介质可以为u盘、光盘、硬盘等,该存储介质存储的计算机可执行指令信息在被处理器执行时,能实现以下流程:
99.获取目标用户通过目标网页程序发起的生物识别指令;
100.通过所述目标网页程序向所述可信执行环境发送所述生物识别指令对应的生物识别请求;
101.通过所述可信执行环境调用生物信息采集组件,并通过所述生物信息采集组件采集所述目标用户的生物信息,将所述生物信息提供给所述可信执行环境;
102.将所述生物信息和所述生物识别请求发送给服务器,所述生物信息和所述生物识别请求用于触发所述服务器基于所述生物信息对所述目标用户进行生物识别处理。
103.本说明书实施例中,所述将所述生物信息提供给所述可信执行环境,包括:
104.将所述生物信息存储于仅所述可信执行环境访问的内存中;
105.通过所述可信执行环境直接读取所述内存中存储的所述生物信息。
106.本说明书实施例中,所述将所述生物信息和所述生物识别请求发送给服务器,包括:
107.通过所述可信执行环境与所述服务器之间预先构建的信息传输通道,将所述可信执行环境中的所述生物信息发送给所述服务器,并将所述生物识别请求发送给所述服务器。
108.本说明书实施例中,所述将所述生物信息和所述生物识别请求发送给服务器,包括:
109.在所述可信执行环境中,通过可信应用对所述生物信息进行签名处理,得到签名后的生物信息;
110.将所述签名后的生物信息和所述生物识别请求发送给所述服务器。
111.本说明书实施例中,所述目标网页程序是基于超文本标记语言html5构建的网页。
112.本说明书实施例提供一种存储介质,通过获取目标用户通过目标网页程序发起的生物识别指令,并通过目标网页程序向可信执行环境发送生物识别指令对应的生物识别请求,然后,通过可信执行环境调用生物信息采集组件,并通过生物信息采集组件采集目标用户的生物信息,将生物信息提供给可信执行环境,最后,将该生物信息和该生物识别请求发送给服务器,服务器基于该生物信息对目标用户进行生物识别处理,这样,基于tee的网页程序生物识别机制实现了在网页端通过在tee环境下安全地提取用户的生物信息,并在tee环境下对生物信息进行完整性保护措施,保证了生物信息在传输链路上不被攻击者劫持。
113.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
114.在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmable logic device,pld)(例如现场可编程门阵列(field programmable gate array,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardware description language,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advanced boolean expression language)、ahdl(altera hardware description language)、confluence、cupl(cornell university programming language)、hdcal、jhdl(java hardware description language)、lava、lola、myhdl、palasm、rhdl(ruby hardware description language)等,目前最普遍使用的是vhdl(very-high-speed integrated circuit hardware description language)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
115.控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可
读介质、逻辑门、开关、专用集成电路(application specific integrated circuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmel at91sam、microchip pic18f26k20以及silicone labs c8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
116.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
117.为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
118.本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
119.本说明书的实施例是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程欺诈案例的串并设备的处理器以产生一个机器,使得通过计算机或其他可编程欺诈案例的串并设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
120.这些计算机程序指令也可存储在能引导计算机或其他可编程欺诈案例的串并设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
121.这些计算机程序指令也可装载到计算机或其他可编程欺诈案例的串并设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
122.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
123.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或
非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
124.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
125.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
126.本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
127.本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
128.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
129.以上所述仅为本说明书的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1