CN110781472A - 指纹数据的存储和校验方法、终端及存储介质 - Google Patents

指纹数据的存储和校验方法、终端及存储介质 Download PDF

Info

Publication number
CN110781472A
CN110781472A CN201910950903.9A CN201910950903A CN110781472A CN 110781472 A CN110781472 A CN 110781472A CN 201910950903 A CN201910950903 A CN 201910950903A CN 110781472 A CN110781472 A CN 110781472A
Authority
CN
China
Prior art keywords
fingerprint
fingerprint data
verification
data
template
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.)
Pending
Application number
CN201910950903.9A
Other languages
English (en)
Inventor
林进全
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oppo Chongqing Intelligent Technology Co Ltd
Original Assignee
Oppo Chongqing Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo Chongqing Intelligent Technology Co Ltd filed Critical Oppo Chongqing Intelligent Technology Co Ltd
Priority to CN201910950903.9A priority Critical patent/CN110781472A/zh
Publication of CN110781472A publication Critical patent/CN110781472A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/50Maintenance of biometric data or enrolment thereof
    • G06V40/53Measures to keep reference information secret, e.g. cancellable biometrics

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Collating Specific Patterns (AREA)

Abstract

本申请实施例公开了一种指纹数据的存储和校验方法、终端及存储介质,指纹数据的存储方法包括:响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从初始指纹数据中提取目标指纹数据;通过指纹秘钥对目标指纹数据进行加密处理,获得初始指纹数据对应的第一指纹模板;将第一指纹模板存储至eSE中的第一存储区域。指纹数据的校验方法包括:在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;利用指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据;根据目标指纹数据获得校验指纹数据;响应校验指令,利用校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。

Description

指纹数据的存储和校验方法、终端及存储介质
技术领域
本申请实施例涉及终端技术领域,尤其涉及一种指纹数据的存储和校验方法、终端及存储介质。
背景技术
随着科技的逐步发展,具有多种功能的终端已经逐渐成为生活和工作中不可或缺的重要工具,因此,终端对安全性的要求也越来越高。为了保证安全性,终端常常利用指纹数据进行来进行用户身份的认证,具体地,终端在对用户的指纹数据进行存储和校验时,大都是先在本地注册存储用户的指纹信息,然后在需要进行身份认证时,通过指纹信息和实时检测的指纹特征点进行对比获得匹配结果,便可以根据匹配结果确定身份认证是否通过。其中,为了防止富执行环境(Rich Execution Environment,REE)的干扰,终端常常在可信执行环境(Trusted Execution Environment,TEE)进行指纹数据的采集和校验。
然而,由于TEE的安全级别只能达到EAL4+,同时,存储的指纹数据也容易被强制清除或暴力读取,因此,亟需通过增强指纹数据的保护来提升终端的安全性。
发明内容
本申请实施例提供了一种指纹数据的存储和校验方法、终端及存储介质,可以有效地加强对指纹数据的保护,大大提升了终端的安全性。
本申请实施例的技术方案是这样实现的:
本申请实施例提供了一种指纹数据的存储方法,所述方法包括:
响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从所述初始指纹数据中提取目标指纹数据;其中,所述预设提取策略用于对所述初始指纹数据中的关键信息进行提取;
通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板;
将所述第一指纹模板单元存储至eSE中的第一存储区域。
本申请实施例提供了一种指纹数据的校验方法,所述方法包括:
在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;
利用所述指纹秘钥对所述第一指纹模板进行解密处理,获得目标指纹数据;
根据所述目标指纹数据获得校验指纹数据;
响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。
本申请实施例提供了一种第一终端,所述第一终端包括:提取单元,加密单元以及存储单元,
所述提取单元,用于响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从所述初始指纹数据中提取目标指纹数据;其中,所述预设提取策略用于对所述初始指纹数据中的关键信息进行提取;
所述加密单元,用于通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板;
所述存储单元,用于将所述第一指纹模板单元存储至eSE中的第一存储区域。
本申请实施例提供了一种第二终端,所述第二终端包括:读取单元,解密单元、获取单元以及校验单元,
所述读取单元,用于在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;
所述解密单元,用于利用所述指纹秘钥对所述第一指纹模板进行解密处理,获得目标指纹数据;
所述获取单元,用于根据所述目标指纹数据获得校验指纹数据;
所述校验单元,用于响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。
本申请实施例提供了一种第一终端,所述第一终端包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被所述第一处理器执行时,实现如上所述的指纹数据的存储方法。
本申请实施例提供了一种第二终端,其特征在于,所述第二终端包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被所述第二处理器执行时,实现如上所述的指纹数据的校验方法。
本申请实施例提供了一种计算机可读存储介质,其上存储有程序,应用于终端中,所述程序被处理器执行时,实现如上所述的指纹数据的存储和校验方法。
本申请实施例提供了一种指纹数据的存储和校验方法、终端及存储介质,第一终端响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从初始指纹数据中提取目标指纹数据;其中,预设提取策略用于对初始指纹数据中的关键信息进行提取;通过指纹秘钥对目标指纹数据进行加密处理,获得初始指纹数据对应的第一指纹模板;将第一指纹模板存储至eSE中的第一存储区域。第二终端在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;利用指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据;根据目标指纹数据获得校验指纹数据;响应校验指令,利用校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。也就是说,在本申请中,第一终端在进行指纹数据的存储时,可以利用eSE中存储的指纹秘钥对初始指纹数据中目标指纹数据进行加密,并将加密后获得的第一指纹模板存储至eSE中,相应地,第二终端在进行指纹数据的校验时,可以利用eSE中存储的指纹秘钥和第一指纹模板,获得目标指纹数据,并进一步获得用于进行校验处理的校验指纹数据。由此可见,终端可以利用高安全级别的eSE对加解密的指纹秘钥和加密后的第一指纹模板进行存储,在需要指纹校验时,终端可以通过读取eSE中的指纹秘钥和第一指纹模板来恢复校验指纹数据;进一步地,终端对第一指纹模板、剩余指纹数据所对应的第二指纹模板和第三指纹模板进行分散处理和存储,从而有效地加强了对指纹数据的保护,大大提升了终端的安全性。
附图说明
图1为指纹数据的存储方法的实现流程示意图;
图2为提取目标指纹数据的示意图;
图3为剩余指纹数据的示意图;
图4为存储指纹数据的示意图;
图5为指纹数据的校验方法的实现流程示意图;
图6为校验指纹数据的生成示意图;
图7为校验指纹数据的示意图;
图8为第一终端的组成结构示意图一;
图9为第一终端的组成结构示意图二;
图10为第二终端的组成结构示意图一;
图11为第二终端的组成结构示意图二。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅仅用于解释相关申请,而非对该申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关申请相关的部分。
现有技术中,终端在对用户的指纹数据进行存储和校验时,大都是先在终端本地注册存储用户指纹信息,然后在需要进行身份认证时从内存中读取出来,通过将用户指纹信息与临时从指纹传感器获取到的指纹特征点进行对比获得匹配结果,最后根据匹配结果确定身份认证是否通过。具体地,终端可以在TEE中采集指纹,同时指纹匹配识别算法也是在TEE安全环境区执行的,这样可以避免来自REE侧常规软件的攻击,其中,用户指纹数据经过加密之后存储在用户分区中。
然而,虽然TEE可以保证运行环境的安全,免受来自REE的干拢,但是,终端是将指纹数据保存在用户分区中的,因此,指纹数据被擦除的风险极大。例如,如果终端进行恢复出厂设置或者刷机,则会自动清除用户分区的数据。
另一方面,虽然终端进行指纹数据的存储和校验大都配置在TEE安全环境下面,即纹数据的特征点提取和匹配算法均在TEE下面执行,但是由于TEE的安全级别只能达到EAL4+(国际上定义的一种安全级别,金融应用要求必须达到EAL5+以上),所以还是存在可能被黑客攻破的风险,其安全级别已不足以满足功能越来越集中和安全性要求越来越高的终端。
如上所述,现有技术中,采集指纹数据和运行算法都在TEE内环境完成,而加密之后的指纹数据存储在用户分区/data中,此时数据会随着刷机、恢复出厂设置等行为动作被清除掉。同时存储在用户分区/data下面的数据,也存在被其它程序暴力解密读取的风险。例如,从同一机型的手机取出指纹模板,替换到原来手机的指纹模板之后,就可解锁原终端来查看里面的数据。
为了解决上述问题,本申请实施例提供了一种指纹数据的存储和校验方法、终端及存储介质,第一终端在进行指纹数据的存储时,可以利用eSE中存储的指纹秘钥对初始指纹数据中目标指纹数据进行加密,并将加密后获得的第一指纹模板存储至eSE中,相应地,第二终端在进行指纹数据的校验时,可以利用eSE中存储的指纹秘钥和第一指纹模板,获得目标指纹数据,并进一步获得用于进行校验处理的校验指纹数据。由此可见,终端可以利用高安全级别的eSE对加解密的指纹秘钥和加密后的第一指纹模板进行存储,在需要指纹校验时,终端可以通过读取eSE中的指纹秘钥和第一指纹模板来恢复校验指纹数据;进一步地,终端对第一指纹模板、剩余指纹数据所对应的第二指纹模板和第三指纹模板进行分散处理和存储,从而有效地加强了对指纹数据的保护,大大提升了终端的安全性。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请一实施例提供了一种指纹数据的存储方法,图1为指纹数据的存储方法的实现流程示意图,如图1所示,在本申请的实施例中,第一终端进行指纹存储的方法可以包括以下步骤:
步骤101、响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从初始指纹数据中提取目标指纹数据;其中,预设提取策略用于对初始指纹数据中的关键信息进行提取。
在本申请的实施例中,第一终端可以对接收到的指纹注册指令进行响应,在TEE中采集初始指纹数据之后,可以先按照预设提取策略从初始指纹数据中提取目标指纹数据。
需要说明的是,在本申请的实施例中,第一终端可以为任何具备通信和存储功能、且设置有指纹检测装置的设备。例如:平板电脑、手机、电子阅读器、遥控器、个人计算机(Personal Computer,PC)、笔记本电脑、车载设备、网络电视、可穿戴设备等设备。
进一步地,在本申请的实施例中,第一终端中可以设置有嵌入式安全单元(Embedded SecureElement,eSE),该eSE可以存在于用户身份识别(SubscriberIdentification Module,SIM)卡中,也可以将eSE集成在第一终端中,eSE还可以存在于安全数码(Secure Digital Memory,SD)集成芯片中。具体地,eSE是一种安全芯片,主要负责第一终端的数据安全存储和数据加密等工作。为了便于说明,本申请实施例以eSE集成到第一终端上为例进行说明,但本发明并不限于此。
需要说明的是,在本申请的实施例中,指纹注册指令可以为对用户身份进行注册的指示。具体地,第一终端可以在REE中接收指纹注册指令。具体地,第一终端在接收指纹注册指令之后,便可以通过对用户的初始指纹数据的采集来响应该指纹注册指令。
需要说明的是,在本申请的实施例中,第一终端的执行环境可以包括REE、TEE以及eSE。从安全性、可开发、运行体验上看,TEE取得了最佳平衡,TEE能够兼顾安全性、可开发性、运行体验。
进一步地,在本申请的实施例中,接收指纹注册指令的REE指的是第一终端的REE,例如:ios、android、winphone等。
TEE是由跨行业的国际标准组织(Global Platform,GP)提出的基于安全芯片技术的应用管理标准,是一套开放的安全体系架构,以低成本解决移动安全应用问题,即针对移动支付、移动商务、数字版权等安全业务提供适度安全解决方案。
TEE的目的是将高安全敏感的应用与通用的软件环境进行隔离,安全地提供访问硬件资源(如安全存储、安全显示和用户接口等)的能力。也就是说,TEE提供隔离的执行的环境,具有独立的执行空间,可以采用基于ARM Trustzone硬件隔离技术实现。
TEE的思路是在第一终端内部构建一个硬件可信环境,作为TEE可信环境与原有***环境交换的桥梁,这个可信环境与原有***环境并行,共用一套、实际是并行嵌入一个嵌入式安全***,该嵌入式安全***可以通过安全应用程序编程接口(ApplicationProgramming Interface,API)与原有操作***进行通信。
REE是指传统的第一终端应用运行环境,如iOS、安卓(Andriod)、Linux等。
具体地,TEE用于安装、存储和保护可信应用(Trusted Application,TA)底层接口,而REE用于安装、存储其它的应用。TEE具有自身的操作***,与REE中的操作***(如iOS、Android、Linux等)相隔离。REE中的授权应用,通过代理驱动程序才能与TEE中的代理驱动程序通信,不可直接访问TEE的资源。
TA底层接口可以用于访问嵌入式多介质卡(Embedded Multi Media Card,EMMC)中的重放保护内存块(Replay Protected Memory Block,RPMB)。
进一步地,在本申请的实施例中,第一终端在TEE中进行初始指纹数据的采集时,可以通过指纹应用对应的指纹传感器进行数据采集,然后可以通过TA底层接口与指纹应用进行对接,从而将初始指纹数据进行传输,获得初始指纹数据。其中,TA底层接口可以采用高通平台中的二进制输入输出(Binary Input Output,BIO)通信方式封装或解析传输的数据。
需要说明的是,在本申请的实施例中,第一终端在TEE中采集在TEE中采集初始指纹数据之后,可以先对初始指纹数据中的关键信息进行提取,因此,第一终端可以按照预设提取策略,从初始指纹数据中提取目标指纹数据。具体地,预设提取策略用于提取初始指纹数据中的关键信息。
进一步地,在本申请的实施例中,第一终端在按照预设提取策略对目标指纹数据进行提取时,可以按照预先存储的位置区域对初始指纹数据进行关键信息的筛选,其中,预先存储的位置区域可以为一般指纹数据中较为重要的数据在指纹图中所对应的位置。图2为提取目标指纹数据的示意图,如图2所示,对于采集获得的初始指纹数据,第一终端可以进行筛选,将初始指纹数据中较为重要的数据提取为目标指纹数据。
需要说明的是,在本申请的实施例中,第一终端在按照预设提取策略从初始指纹数据中提取目标指纹数据之后,初始指纹数据中的、目标指纹数据以外的指纹数据为剩余指纹数据。图3为剩余指纹数据的示意图,如图3所示,第一终端在提取初始指纹数据中的目标指纹数据以后,余下的其他数据即为剩余指纹数据,也就是说,目标指纹数据和剩余指纹数据共同组成初始指纹数据。
步骤102、通过指纹秘钥对目标指纹数据进行加密处理,获得初始指纹数据对应的第一指纹模板。
在本申请的实施例中,第一终端在按照预设提取策略从初始指纹数据中提取目标指纹数据之后,便可以通过指纹秘钥对目标指纹数据进行加密数据,从而可以获得初始指纹数据对应的第一指纹模板。
在本申请的实施例中,进一步地,第一终端在通过指纹秘钥对目标指纹数据进行加密处理之前,可以从eSE中的第二存储区域中读取指纹秘钥。
需要说明的是,在本申请的实施例中,eSE可以由TEE可执行程序TA访问控制,其中,eSE主要负责第一终端的数据安全存储和数据加密等工作,可以很好的保存应用公钥证书和应用私钥,避免数据丢失造成用户财产损失。
进一步地,在本申请的实施例中,第一终端可以预先在eSE中存储用于对数据进行加密和解密的指纹秘钥,具体地,第一终端可以在eSE中的第二存储区域中预先存储指纹秘钥。
进一步地,在本申请的实施例中,第一终端可以利用eSE上运行的JCOP中的安全存储SSA,从而可以实现对秘钥的存储和数据的加密。
需要说明的是,在本申请的实施例中,第一终端在获取初始指纹数据中的目标指纹数据,同时读取eSE中存储的指纹秘钥之后,可以直接利用指纹秘钥对目标指纹数据进行加密处理,获得加密后的指纹数据,即第一指纹模板。
进一步地,在本申请的实施例中,由于目标指纹数据是初始指纹数据中的部分数据,因此,第一终端利用eSE中存储的指纹秘钥对目标指纹数据进行加密,也就是说,第一终端可以对初始指纹数据中的部分数据进行加密,相应地,获得的第一指纹模板是初始指纹数据对应的部分模板。
需要说明的是,在本申请的实施例中,第一终端在对初始指纹数据进行目标指纹数据的提取之后,初始指纹数据中的剩余指纹数据可以不进行加密,也就是说,第一终端可以不对全部的初始指纹数据进行加密,而是优选较为重要的目标指纹数据进行加密。
进一步地,在本申请的实施例中,第一终端在对目标指纹数据进行加密时所使用的指纹秘钥,是存储在eSE中的第二存储区域中的,由于eSE为常用于金融领域的高安全级别芯片,eSE本身具有很高的安全性,比如NXP eSE芯片可以达到EAL6+安全等级,在设计之初就可以防御例如注入攻击、防错误注入攻击、旁路攻击以及逆向攻击等很多攻击,所以存储在eSE上面的指纹密钥的安全性可以得到很好的保证,不用担心黑客通过硬件攻击的方式得到存储在eSE上面的指纹秘钥。因此,第一终端将指纹秘钥存储在eSE中可以有效地提高密码存储的安全级别。
需要说明的是,在本申请的实施例中,第一终端还可以将初始指纹数据中的剩余指纹数据进行划分处理,从而进一步获得初始指纹对应的第二指纹模板和第三指纹模板。
进一步地,在本申请的实施例中,第一终端确定的第一指纹模板、第二指纹模板以及第三指纹模板,可以为初始指纹数据对应的全部指纹模板,即第一终端可以基于第一指纹模板、第二指纹模板以及第三指纹模板,获得初始指纹数据。
可以理解的是,在本申请中,第一终端仅将第一指纹模板存储至eSE中,即仅将初始指纹数据中的部分数据存储至eSE中,并没有将初始指纹数据中的全部数据存储至eSE中,这是由于考虑到了串行外设接口(Serial Peripheral Interface,SPI)传输效率和eSE处理数据效率,保存在eSE的数据不能太大,例如,本申请中优选将128字节的关键数据存储至eSE中,因此,在本申请中,第一终端仅将较为重要的第一指纹模板存储中,同时,第一终端还可以将指纹加密算法、指纹数据结构信息、指纹关键信息索引存储在eSE中,而把其它的数据,即剩余指纹数据对应的第二模板和第三模板存储在其它区域。
步骤103、将第一指纹模板存储至eSE中的第一存储区域。
在本申请的实施例中,第一终端在通过指纹秘钥对目标指纹数据进行加密处理,获得初始指纹数据对应的第一指纹模板之后,便可以将第一指纹模板存储在eSE中的、与第二存储区域不同的第一存储区域中。
需要说明的是,在本申请的实施例中,第一终端在对目标指纹数据加密获得对应加密后的第一指纹模板之后,便可以对第一指纹模板进行存储。具体地,第一终端也可以将第一指纹模板存储在eSE中。
具体地,正是由于eSE为高安全级别芯片,因此,第一终端可以选择将初始指纹数据中的较为重要的目标指纹数据所对应的第一指纹模板存储至eSE中,从而可以提高数据存储的安全级别。
进一步地,在本申请的实施例中,第一终端在将第一指纹模板存储至eSE时,具体可以将第一指纹模板存储在eSE中的第一存储区域中,其中,第一存储区域可以为eSE中的、与第二存储区域不同的存储区域。也就是说,在本申请中,第一指纹模板和指纹秘钥虽然都存储在eSE中,然二者可以存储在eSE中的不同区域中。
需要说明的是,在本申请的实施例中,第一终端将指纹秘钥和第一指纹模板分别存储在eSE中的第二存储区域和第一存储区域中,可以实现对指纹数据和秘钥的分隔存储,即将指纹秘钥和第一指纹模板分别存储在eSE中的不同位置中,从而可以最大程度的提高数据存储的安全级别。
进一步地,在本申请的实施例中,第一终端在存储指纹秘钥和第一指纹模板的同时,还可以将初始指纹数据对应的第二指纹模板和第三指纹模板进行存储。具体地,第一终端可以将第二指纹模板和第三指纹模板分别存储在不同的区域,从而可以实现对初始指纹数据对应的全部指纹模板进行分散处理,进一步提高数据存储的安全级别。
需要说明的是,在本申请的实施例中,第一终端在对剩余指纹数据进行存储处理时,可以先对剩余指纹数据进行划分处理,从而获得初始指纹数据对应的第二指纹模板和第三指纹模板,然后可以将第二指纹模板存储至TEE中的预设安全分区,同时将第三指纹模板存储至预设用户分区。
进一步地,在本申请的实施例中,第一终端在对第二指纹模板和第三指纹模板进行分别存储时,存储第二指纹模板的TEE中的预设安全分区可以为RPMB,存储第三指纹模板的预设用户分区可以为的由TEE OS控制的用户分区/data中。由此可见,相较于现有技术中的由TEE控制直接将初始指纹数据全部存储在/data用户分区中的技术方案,本申请将初始指纹数据按照三个指纹模板进行分散处理,对于不同的指纹模板,对应的处理方式和存储区域均不相同,其中,第一终端可以利用eSE中的SSA应用程序用来存储指纹秘钥和初始指纹数据中的部分数据,并且支持多个数据instance存储。从而大大提高了指纹数据的安全性。
在本申请的实施例中,进一步地,本申请中的第一终端功能模块主要包含REE OS执行环境、TEE执行环境、指纹模块、eSE等其它硬件模块,另外还有文本用户界面(Text-based User Interface,TUI)、输入输出功能模块。具体地,REE可以为应用程序执行入口,比如Android***;eSE可以由TEE可执行程序TA访问控制,本申请中,第一终端可以利用eSE的安全性和其上面运行的JCOP中的安全存储SSA;对于指纹模块,TEE中有对应的FP TA,应用于指纹数据的存储方法和指纹数据的校验方法;TUI、Secure touch可以通过I2c接口连接硬件,从而可以提供安全输入输出,由于输入输出实现在TEE内部实现,可以实现真正意义上的secure input/output,比现在REE上实现的各种防截屏,防窃取用户输入功能安全等级要高。
需要说明的是,在本申请的实施例中,基于上述步骤101至步骤104所描述的方法,第一终端按照预设提取策略对在TEE中采集在TEE中采集初始指纹数据进行关键信息的提取,获得目标指纹数据和剩余指纹数据,然后利用eSE中指纹秘钥对目标指纹数据进行加密,获得第一指纹模板,并将第一指纹模板存储至eSE中的、与指纹秘钥不同的存储区域中,同时也对基于剩余指纹数据获得的第二指纹模板和第三指纹模板进行分别存储。
图4为存储指纹数据的示意图,如图4所示,第一终端在TEE中采集初始指纹数据A之后,可以先按照预设提取策略从初始指纹数据中提取目标指纹数据a1,同时获得剩余指纹数据a2;第一终端从eSE中的第二存储区域中读取指纹秘钥K;然后通过指纹秘钥K对目标指纹数据a1进行加密处理,获得初始指纹数据对应的第一指纹模板M1;同时,第一终端还可以获得剩余指纹数据a2对应的第二指纹模板M2和第三指纹模板M3。最后,第一终端将第一指纹模板M1存储至eSE中的第一存储区域中,将第二指纹模板M2存储至RPMB中,将第三指纹模板M3存储至/data用户分区中,从而完成了对指纹数据进行了分散处理,并且不同指纹模板所用的处理方式不一样。
本申请实施例提供了一种指纹数据的存储方法,第一终端响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从初始指纹数据中提取目标指纹数据;其中,预设提取策略用于对初始指纹数据中的关键信息进行提取;通过指纹秘钥对目标指纹数据进行加密处理,获得初始指纹数据对应的第一指纹模板;将第一指纹模板存储至eSE中的第一存储区域。也就是说,在本申请中,第一终端在进行指纹数据的存储时,可以利用eSE中存储的指纹秘钥对初始指纹数据中目标指纹数据进行加密,并将加密后获得的第一指纹模板存储至eSE中。由此可见,终端可以利用高安全级别的eSE对加解密的指纹秘钥和加密后的第一指纹模板进行存储,在需要指纹校验时,终端可以通过读取eSE中的指纹秘钥和第一指纹模板来恢复校验指纹数据;进一步地,终端对第一指纹模板、剩余指纹数据所对应的第二指纹模板和第三指纹模板进行分散处理和存储,从而有效地加强了对指纹数据的保护,大大提升了终端的安全性。
本申请的另一实施例提供了一种指纹数据的校验方法,图5为指纹数据的校验方法的实现流程示意图,如图5所示,在本申请的实施例中,第二终端进行指纹数据校验的方法可以包括以下步骤:
步骤201、在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥。
在本申请的实施例中,第二终端在接收校验指令之后,可以先从eSE中读取第一指纹模板和指纹秘钥。
需要说明的是,在本申请的实施例中,第二终端可以为任何具备通信和存储功能、且设置有指纹检测装置的设备。例如:平板电脑、手机、电子阅读器、遥控器、PC、笔记本电脑、车载设备、网络电视、可穿戴设备等设备。
进一步地,在本申请的实施例中,第二终端中可以设置有eSE。具体地,eSE是一种安全芯片,主要负责第二终端的数据安全存储和数据加密等工作。为了便于说明,本申请实施例以eSE集成到第二终端上为例进行说明,但本发明并不限于此。
需要说明的是,在本申请的实施例中,校验指令可以为对用户身份进行安全验证的指示。具体地,第二终端可以在REE中接收校验指令,其中,第二终端接收校验指令的时机可以包括两个,例如,第二终端可以在REE第一次激活的时候接收校验指令,还可以在REE的设置里面录入。
进一步地,在本申请的实施例中,接收校验指令的REE指的是第二终端的REE,例如:ios、android、winphone等。
需要说明的是,在本申请的实施例中,eSE可以由TEE可执行程序TA访问控制,其中,eSE主要负责第二终端的数据安全存储和数据加密等工作,可以很好的保存应用公钥证书和应用私钥,避免数据丢失造成用户财产损失。
进一步地,在本申请的实施例中,第二终端可以预先在eSE中存储用于对数据进行加密和解密的指纹秘钥,具体地,第二终端可以在eSE中的第二存储区域中预先存储指纹秘钥,同时在eSE中的第一存储区域中预先存储第一指纹模板。其中,第一指纹模板为进行指纹验证处理的校验指纹数据中的部分模板。
需要说明的是,在本申请的实施例中,eSE中的第一存储区域存储的第一指纹模板是加密后的指纹模板,具体地,第一指纹模板是第二终端利用eSE中的第二存储区域存储的指纹秘钥进行加密获得的。
进一步地,在本申请的实施例中,由于eSE为常用于金融领域的高安全级别芯片,eSE本身具有很高的安全性,比如NXP eSE芯片可以达到EAL6+安全等级,在设计之初就可以防御例如注入攻击、防错误注入攻击、旁路攻击以及逆向攻击等很多攻击,所以第二终端将指纹密钥存储在eSE上面可以有效地提高密码存储的安全级别。相应地,第二终端选择将第一指纹模板存储至eSE中,也可以提高数据存储的安全级别。
需要说明的是,在本申请的实施例中,第二终端在从eSE中读取第一指纹模板和指纹秘钥时,可以从eSE中的第二存储区域中读取第二指纹模板,同时从eSE中的第一存储区域中读取第三指纹模板。具体地,第二存储区域和第一存储区域为eSE中的不同存储区域。也就是说,在本申请中,第一指纹模板和指纹秘钥虽然都存储在eSE中,然二者可以存储在eSE中的不同区域中。
进一步地,在本申请的实施例中,第二终端将指纹秘钥和第一指纹模板分别存储在eSE中的第二存储区域和第一存储区域中,可以实现对指纹数据和秘钥的分隔存储,即将指纹秘钥和第一指纹模板分别存储在eSE中的不同位置中,从而可以最大程度的提高数据存储的安全级别。
在本申请的实施例中,进一步地,第二终端在接收校验指令之后,还可以从TEE中的预设安全分区中读取第二指纹模板,同时从预设用户分区中读取第三指纹模板。其中,第一指纹模板、第二指纹模板以及第三指纹模板可以共同构成用于进行指纹校验的指纹模板。
需要说明的是,在本申请的实施例中,第一指纹模板可以表征较为重要的目标指纹数据,因此,第二终端可以对该目标指纹数据进行加密获得第一指纹模板,相比之下,第二指纹模板和第三指纹模板可以表征目标指纹数据以外的剩余指纹数据,因此第二终端可以不对该剩余指纹数据进行加密而直接存储。
进一步地,在本申请的实施例中,本申请将校验指纹数据所对应的第一指纹模板、第二指纹模板以及第三指纹模板进行分散处理,即对于不同的指纹模板,对应的处理方式和存储区域均不相同,从而大大提高了指纹数据的安全性。
步骤202、利用指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据。
在本申请的实施例中,第二终端在从eSE中读取第一指纹模板和指纹秘钥之后,便可以可用指纹秘钥对第一指纹模板进行解密处理,从而可以获得第一指纹模板对应的目标指纹数据。
进一步地,在本申请的实施例中,由于目标指纹数据是校验指纹数据中的部分数据,因此,第二终端利用eSE中存储的指纹秘钥对第一指纹模板进行解密,即为对校验指纹数据中的部分数据进行解密。
由此可见,在本申请中,由于第二终端可以不对全部的校验指纹数据进行加密,而是优选较为重要的目标指纹数据进行加密,相应地,第二终端也可以不对全部的校验指纹数据进行解密,而是对比较重要的第一指纹模板进行解密。
需要说明的是,在本申请的实施例中,由于第一指纹模板仅仅为校验指纹数据对应的部分指纹模板,因此,第二终端利用指纹秘钥对第一指纹模板进行解密所获得的目标指纹数据,也为校验指纹数据中的部分数据。
进一步地,在本申请的实施例中,第二终端在获取第一指纹模板对应的目标指纹数据的同时,还可以根据第二指纹模板和第三指纹模板,生成剩余指纹数据。其中,剩余指纹数据为校验指纹数据中的、目标指纹数据以外的指纹数据。
需要说明的是,在本申请的实施例中,由于剩余指纹数据不为校验指纹数据中的重要数据,因此,第二终端可以不对剩余指纹数据进行加密处理,相应地,第二终端不需要对第二指纹模板和第三指纹模板进行解密处理便可以直接获得剩余指纹数据。
步骤203、根据目标指纹数据获得校验指纹数据。
在本申请的实施例中,第二终端在利用指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据之后,便可以根据目标指纹数据获得校验指纹数据。
需要说明的是,在本申请的实施例中,由于目标指纹数据也为校验指纹数据中的部分数据,因此,第二终端在利用目标指纹数据获得校验指纹数据时,需要结合第二指纹模板和第三指纹模板对应的剩余指纹数据。
进一步地,在本申请的实施例中,第二终端可以对第一指纹模板对应的目标指纹数据、第二指纹模板和第三指纹模板对应的剩余指纹数据进行组合处理,从而可以生成校验指纹数据。图6为校验指纹数据的生成示意图,如图6所示,第二终端在组合目标指纹数据和剩余指纹数据之后,便可以获得校验指纹数据,也就是说,目标指纹数据和剩余指纹数据共同组成校验指纹数据。
步骤204、响应校验指令,利用校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。
在本申请的实施例中,第二终端在利用目标指纹数据和剩余指纹数据生成校验指纹数据之后,便可以响应校验指令,通过利用校验指纹数据对实时指纹数据进行校验处理,从而获得指纹校验结果。
需要说明的是,在本申请的实施例中,第二终端在接收校验指令之后,可以在TEE中采集实时指纹数据。具体地,第二终端在TEE中进行实时指纹数据的采集时,可以通过指纹应用对应的指纹传感器进行数据采集,然后可以通过TA底层接口与指纹应用进行对接,从而将实时指纹数据进行传输,获得实时指纹数据。其中,实时指纹数据即为需要被校验的指纹数据。
进一步地,在本申请的实施例中,第二终端在采集获得实时指纹数据,且解密获得校验指纹数据之后,便可以将实时指纹数据和校验指纹数据进行比较,获得比较结果,从而可以根据比较结果确定出对应的指纹校验结果。
需要说明的是,在本申请的实施例中,第二终端在基于实时指纹数据和校验指纹数据的比较结果进行指纹校验结果的确定时,可以利用预先存储的预设相似阈值获取指纹校验结果,具体地,如果比较结果大于或者等于预设相似度阈值,则可以确定指纹校验结果为通过验证;如果比较结果小于预设相似度阈值,则可以确定指纹校验结果为不通过验证。
可以理解的是,在本申请中,第二终端仅将第一指纹模板存储至eSE中,即仅将检验指纹数据中的部分数据存储至eSE中,并没有将校验指纹数据中的全部数据存储至eSE中,这是由于考虑到了SPI传输效率和eSE处理数据效率,保存在eSE的数据不能太大,例如,本申请中优选将128字节的关键数据存储至eSE中,因此,在本申请中,第二终端仅将较为重要的第一指纹模板存储中,同时,第二终端还可以将指纹加密算法、指纹数据结构信息、指纹关键信息索引存储在eSE中,而把其它的数据,即剩余指纹数据对应的第二模板和第三模板存储在其它区域。相应地,当需要进行指纹数据的校验时,再利用第一指纹模板、第二指纹模板以及第三指纹模板,将校验指纹数据进行恢复。其中,指纹模板可以理解为一个大的结构体,里面包括有可以用于表征用户指纹特征的很多特征点,所以保存部分目标指纹数据到eSE中,即使存储在其它区域的剩余指纹数据被破解,也能够保证校验指纹数据不被轻易恢复。
本申请实施例提供了一种指纹数据的校验方法,第二终端在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;利用指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据;根据目标指纹数据获得校验指纹数据;响应校验指令,利用校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。也就是说,在本申请中,第二终端在进行指纹数据的校验时,可以利用eSE中存储的指纹秘钥和第一指纹模板,获得目标指纹数据,并进一步获得用于进行校验处理的校验指纹数据。由此可见,终端可以利用高安全级别的eSE对加解密的指纹秘钥和加密后的第一指纹模板进行存储,在需要指纹校验时,终端可以通过读取eSE中的指纹秘钥和第一指纹模板来恢复校验指纹数据;进一步地,终端对第一指纹模板、剩余指纹数据所对应的第二指纹模板和第三指纹模板进行分散处理和存储,从而有效地加强了对指纹数据的保护,大大提升了终端的安全性。
基于上述实施例,在本申请的再一实施例中,第二终端从eSE中读取第一指纹模板,具体为将eSE中存储的第一指纹模板读取至随机存取存储器(Random Access Memory,RAM)中。其中,RAM是可以随时读写(刷新时除外),而且速度很快,通常作为操作***或其他正在运行中的程序的临时数据存储介质。RAM工作时可以随时从任何一个指定的地址写入(存入)或读出(取出)信息,因此,RAM在计算机和数字***中用来暂时存储程序、数据和中间结果。
进一步地,在本申请的实施例中,第二终端在响应校验指令,利用校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果之后,便可以直接将RAM中的第一指纹模板进行删除,同时可以删除目标指纹数据和校验指纹数据,从而进一步提高数据的安全性。
需要说明的是,在本申请的实施例中,第二终端在接收验证指令之后,可以先将第一指纹模板从eSE中提取出来,并读取到RAM中以密文的形式存在,然后可以利用读取到的eSE中的指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据,并基于目标指纹数据生成校验指纹数据。
进一步地,在本申请的实施了中,第二终端在根据指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据之后,便可以删除RAM中的第一指纹模板,即第二终端可以在验证时动态解密第一指纹模板,用后即时销毁。相应地,第二终端在基于目标指纹数据生成校验指纹数据之后,便可以对目标指纹数据进行删除。最后,第二终端在利用校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果之后,便可以删除校验指纹数据。也就是说,在本申请中,用于进行指纹校验的明文数据并不会长期存储在内存中,从而可以减小攻击面,提高安全性。
图7为校验指纹数据的示意图,如图7所示,第二终端在接收校验指令之后,从eSE中读取第一指纹模板M1和指纹秘钥K;利用指纹秘钥K对第一指纹模板M1进行解密处理,获得目标指纹数据a1;同时,可以读取第二指纹模板M2和第三指纹模板M3,并获得二指纹模板M2和第三指纹模板M3对应的剩余指纹数据a2,最后便可以通过目标指纹数据a1和剩余指纹数据a2的组合,获得校验指纹数据A0,以利用校验指纹数据A0对实时指纹数据B进行校验处理。
在本申请的实施例中,进一步地,指纹数据的存储方法可以应用于指纹录入本地存储的过程中,指纹数据的校验方法可以应用于终端开机后用户进行身份验证的过程中。
需要说明的是,在本申请的实施例中,在接收校验指令之前,终端在开启之后,可以先获取初始化状态,其中,初始化状态可以用于表征指纹数据的校验功能对应的实时状态;如果终端根据初始化状态确定指纹数据的校验功能已经开启,那么终端便可以开始进行校验处理。
进一步地,在本申请的实施例中,终端开机后,主要是先检查指纹数据的校验功能是否已经初始化,具体地,终端可以根据cplc是否匹配来进行指纹数据的校验功能的检查,其中,cplc可以理解为是eSE的一个标识码。
如果终端获得的初始化状态为未初始化,那终端可以先开始基于实现硬件绑定和初始化状态存储,也就是说,终端在开机之时,要根据硬件绑定状态来决定是否进行校验处理,即确定是否从eSE中读取第一指纹模板和加解密的指纹秘钥。也就是说,在本申请中,只有检查硬件绑定状态之后,即终端在确定初始化状态为指纹数据的校验功能已经开启之后,才可以进行后续的指纹校验处理的相关操作,否则拒绝从eSE中读取第一指纹模板和加解密的指纹秘钥,从而可以间接提高终端的安全性。
进一步地,在本申请的实施例中,为了进一步保证指纹数据的安全性,终端可以实现一机一密,也就是每个终端都有一个不同的加解密的指纹秘钥,具体地,终端可以利用分散因子和密钥分散算法来实现,因为每个终端的中央处理器(central processing unit,CPU)的身份标识号(Identity document,ID)和eSE芯片的标识CPLC都不一样,将它们作为分散因子,再利用密钥生成分散算法,就可以实现一机一密,从而提高终端的安全性。
综上所述,本申请利用eSE具有很高级别的硬件存储功能,通过终端配置的eSE来实现用户指纹模板关键数据部分存储和指纹加解密数据的指纹秘钥的存储,同时对指纹数据进行分散处理和存储,可解决现有方案所存在的安全性低的问题。
本申请实施例提供了一种指纹数据的校验方法,第二终端在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;利用指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据;根据目标指纹数据获得校验指纹数据;响应校验指令,利用校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。也就是说,在本申请中,第二终端在进行指纹数据的校验时,可以利用eSE中存储的指纹秘钥和第一指纹模板,获得目标指纹数据,并进一步获得用于进行校验处理的校验指纹数据。由此可见,终端可以利用高安全级别的eSE对加解密的指纹秘钥和加密后的第一指纹模板进行存储,在需要指纹校验时,终端可以通过读取eSE中的指纹秘钥和第一指纹模板来恢复校验指纹数据;进一步地,终端对第一指纹模板、剩余指纹数据所对应的第二指纹模板和第三指纹模板进行分散处理和存储,从而有效地加强了对指纹数据的保护,大大提升了终端的安全性。
基于上述实施例,在本申请的另一实施例中,图8为第一终端的组成结构示意图一,如图8所示,本申请实施例提出的第一终端1可以包括提取单元11,第一读取单元12,加密单元13以及存储单元14。
所述提取单元11,用于响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从所述初始指纹数据中提取目标指纹数据;其中,所述预设提取策略用于对所述初始指纹数据中的关键信息进行提取;
所述加密单元13,用于通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板;
所述存储单元14,用于将所述第一指纹模板单元存储至eSE中的第一存储区域。
进一步地,在本申请的实施例中,所述存储单元14,还用于所述按照预设提取策略从所述初始指纹数据中提取目标指纹数据之后,对剩余指纹数据进行存储处理;其中,所述剩余指纹数据为所述初始指纹数据中的、所述目标指纹数据以外的指纹数据。
进一步地,在本申请的实施例中,所述存储单元14,具体用于对所述剩余指纹数据进行划分处理,获得所述初始指纹数据对应的第二指纹模板和第三指纹模板;以及将所述第二指纹模板存储至所述TEE中的预设安全分区;将所述第三指纹模板存储至预设用户分区。
进一步地,在本申请的实施例中,所述第一读取单元12,用于在通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板之前,从eSE中的第二存储区域中读取指纹秘钥;其中,所述第二存储区域为所述eSE中的、与所述第一存储区域不同的存储区域。
在本申请的实施例中,进一步地,图9为第一终端的组成结构示意图二,如图9所示,本申请实施例提出的第一终端1还可以包括第一处理器15、存储有第一处理器15可执行指令的第一存储器16,进一步地,第一终端1还可以包括第一通信接口17,和用于连接第一处理器15、第一存储器16以及第一通信接口17的第一总线18。
在本申请的实施例中,第一总线18用于连接第一通信接口17、第一处理器15以及第一存储器16以及这些器件之间的相互通信。
在本申请的实施例中,第一存储器16,用于存储指令和数据。
进一步地,在本申请的实施例中,上述处理器17,用于响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从所述初始指纹数据中提取目标指纹数据;其中,所述预设提取策略用于对所述初始指纹数据中的关键信息进行提取;通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板;将所述第一指纹模板单元存储至eSE中的第一存储区域。
本申请实施例提出的一种第一终端,该第一终端响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从初始指纹数据中提取目标指纹数据;其中,预设提取策略用于对初始指纹数据中的关键信息进行提取;通过指纹秘钥对目标指纹数据进行加密处理,获得初始指纹数据对应的第一指纹模板;将第一指纹模板存储至eSE中的第一存储区域。也就是说,在本申请中,第一终端在进行指纹数据的存储时,可以利用eSE中存储的指纹秘钥对初始指纹数据中目标指纹数据进行加密,并将加密后获得的第一指纹模板存储至eSE中。由此可见,终端可以利用高安全级别的eSE对加解密的指纹秘钥和加密后的第一指纹模板进行存储,在需要指纹校验时,终端可以通过读取eSE中的指纹秘钥和第一指纹模板来恢复校验指纹数据;进一步地,终端对第一指纹模板、剩余指纹数据所对应的第二指纹模板和第三指纹模板进行分散处理和存储,从而有效地加强了对指纹数据的保护,大大提升了终端的安全性。
基于上述实施例,在本申请的另一实施例中,图10为第二终端的组成结构示意图一,如图10所示,本申请实施例提出的第二终端2可以包括第二读取单元21,解密单元22、获取单元23、校验单元24、生成单元25、采集单元26以及删除单元27。
所述第二读取单元21,用于在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;
所述解密单元22,用于利用所述指纹秘钥对所述第一指纹模板进行解密处理,获得目标指纹数据;
所述获取单元23,用于根据所述目标指纹数据获得校验指纹数据;
所述校验单元24,用于响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。
进一步地,在本申请的实施例中,所述第二读取单元21,具体用于从所述eSE中的第二存储区域中读取所述指纹秘钥;以及从所述eSE中的第一存储区域中读取所述第一指纹模板;其中,所述第二存储区域和所述第一存储区域为所述eSE中的不同存储区域。
进一步地,在本申请的实施例中,所述第二读取单元21,还用于在接收校验指令之后,从TEE中的预设安全分中读取第二指纹模板;以及从预设用户分区中读取第三指纹模板;其中,所述第一指纹模板、所述第二指纹模板以及所述第三指纹模板构成进行校验的指纹模板。
进一步地,在本申请的实施例中,所述生成单元25,用于根据所述目标指纹数据获得校验指纹数据之前,根据所述第二指纹模板和所述第三指纹模板,生成剩余指纹数据。
进一步地,在本申请的实施例中,所述获取单元23,具体用于对所述目标指纹数据和所述剩余指纹数据进行组合处理,生成所述校验指纹数据。
进一步地,在本申请的实施例中,所述采集单元26,用于在接收校验指令之后,在所述TEE中采集实时指纹数据。
进一步地,在本申请的实施例中,所述第二读取单元21,具体用于将所述eSE中存储的所述第一指纹模板,读取至RAM中。
进一步地,在本申请的实施例中,所述删除单元27,用于所响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果之后,删除所述RAM中的所述第一指纹模板;以及删除所述目标指纹数据。所述校验指纹数据。
进一步地,在本申请的实施例中,所述获取单元23,用于接收所述校验指令之前,在开启之后,获取初始化状态;其中,所述初始化状态表征指纹数据的校验功能对应的实时状态;
所述校验单元24,用于若根据所述初始化状态确定指纹数据的校验功能已经开启,则开始进行校验处理。
在本申请的实施例中,进一步地,图11为第二终端的组成结构示意图二,如图11所示,本申请实施例提出的第二终端2还可以包括第二处理器28、存储有第二处理器28可执行指令的第二存储器29,进一步地,第二终端2还可以包括第二通信接口210,和用于连接第二处理器28、第二存储器29以及第二通信接口210的第二总线211。
在本申请的实施例中,第二总线211用于连接第二通信接口210、第二处理器28以及第二存储器29以及这些器件之间的相互通信。
在本申请的实施例中,第二存储器29,用于存储指令和数据。
进一步地,在本申请的实施例中,上述处理器17,用于在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;利用所述指纹秘钥对所述第一指纹模板进行解密处理,获得目标指纹数据;根据所述目标指纹数据获得校验指纹数据;响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。
本申请实施例提出的一种第二终端,该第二终端在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;利用指纹秘钥对第一指纹模板进行解密处理,获得目标指纹数据;根据目标指纹数据获得校验指纹数据;响应校验指令,利用校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。也就是说,在本申请中,第二终端在进行指纹数据的校验时,可以利用eSE中存储的指纹秘钥和第一指纹模板,获得目标指纹数据,并进一步获得用于进行校验处理的校验指纹数据。由此可见,终端可以利用高安全级别的eSE对加解密的指纹秘钥和加密后的第一指纹模板进行存储,在需要指纹校验时,终端可以通过读取eSE中的指纹秘钥和第一指纹模板来恢复校验指纹数据;进一步地,终端对第一指纹模板、剩余指纹数据所对应的第二指纹模板和第三指纹模板进行分散处理和存储,从而有效地加强了对指纹数据的保护,大大提升了终端的安全性。
本申请实施例提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如上所述的指纹数据的存储和校验方法。
具体来讲,本实施例中的一种指纹数据的存储和校验方法对应的程序指令可以被存储在光盘,硬盘,U盘等存储介质上,当存储介质中的与一种指纹数据的存储方法对应的程序指令被一电子设备读取或被执行时,包括如下步骤:
响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从所述初始指纹数据中提取目标指纹数据;其中,所述预设提取策略用于对所述初始指纹数据中的关键信息进行提取;
通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板;
将所述第一指纹模板单元存储至eSE中的第一存储区域。
当存储介质中的与一种指纹数据的校验方法对应的程序指令被一电子设备读取或被执行时,包括如下步骤:
在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;
利用所述指纹秘钥对所述第一指纹模板进行解密处理,获得目标指纹数据;
根据所述目标指纹数据获得校验指纹数据;
响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的实现流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及实现流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。

Claims (18)

1.一种指纹数据的存储方法,其特征在于,所述方法包括:
响应指纹注册指令,在可信执行环境TEE中采集初始指纹数据之后,按照预设提取策略从所述初始指纹数据中提取目标指纹数据;其中,所述预设提取策略用于对所述初始指纹数据中的关键信息进行提取;
通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板;
将所述第一指纹模板单元存储至嵌入式安全eSE中的第一存储区域。
2.根据权利要求1所述的方法,其特征在于,所述按照预设提取策略从所述初始指纹数据中提取目标指纹数据之后,所述方法还包括:
对剩余指纹数据进行存储处理;其中,所述剩余指纹数据为所述初始指纹数据中的、所述目标指纹数据以外的指纹数据。
3.根据权利要求2所述的方法,其特征在于,所述对剩余指纹数据进行存储处理,包括:
对所述剩余指纹数据进行划分处理,获得所述初始指纹数据对应的第二指纹模板和第三指纹模板;
将所述第二指纹模板存储至所述TEE中的预设安全分区;将所述第三指纹模板存储至预设用户分区。
4.根据权利要求1所述的方法,其特征在于,所述通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板之前,所述方法还包括:
从所述eSE中的第二存储区域中读取指纹秘钥;其中,所述第二存储区域为所述eSE中的、与所述第一存储区域不同的存储区域。
5.一种指纹数据的校验方法,其特征在于,所述方法包括:
在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;
利用所述指纹秘钥对所述第一指纹模板进行解密处理,获得目标指纹数据;
根据所述目标指纹数据获得校验指纹数据;
响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。
6.根据权利要求5所述的方法,其特征在于,所述从eSE中读取第一指纹模板和指纹秘钥,包括:
从所述eSE中的第一存储区域中读取所述第一指纹模板;
从所述eSE中的第二存储区域中读取所述指纹秘钥;其中,所述第一存储区域和所述第二存储区域为所述eSE中的不同存储区域。
7.根据权利要求5所述的方法,其特征在于,所述在接收校验指令之后,所述方法还包括:
从TEE中的预设安全分中读取第二指纹模板;
从预设用户分区中读取第三指纹模板;
其中,所述第一指纹模板、所述第二指纹模板以及所述第三指纹模板构成进行校验的指纹模板。
8.根据权利要求7所述的方法,其特征在于,所述根据所述目标指纹数据获得校验指纹数据之前,所述方法还包括:
根据所述第二指纹模板和所述第三指纹模板,生成剩余指纹数据。
9.根据权利要求8所述的方法,其特征在于,所述根据所述目标指纹数据获得校验指纹数据,包括:
对所述目标指纹数据和所述剩余指纹数据进行组合处理,生成所述校验指纹数据。
10.根据权利要求7所述的方法,其特征在于,所述在接收校验指令之后,所述方法还包括:
在所述TEE中采集实时指纹数据。
11.根据权利要求5所述的方法,其特征在于,所述从eSE中读取第一指纹模板,包括:
将所述eSE中存储的所述第一指纹模板,读取至随机存取存储器RAM中。
12.根据权利要求11所述的方法,其特征在于,所响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果之后,所述方法还包括:
删除所述RAM中的所述第一指纹模板;
删除所述目标指纹数据和所述校验指纹数据。
13.根据权利要求5所述的方法,其特征在于,接收所述校验指令之前,所述方法还包括:
在开启之后,获取初始化状态;其中,所述初始化状态表征指纹数据的校验功能对应的实时状态;
若根据所述初始化状态确定指纹数据的校验功能已经开启,则开始进行校验处理。
14.一种第一终端,其特征在于,所述第一终端包括:提取单元,加密单元以及存储单元,
所述提取单元,用于响应指纹注册指令,在TEE中采集初始指纹数据之后,按照预设提取策略从所述初始指纹数据中提取目标指纹数据;其中,所述预设提取策略用于对所述初始指纹数据中的关键信息进行提取;
所述加密单元,用于通过指纹秘钥对所述目标指纹数据进行加密处理,获得所述初始指纹数据对应的第一指纹模板;
所述存储单元,用于将所述第一指纹模板单元存储至eSE中的第一存储区域。
15.一种第二终端,其特征在于,所述第二终端包括:读取单元,解密单元、获取单元以及校验单元,
所述读取单元,用于在接收校验指令之后,从eSE中读取第一指纹模板和指纹秘钥;
所述解密单元,用于利用所述指纹秘钥对所述第一指纹模板进行解密处理,获得目标指纹数据;
所述获取单元,用于根据所述目标指纹数据获得校验指纹数据;
所述校验单元,用于响应所述校验指令,利用所述校验指纹数据对实时指纹数据进行校验处理,获得指纹校验结果。
16.一种第一终端,其特征在于,所述第一终端包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被所述第一处理器执行时,实现如权利要求1-4任一项所述的方法。
17.一种第二终端,其特征在于,所述第二终端包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被所述第二处理器执行时,实现如权利要求5-13任一项所述的方法。
18.一种计算机可读存储介质,其上存储有程序,应用于第一终端和第二终端中,其特征在于,所述程序被处理器执行时,实现如权利要求1-12任一项所述的方法。
CN201910950903.9A 2019-10-08 2019-10-08 指纹数据的存储和校验方法、终端及存储介质 Pending CN110781472A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910950903.9A CN110781472A (zh) 2019-10-08 2019-10-08 指纹数据的存储和校验方法、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910950903.9A CN110781472A (zh) 2019-10-08 2019-10-08 指纹数据的存储和校验方法、终端及存储介质

Publications (1)

Publication Number Publication Date
CN110781472A true CN110781472A (zh) 2020-02-11

Family

ID=69384893

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910950903.9A Pending CN110781472A (zh) 2019-10-08 2019-10-08 指纹数据的存储和校验方法、终端及存储介质

Country Status (1)

Country Link
CN (1) CN110781472A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE543565C2 (en) * 2019-11-06 2021-03-30 Precise Biometrics Ab A method and system for fingerprint verification and enrollment with secure storage of templates

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105208005A (zh) * 2015-08-25 2015-12-30 宇龙计算机通信科技(深圳)有限公司 一种指纹认证方法、连接设备和终端设备
CN106909820A (zh) * 2017-01-20 2017-06-30 奇酷互联网络科技(深圳)有限公司 移动终端及其指纹数据处理方法和装置
CN107122647A (zh) * 2017-04-27 2017-09-01 奇酷互联网络科技(深圳)有限公司 指纹数据处理方法、装置及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105208005A (zh) * 2015-08-25 2015-12-30 宇龙计算机通信科技(深圳)有限公司 一种指纹认证方法、连接设备和终端设备
CN106909820A (zh) * 2017-01-20 2017-06-30 奇酷互联网络科技(深圳)有限公司 移动终端及其指纹数据处理方法和装置
CN107122647A (zh) * 2017-04-27 2017-09-01 奇酷互联网络科技(深圳)有限公司 指纹数据处理方法、装置及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE543565C2 (en) * 2019-11-06 2021-03-30 Precise Biometrics Ab A method and system for fingerprint verification and enrollment with secure storage of templates

Similar Documents

Publication Publication Date Title
CN103886234B (zh) 一种基于加密硬盘的安全计算机及其数据安全控制方法
CN101470783B (zh) 一种基于可信平台模块的身份识别方法及装置
JP6275653B2 (ja) データ保護方法及びシステム
US8321956B2 (en) Remote access control of storage devices
EP3355231B1 (en) Mobile data storage device with access control functionality
CN103279411A (zh) 基于指纹识别进入应用程序的方法及***
JP2017510909A (ja) 指紋認証方法、装置、インテリジェント端末及びコンピュータ記憶媒体
EP2628133B1 (en) Authenticate a fingerprint image
CN101345619A (zh) 基于生物特征和移动密钥的电子数据保护方法及装置
EP2361416A1 (en) Secure storage device
EP2585960A1 (en) Storage device, host device, and method for communicating a password between first and second storage devices using a double-encryption scheme
US20150071442A1 (en) Data-encrypting method and decrypting method for a mobile phone
US20170201528A1 (en) Method for providing trusted service based on secure area and apparatus using the same
CN109977039A (zh) 硬盘加密密钥存储方法、装置、设备及可读存储介质
JP7105495B2 (ja) セグメント化されたキー認証システム
CN111401901A (zh) 生物支付设备的认证方法、装置、计算机设备和存储介质
CN111191252A (zh) 一种智能卡操作***加解密方法、装置及存储介质
CN108418677B (zh) 密钥备份、恢复方法及装置
CN106529271A (zh) 一种终端及其绑定校验方法
JP4993114B2 (ja) 携帯型ストレージデバイスの共有管理方法、および、携帯型ストレージデバイス
CN110659522B (zh) 存储介质安全认证方法、装置、计算机设备和存储介质
CN110781472A (zh) 指纹数据的存储和校验方法、终端及存储介质
CN101883357A (zh) 一种终端与智能卡之间的相互认证方法、装置及***
KR101156102B1 (ko) 보안기능이 구비된 메모리 카드 리더기 및 이를 이용한 데이터 암호화 방법
CN110851881B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200211

RJ01 Rejection of invention patent application after publication