一种生物特征信息处理方法、保存方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种生物特征信息处理方法、保存方法及装置。
背景技术
目前,为了避免误操作和保护隐私,人们日常生活中所使用的大多数用户终端,比如手机、平板电脑或笔记本电脑等,一般都具备锁定功能。具体而言,用户终端若在设定的一段时间长度内既没有运行任何应用,也没有接收到任何指令,则用户终端会执行对自身的锁定操作;又或者,用户终端在用户输入的锁屏指示指令的触发下,也会执行对自身的锁定操作。
针对被执行了锁定操作而处于锁定状态的用户终端而言,若需要解除其锁定状态,则用户终端需收到触发用户终端解除锁定状态的信息。
一种典型的触发用户终端解锁的方法是利用生物特征(比如指纹特征或人脸特征等)信息进行解锁,即处于锁定状态的用户终端获得用户的生物特征信息,并判断获得的生物特征信息与预先存储的用于验证用户是否具备解锁权限的生物特征信息是否匹配一致。在判断结果为两者匹配一致时,用户终端执行解锁操作,反之,则用户终端不执行解锁操作。
该方法由于只允许具备解锁权限的用户对用户终端进行解锁,从而可以帮助用户保护其用户终端上的敏感信息及应用不被他人随便获知。该方法的一个实现前提是需要在用户终端中保存用于验证用户是否具备解锁权限的生物特征信息,如何保证保存在用户终端中的生物特征信息的安全性,成为亟待解决的问题。
发明内容
本申请实施例提供一种生物特征信息处理方法,用以提高保存的生物特征信息的安全性。
本申请实施例还提供一种生物特征信息处理装置,用以提高保存的生物特征信息的安全性。
本申请实施例还提供一种生物特征信息保存方法及装置。
本申请实施例采用下述技术方案:
第一方面,一种生物特征信息处理方法,包括:获得第一生物特征信息;根据特定信息和加密方法,对第一生物特征信息进行加密处理,得到待识别的生物特征信息;确定待识别的生物特征信息与保存的注册的生物特征信息之间的相似度;其中,所述注册的生物特征信息是根据所述特定信息和所述加密方法对第二生物特征信息进行加密处理后得到的;当所述相似度满足特定操作执行条件时,执行所述特定操作。
第二方面,一种生物特征信息的保存方法,包括:获得生物特征信息;根据特定信息和加密方法,对获得的生物特征信息进行加密处理,得到加密处理后的生物特征信息;保存所述加密处理后的生物特征信息。
第三方面,一种生物特征信息的处理装置,包括:获得单元,用于获得第一生物特征信息;加密单元,用于根据特定信息和加密方法,对获得单元获得的第一生物特征信息进行加密处理,得到待识别的生物特征信息;相似度确定单元,用于确定保存的注册的生物特征信息和加密单元得到的待识别的生物特征信息之间的相似度;其中,所述注册的生物特征信息是根据所述特定信息和所述加密方法对第二生物特征信息进行加密处理后得到的;特定操作执行单元,用于当相似度确定单元确定出的所述相似度满足特定操作执行条件时,执行所述特定操作。
第四方面,一种生物特征信息的保存装置,包括:获得单元,用于获得生物特征信息;加密单元,用于根据特定信息和加密方法,对获得单元获得的生物特征信息进行加密处理,得到加密处理后的生物特征信息;保存单元,用于保存加密单元得到的所述加密处理后的生物特征信息。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
本申请实施例由于对生物特征信息进行了加密处理后才将其进行存储,而不是直接对获得的原始生物特征信息进行存储,从而增大了存储在用户终端中的生物特征信息的破译难度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为用于实施本申请实施例1提供的一种生物特征信息处理方法的一种用户终端的结构示意图;
图2为用于实施本申请实施例1提供的一种生物特征信息处理方法的另一种用户终端的结构示意图;
图3为本申请实施例1提供的一种生物特征信息处理方法的具体流程示意图;
图4为本申请实施例2提供的一种生物特征信息处理方法的具体流程示意图;
图5为本申请实施例3提供的一种生物特征信息保存方法的具体流程示意图;
图6为掌纹细节特征信息在二维空间中的坐标相对于二维空间中的指定坐标点的偏转角度的示意图;
图7为本申请实施例4提供的一种多维生物特征向量集合的处理方法的具体流程示意图;
图8为本申请实施例5提供的一种多维生物特征向量集合的处理方法的具体流程示意图;
图9为本申请实施例6提供的一种生物特征信息处理装置的具体结构示意图;
图10为本申请实施例7提供的一种生物特征信息保存装置的具体结构示意图;
图11为本申请实施例8提供的一种生物特征信息处理装置的具体结构示意图;
图12为本申请实施例9提供的一种生物特征信息保存装置的具体结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
实施例1提供首先一种生物特征信息处理方法,该方法可应用于如图1所示的用户终端。如图1所示,该用户终端主要包括的功能实体包括:处理器11和存储器12,此外,该用户终端还可以包括一个生物特征信息采集器13。其中,处理器11和存储器12之间有通信连接,处理器11和生物特征信息采集器13之间有通信连接,生物特征信息采集器13和存储器12之间可以有也可以没有通信连接。或者,该生物特征信息采集器13也可以不包含于该用户终端内,而是采用无线通信或有线通信的方式与该用户终端之间通信连接(如图2所示)。在图2中,处理器11和存储器12之间有通信连接,处理器11和生物特征信息采集器13之间有通信连接,生物特征信息采集器13和存储器12之间可以有也可以没有通信连接。在图1或图2中,存储器12也可以不包含于用户终端内,而是采用无线通信或有线通信的方式与用户终端之间通信连接。
实施例1中,上述生物特征信息采集器13可以为指纹特征信息采集器(比如USB指纹采集器)、掌纹特征信息采集器、人脸特征信息采集器(比如摄像头)、步态特征信息采集器(比如摄像头)等等。
基于图1或图2所示的用户终端,实施例1提供的生物特征信息处理方法的具体实现流程如图3所示,包括下述步骤:
步骤31,生物特征信息采集器13采集第一生物特征信息。
步骤32,处理器11根据特定信息和加密方法,对生物特征信息采集器13采集到的第一生物特征信息进行加密处理,得到待识别的生物特征信息。
实施例1中所述的特定信息可以但不限于包括随机字符串、终端唯一标识和用户密钥三者中的至少一个。其中,随机字符串可以是由网络侧的服务器随机生成并提供给用户终端的,也可以是由处理器11随机生成的;终端唯一标识为用于唯一表示用户终端的信息,比如可以是用户终端的中央处理单元(Center Processing Unit,CPU)的型号、介质访问控制(Medium/Media Access Control,MAC)地址、操作系统的标识和/或操作系统的版本信息等,以手机这一用户终端为例,手机的唯一标识还可以是手机的国际移动设备识别码(International Mobile Equipment Identification Number,IMEI)或国际移动用户识别码(International Mobile Subscriber Identification Number,IMSI)等;用户密钥可以是用户终端通过其信息获取装置(如键盘、触摸屏或鼠标)是接收到的、由用户输入的一个字符串。
实施例1中,生物特征信息采集器13可以主动将采集到的第一生物特征信息发送给处理器11,或者,处理器11也可以主动从生物特征信息采集器13中读取该第一生物特征信息。
步骤33,处理器11确定待识别的生物特征信息与存储器12保存的注册的生物特征信息之间的相似度。
其中,所述注册的生物特征信息是处理器11根据前述特定信息和前述加密方法对第二生物特征信息进行加密处理后得到的。后文将在实施例2和实施例4中重点说明如何根据特定信息和加密方法对生物特征信息进行加密,实施例1中对此不再赘述。
步骤34,当处理器11判断出通过执行步骤33而确定的相似度满足特定操作执行条件时,执行该特定操作。
其中,这里所说的特定操作可以但不限于为对终端进行解锁的操作、接听呼叫、发起呼叫、多媒体文件播放、关机或进入休眠状态等等。
采用本申请实施例1提供的上述方法,由于对生物特征信息进行了加密处理后才将其存储到用户终端,而不是直接将从获得的原始生物特征信息存储到用户终端,从而增大了存储在用户终端中的生物特征信息的破译难度。采用该方法,即便用户终端被破解,破解者也由于无法获知对生物特征信息的具体加密处理方式,而无法根据加密处理后的生物特征信息得到加密处理前的原始生物特征信息,从而保证了保存在用户终端中的生物特征信息的安全性。
实施例2
请参照图4,其为本申请实施例2提供的一种生物特征信息处理方法的具体流程示意图,该方法用以提高保存在用户终端中的生物特征信息的安全性,主要包括下述步骤:
步骤41,获得第一生物特征信息。
这里所说的第一生物特征信息可以是指纹特征信息、掌纹特征信息、人脸特征信息、虹膜特征信息或眼纹特征信息等。
以人脸特征信息为例,获得人脸特征信息的方式可以是:利用摄像头对人脸进行拍摄从而得到包含人脸特征信息的图像,然后再采用人脸特征信息的识别和提取算法,从该图像中采集人脸特征信息。
步骤42,根据特定信息和加密方法,对第一生物特征信息进行加密处理,得到待识别的生物特征信息。
实施例2中,上述特定信息可以是随机字符串、终端唯一标识和用户密钥三者中的至少一个。
其中,随机字符串可以是由生成该随机字符串的设备发送来的,也可以是由步骤42的执行主体随机生成的。
终端唯一标识一般是指执行实施例2提供的该方法的终端的唯一标识。以手机这一用户终端为例,手机的唯一标识可以但不限于是手机的IMEI、IMSI、CPU的型号、MAC地址、操作系统的标识和/或操作系统的版本信息等。
用户密钥可以是接收到的、由用户输入的一个字符串。
步骤43,确定待识别的生物特征信息与保存的注册的生物特征信息之间的相似度,并判断该相似度是否满足特定操作执行条件;在判断结果为该相似度满足特定操作执行条件时,执行步骤44;在判断结果为该相似度不满足特定操作执行条件时,可以不执行任何操作,或者也可以执行不同于该特定操作的其他操作。
实施例2中,注册的生物特征信息也是根据前文所述的特定信息和加密方法得到的。但区别于待识别的生物特征信息,注册的生物特征信息是根据该特定信息和加密方法对第二生物特征信息进行加密处理后得到的。
一般地,生物特征信息可以是一个向量。从而不同的生物特征信息之间的相似度可以由它们之间的欧式距离的值来衡量。或者,还可以采用汉明距离或集合距离来衡量不同生物特征向量之间的相似度。或者,也可以采用支持向量机(Support Vector Machine,SVM)预先训练相似度评分模型,然后再通过模型打分的方式确定不同生物特征向量之间的相似度的值。
实施例2中,相似度满足特定操作执行条件可以是指相似度的值大于相似度阈值。
步骤44,执行特定操作,流程结束。
其中,这里所说的特定操作可以但不限于为对终端进行解锁的操作、接听呼叫、发起呼叫、多媒体文件播放、关机或进入休眠状态等等。
为更清楚地说明本申请实施例2的处理流程,下文对上述步骤42进行详细说明:
当第一生物特征信息为生物特征向量构成的集合时,步骤42的具体实现方式可以包括:根据特定信息和加密方法,对构成上述集合的生物特征向量包含的至少一个元素进行不可逆的加密运算,得到待识别的生物特征信息。其中,这里所说的不可逆的加密运算可以但不限于是包含取模运算的加密算法。
以下以不同的实施场景为例,说明步骤42在不同实施场景下的实现流程。
第一种实施场景:生物特征向量包含第一元素和第二元素;且第一元素用于表示生物细节特征信息在图像所在的二维空间中的横坐标,第二元素用于表示生物细节特征信息在该二维空间中的纵坐标。
在第一种实施场景中,根据特定信息和加密方法对生物特征向量包含的至少一个元素进行不可逆的加密运算可以包括:根据特定信息和加密方法,对构成第一生物特征信息的每个生物特征向量包含的第一元素和第二元素分别进行不可逆的加密运算。
具体地,当特定信息为随机字符串、终端唯一标识和用户密钥时,根据特定信息和加密方法,对构成第一生物特征信息的每个生物特征向量包含的第一元素和第二元素分别进行不可逆的加密运算可以包括如下子步骤:
子步骤一:利用加密算法1对由随机字符串、终端唯一标识和用户密钥构成的信息集合进行加密计算,得到安全信息集合1。
其中,加密算法1可以采用密码散列函数的加密算法,比如可以是安全散列算法(Secure Hash Algorithm,SHA)。
子步骤二:利用加密算法2再次对安全信息集合1进行加密处理,得到加密处理后的安全信息集合1。
其中,加密算法2也可以为采用密码散列函数的加密算法,比如可以是SHA。
子步骤三:针对第一生物特征信息所包含的每个生物特征向量分别执行操作:根据加密处理后的安全信息集合1、图像的高度值和宽度值,以及坐标转换算法,对生物特征向量中的第一元素和第二元素分别进行转换,得到转换后的第一元素和第二元素。
子步骤三中使用的坐标转换算法可以进一步参考后文的实施例4,在此不再赘述。
在第一种实施场景中,若构成第一生物特征信息的生物特征向量还包含第三元素,且该第三元素用于表示生物细节特征信息的特征样式标识,则根据特定信息和加密方法对生物特征向量包含的至少一个元素进行不可逆的加密运算的过程中还可以进一步包括:根据特征样式总数目和特征样式标识转换算法,对构成第一生物特征信息的每个生物特征向量包含的第三元素分别进行加密运算,得到加密后的第三元素。
其中,特征样式总数目为统计出的能够被识别的生物细节特征信息的特征样式总数目,该特征样式总数目可以通过对包含生物细节特征信息的图像样本进行训练而得到。特征样式标识转换算法可以进一步参考后文的实施例4,在此不再赘述。
在第一种实施场景中,除了对第三元素进行上述加密运算外,还可以对第三元素进行其他的可逆或不可逆的加密运算。
在第一种实施场景中,若构成第一生物特征信息的生物特征向量还包含第四元素,且第四元素用于表示生物细节特征信息在图像所在二维空间中的坐标相对于该二维空间中指定参考物的偏转角度,则根据特定信息和加密方法,对生物特征向量包含的至少一个元素进行不可逆的加密运算的过程中还可以进一步:根据特定信息和加密方法,对构成第一生物特征信息的每个生物特征向量包含的第四元素分别进行加密运算,得到加密后的第四元素。
具体的,当特定信息为随机字符串、终端唯一标识和用户密钥时,对构成第一生物特征信息的每个生物特征向量包含的第四元素进行加密运算的过程可以包括如下子步骤:
子步骤一:利用加密算法3对由随机字符串、终端唯一标识和用户密钥构成的信息集合进行加密计算,得到安全信息集合2。
其中,加密算法3可以采用密码散列函数的加密算法,比如可以是SHA。
子步骤二:利用加密算法4再次对安全信息集合2进行加密处理,得到加密处理后的安全信息集合2。
其中,加密算法4也可以为采用密码散列函数的加密算法,比如可以是SHA。
子步骤三:针对第一生物特征信息所包含的每个生物特征向量分别执行操作:根据偏转角度转换算法和加密处理后的安全信息集合2,对生物特征向量中的第四元素进行转换,得到转换后的第四元素。
该子步骤三中使用的偏转角度转换算法可以进一步参考后文的实施例4,在此不再赘述。
在第一种实施场景中,若构成第一生物特征信息的生物特征向量除了包含前文所述的第一元素和第二元素外,还包含第五元素(用于表示组合的标识),且这里所说的组合为生物细节特征信息在图像所在二维空间中的坐标相对于该二维空间中指定参考物的偏转角度和生物细节特征信息的特征样式标识所构成的组合,那么,根据特定信息和加密方法,对生物特征向量包含的至少一个元素进行不可逆的加密运算的过程还可以进一步包括:
根据组合标识转换算法,以及对图像样本进行训练而确定出的组合数,对构成第一生物特征信息的每个生物特征向量包含的第三元素分别进行加密运算,得到加密后的第三元素。这里所说的组合标识转换算法可以进一步参考后文的实施例5,在此不再赘述。
需要说明的是,上述组合数为不同生物细节特征信息在二维空间中的坐标分别相对于二维空间中指定参考物的偏转角度与所述不同生物细节特征信息的特征样式标识的组合数目。上述图像可以为包含生物细节特征信息的图像。上述二维空间可以为包含生物细节特征信息的图像所在的二维空间。
在第一种实施场景中,除了可以对第五元素进行上述加密运算外,还可以对第五元素进行其他的可逆或不可逆的加密运算。
第二种实施场景:生物特征向量仅包含前文所述的第三元素。
在第二种实施场景下,根据特定信息和加密方法,对构成第一生物特征信息的生物特征向量包含的至少一个元素进行不可逆的加密运算,得到待识别的生物特征信息的具体实现方式可以包括:根据特定信息和加密方法,对构成第一生物特征信息的各生物特征向量中的第三元素分别进行不可逆的加密运算,得到加密后的第三元素。
第三种实施场景:生物特征向量包含前文所述的第三元素和第四元素。
在第三种实施场景下,根据特定信息和加密方法,对构成第一生物特征信息的生物特征向量包含的至少一个元素进行不可逆的加密运算,得到待识别的生物特征信息的具体实现方式可以包括:根据特定信息和加密方法,对构成第一生物特征信息的各生物特征向量中的第三元素和第四元素分别进行不可逆的加密运算,得到加密后的第三元素。或者,也可以只对各生物特征向量中的第三元素分别进行不可逆的加密运算,得到加密后的第三元素;或者,也可以只对各生物特征向量中的第四元素分别进行不可逆的加密运算,得到加密后的第四元素。
实施例1中对其他实施场景不再一一列举。但本领域技术人员可以明白,视特定信息内容的不同、使用的加密算法的不同,以及使用加密算法的次数不同等,步骤42还可以有其他实现方式。但只要是根据特定信息和加密方法,对构成第一生物特征信息的生物特征向量包含的至少一个元素进行不可逆的加密运算,均为步骤42所能涵盖的下位方案。
可选的,为了加强待识别的生物特征信息的安全性,待识别的生物特征信息中还可以被添加杂凑点,以实现对生物特征信息的隐藏。
以下进一步对实施例2中的步骤43进行详细说明:
若实施例2中利用杂凑点对注册的生物特征信息进行了隐藏,则前文所述的步骤43中确定待识别的生物特征信息与保存的注册的生物特征信息之间的相似度的过程可以包括下述步骤:
首先,从待识别的生物特征信息中删除满足第一特定条件的特定数目的信息;以及从注册的生物特征信息中删除满足第二特定条件的特定数目的信息。然后,确定删除了特定数目的杂凑点后的待识别的生物特征信息和删除了特定数目的杂凑点后的注册的生物特征信息之间的相似度。
其中,特定数目可以为注册的生物特征信息中添加的杂凑点的数目;第一特定条件为“与注册的生物特征信息中包含的任一信息相同”;第二特定条件为“与待识别的生物特征信息中包含的任一信息相同”。
步骤43中对注册的生物特征信息和待识别的生物特征信息中的相同信息进行删除的好处在于,可以避免由于杂凑点的存在而导致待识别的生物特征信息和注册的生物特征信息之间的相似度的值的准确性受到影响。
由对于实施例2的上述说明可知,实施例2由于对生物特征信息进行了加密处理后才将其存储到用户终端,而不是直接将从获得的原始生物特征信息存储到用户终端,从而增大了存储在用户终端中的生物特征信息的破译难度。采用本申请实施例2提供的上述方法,即便用户终端被破解,破解者也由于无法获知对生物特征信息的具体加密处理方式,而无法根据加密处理后的生物特征信息得到加密处理前的原始生物特征信息,从而保证了保存在用户终端中的生物特征信息的安全性。
需要说明的是,当实施例2中所述的特定信息包括随机字符串时,实施例2提供的该方法在步骤44执行完毕后还可以进一步包括下述步骤:
接收用于更新随机字符串的信息;
利用用于更新随机字符串的信息更新随机字符串。
该步骤的存在,可以使得后续根据更新后的随机字符串进行加密处理后的待识别的生物特征信息基本不可能再与注册的生物特征信息有较大的相似度,从而相当于使得注册的生物特征信息失效。
此外需要说明的是,实施例2所提供方法的各步骤的执行主体均可以是同一终端,或者,该方法也由不同终端作为执行主体。比如,步骤41和步骤42的执行主体可以为终端1,步骤43和步骤44的执行主体可以为终端2;又比如,步骤41的执行主体可以为终端1,步骤42~步骤44的执行主体可以为终端2;等等。
实施例3
实施例3提供一种生物特征信息的保存方法,该方法的具体实现流程图如图5所示,包括如下步骤:
步骤51,获得生物特征信息;
步骤52,根据特定信息和加密方法,对获得的生物特征信息进行加密处理,得到加密处理后的生物特征信息。
步骤52的具体实现过程与实施例2中的步骤42的具体实现过程类似,在此不再赘述。
步骤53,保存加密处理后的生物特征信息。
实施例3由于对生物特征信息进行了加密处理后才将其存储到用户终端,而不是直接将从获得的原始生物特征信息存储到用户终端,从而增大了存储在用户终端中的生物特征信息的破译难度。采用本申请实施例3提供的该方法,即便用户终端被破解,破解者也由于无法获知对生物特征信息的具体加密处理方式,而无法根据加密处理后的生物特征信息得到加密处理前的原始生物特征信息,从而保证了保存在用户终端中的生物特征信息的安全性。
需要说明的是,实施例3所提供方法的各步骤的执行主体均可以是同一终端,或者,该方法也由不同终端作为执行主体。比如,步骤51和步骤52的执行主体可以为终端1,步骤53的执行主体可以为终端2;又比如,步骤51的执行主体可以为终端1,步骤52和步骤53的执行主体可以为终端2;等等。
实施例4
采用目前的现有技术,对存在于图像中的生物特征(如指纹特征、掌纹特征、人脸特征、虹膜特征和眼纹特征等)信息进行提取后,可以得到相应的生物特征信息,即多维生物特征向量集合。
具体地,以掌纹特征为例,采用掌纹特征识别和提取方法对图像进行处理后,可以得到多个掌纹特征码,该些掌纹特征码可以构成一个四维掌纹特征向量集合,或者可以转换为该四维掌纹特征向量集合。该四维掌纹特征向量集合所包含的四维掌纹特征向量的前两个元素(即前两维)一般用于表示:某掌纹细节特征信息在上述图像所在的二维空间中的坐标;四维掌纹特征向量的第三个元素(即第三维)一般用于描述该掌纹细节特征信息的特征样式标识;四维掌纹特征向量的第四个元素(即第四维)则用于描述该掌纹细节特征信息在前述二维空间中的坐标相对于该二维空间中指定坐标点(和/或坐标轴)的偏转角度,比如按照逆时针的方向相对于该二维空间的原点的偏转角度,如图6所示。
对于上述描述中的一些名词解释如下:
掌纹细节特征信息是指构成掌纹的线条的特征信息;
掌纹细节特征信息的特征样式是指构成掌纹的线条所具备的特征样式,比如棒形线型、弧形线型、波浪线型、箕形线型以及螺形线型等等。实施例4中,假设目前能够被识别的掌纹细节特征信息的特征样式共有m0种,从而特征样式标识的范围可以是[1,m0]。
类似于掌纹特征向量集合的生成方式,采用生物特征识别方法对图像中的其他生物特征信息进行识别后,也可以得到相应的生物特征向量集合。
虽然在实际应用中,上述多维生物特征向量集合所包含的元素个数(即维数)会受到该集合中的元素所要描述的生物细节特征信息所属的生物特征种类、生成该集合时所使用的特征识别和提取方法或该集合中的元素对于生物细节特征信息的描述方式的影响,从而使得该集合的维数可能不止四维。但无论该集合的维数数量是多少,该集合包含的元素所表示的信息基本上可以划分为三部分,它们分别为:生物细节特征信息在包含有该生物细节特征信息的图像所在的二维空间中的坐标(为便于描述,后文将包含有该生物细节特征信息的图像所在的二维空间简称为“图像所在二维空间”)、生物细节特征信息的特征样式标识,以及生物细节特征信息在图像所在二维空间中的坐标相对于该二维空间中指定坐标点(和/或坐标轴)的偏转角度。
基于上述介绍,以下对本申请实施例4进行详细说明。
本申请实施例4提供一种多维生物特征向量集合的处理方法。其中,所述多维生物特征向量集合中的每个多维生物特征向量所分别表示的信息至少包括前文所述的三部分。
为方便对本申请实施例4提供的该方法进行清楚的描述,下文以用户提供包含掌纹特征信息的图像为例,说明如何对该图像进行生物特征信息提取而得到四维掌纹特征向量集合、如何对四维掌纹特征向量集合进行特定转换并利用杂凑点对转换后得到的四维掌纹特征向量集合进行隐藏,以及如何基于隐藏的多维掌纹特征向量集合对用户再次提供的掌纹特征信息进行识别比对。该方法也可以用于处理除掌纹特征信息之外的其他生物特征信息,如指纹特征信息、虹膜特征信息、人脸特征信息以及步态特征信息等等。
请参照附图7,其为本申请实施例4所提供的基于多维生物特征向量集合的生物特征信息处理方法的具体实现流程示意图,该方法主要包括下述步骤:
步骤71,用户终端获得并保存随机字符串A0和B0。
实施例4中,A0和B0可以是由网络侧的服务器随机生成的,也可以是由终端侧的用户终端随机生成的。
此外,A0还可以是根据用户输入的用户账号生成的,而B0则可以是根据用户终端的唯一标识生成的。比如,服务器在接收到用户终端发送的用户账号“cherry”后,可以在“cherry”这一字符串后添加随机字符从而生成A0;类似地,可以根据用户终端的唯一标识构成的一个字符串,并在该字符串后添加随机字符从而生成B0。以手机这一用户终端为例,手机的唯一标识可以但不限于是手机的IMEI、IMSI、CPU的型号、MAC地址、操作系统的标识和/或操作系统的版本信息等。
当该A0和B0由网络侧的服务器生成时,服务器可以将A0和B0发送给用户终端进行存储,以便于后续用户终端可以方便地调用保存在本地的A0和B0进行生成安全散列结果字符串A和字符串B等操作。
步骤72,用户终端获得专属密钥和用户终端的设备指纹。
具体地,用户终端可以获得用户输入该用户终端的、由用户自己创建的专属密钥K。一般地,K的格式为字符串。K可以存储在用户终端的易失性存储器(如内存)内,也可以通过加密的方式直接存储在用户终端的非易失性存储器(如磁盘)内,以便后续用户终端执行对生物特征模版进行混淆等操作时可以很方便地对K进行调用。其中,对K进行加密的方式可以但不限于采用现有技术中的各种文件加密方式。
针对用户终端的设备指纹而言,用户终端可以根据自身的设备信息生成相应的设备指纹。该设备指纹比如可以是字符串P,P的生成方式可以但不限于是采用安全散列算法的方式。P可以通过加密的方式直接存储在用户终端的非易失性存储器(如磁盘)内,也可以存储在用户终端的易失性存储器(如内存)内,以便后续用户终端执行对多维掌纹特征向量集合进行混淆等操作时可以很方便地对P进行调用。其中,对P进行加密的方式可以但不限于采用现有技术中的各种文件加密方式。
步骤73,用户终端获得多维掌纹特征向量集合。此步骤73中获得的多维掌纹特征向量集合也可称为“注册的掌纹特征信息”。
比如,用户可以在用户终端中安装的用于引导用户拍摄掌纹的客户端的指引下,利用用户终端的摄像头拍摄自己的掌纹,从而使得用户终端获得包含有掌纹特征信息的三幅图像。其中,用户终端可以仅拍摄一次自己的掌纹,也可以进行多次(如三次)拍摄。实施例4中,假设获得的各图像的长度均为l,高度均为h。
针对获得的上述三幅图像,用户终端可以采用预先设置在用户终端中的掌纹特征信息识别和提取方法,实现对图像中的掌纹特征信息的提取,从而得到由k个四维掌纹特征向量构成的四维掌纹特征向量集合。实施例4中,k表示采用所述掌纹特征信息识别和提取方法从上述三幅图像中识别出的掌纹细节特征信息的数目,其大小一般为十几个或者几十甚至上百个,该数目往往与掌纹特征识别和提取方法有关。为了便于描述,得到的四维掌纹特征向量集合可以表示为C={(a11,…,a41),(a12,…,a42)…,(a1k,…,a4k)},aij(i∈[1,4],j∈[1,k])表示构成四维掌纹特征向量的元素。C中的每个四维掌纹特征向量满足:前两维表示某掌纹细节特征信息在相应的图像所在的二维空间中的坐标;第三维用于描述该掌纹细节特征信息的特征样式标识;第四维用于描述该掌纹细节特征信息在相应的图像所在的二维空间中的坐标相对于该二维空间中指定坐标点(和/或坐标轴)的偏转角度。
步骤74,用户终端生成安全散列结果字符串。
比如,用户终端可以基于自身存储的A0和B0执行下述操作,从而生成安全散列结果字符串:
首先,分别在A0和B0后添加设备指纹P和专属密钥K,得到A1和B1;
然后,利用SHA-512或其他安全散列算法或其他密码散列函数,分别对A1和B1进行加密处理,从而获得安全散列结果字符串A和安全散列结果字符串B。其中,A和B的长度都是512bits。
需要说明的是,SHA-512是由美国国家安全局设计,并由美国国家标准与技术研究院发布的一系列密码散列函数。正式名称为SHA的家族第一个成员发布于1993年。然而现在的人们给它取了一个非正式的名称SHA-0以避免与它的后继者混淆。两年之后,SHA-0的第一个后继者SHA-1发布了。除SHA-1外,SHA-0另外还有四种变体,分别为SHA-224、SHA-256、SHA-384和SHA-512(这些变体也被称做SHA-2)。由于采用SHA-512对字符串进行加密处理已是比较成熟的现有技术,实施例4中对此部分内容不再进行详细说明。
步骤75,用户终端对多维掌纹特征向量集合进行混淆处理。
比如,可以对用户终端获得的四维掌纹特征向量集合C中的各四维掌纹特征向量中的每一个元素分别进行混淆处理。其中,在对某些元素进行混淆处理的过程中,可以利用安全散列结果字符串A或B。
其中,对四维掌纹特征向量中的每一个元素进行混淆处理的方法可以包括下述子步骤:
子步骤一:对四维掌纹特征向量中用于描述掌纹细节特征信息的特征样式标识的元素进行混淆处理。
以C中的四维掌纹特征向量(a11,…,a41)为例,上述用于描述掌纹细节特征信息的特征样式标识的元素一般为该四维掌纹特征向量中的第三维,即a31。
前文已指出,实施例4中的掌纹特征信息的特征样式总共有m0种,则当每一种特征样式不重复地被分配1~m0范围内的唯一标识时,a31所描述的特征样式的标识所在的区间是[1,m0]。实施例4中,可以采用下述公式[1]对a31进行混淆处理,得到相应的混淆后的元素a’31:
a’31=m0+1-a31 [1]
子步骤二:对四维掌纹特征向量中的第四维进行混淆处理。
其中,四维掌纹特征向量中的第四维用于描述:掌纹细节特征信息在相应的图像所在二维空间中的坐标相对于该二维空间中指定坐标点(和/或坐标轴)的偏转角度。
仍然以C中的四维掌纹特征向量(a11,…,a41)为例,子步骤二中可以采用SHA-1对B进行加密处理,得到长度为160bits的一个字符串r,然后,可以采用下述公式[2]对(a11,…,a41)中的a41进行混淆处理,得到相应的混淆后的元素a’41:
a’41=a41+(r mod360) [2]
子步骤三:对四维掌纹特征向量中的第一维和第二维分别进行混淆处理。
具体地,以C中的四维掌纹特征向量(a11,…,a41)为例,子步骤三的实现过程可以如下:
首先,利用SHA-1对A进行加密处理,得到长度为160bits的字符串z,并将z均分为5个部分,每部分的长度均为32bits。这5个部分可以分别标注为a、b、c、d、e。
然后,按照下述公式[3]计算一个旋转圆心点坐标(x,y),并按照公式[4]计算一个旋转角度v:
v=c mod360 [4]
最后,以(x,y)为圆心坐标,使(a11,…,a41)中的第一维和第二维所表示的坐标(a11,a21)按照正时针方向相对于(x,y)旋转v,从而得到(a11,a21)所对应的新坐标(x’,y’)。进一步地,采用下述公式[5]对新坐标(x’,y’)进行偏移处理,获得对(a11,a21)进行混淆处理后得到的(a’11,a’21):
通过执行上述子步骤一~子步骤三,可以实现对四维掌纹特征向量(a11,…,a41)中的各元素分别进行混淆处理,从而得到相应的混淆结果,即得到混淆后的四维掌纹特征向量(a’11,a’21,a’31,a’41)。
对四维掌纹特征向量集合C中各四维掌纹特征向量进行如上的类似处理,可以得到混淆后的四维掌纹特征向量集合D,也称混淆集合结果D。
步骤76,用户终端获得杂凑点模板。
杂凑点模板是由多个多维生物特征向量构成的一个集合,当该集合添加到生物特征向量集合中时,对生物特征向量集合中的信息可以起到掩盖的作用。杂凑点模板中包含的每个多维生物特征向量可以称为杂凑点。杂凑点模板既可以是由用户终端生成的,也可以是由服务器生成并发送给用户终端的。
杂凑点模板的生成方式可以是随机生成的,但对应于将要添加杂凑点模板的生物特征向量集合,生成的杂凑点的维数一般满足:等于生物特征向量集合中向量的维数。
步骤77,用户终端将获得的杂凑点模板添加到混淆后的四维掌纹特征向量集合D中,得到隐藏的四维掌纹特征向量集合E。
杂凑点模板和D均为四维向量所构成的集合,将杂凑点模板Q添加到D中相当于是生成了一个较大的四维向量集合E。E中包含的四维向量的个数为D中包含的四维掌纹特征向量的个数k与Q中包含的杂凑点的个数的总和。
为了保证E的安全性,用户终端可以E进行加密后再保存在本地。其中,可以采用现有技术中的任意文件加密方法对E进行加密。后文将继续说明如何基于E实现对用户的身份识别,在此不再赘述。
值得说明的是,实施例4中利用杂凑点模板对混淆后的四维掌纹特征向量集合D进行了隐藏,从而即便是用户终端的安全性被破坏而导致隐藏有D的四维掌纹特征向量集合E泄露,但由于破坏者无从得知杂凑点模板的生成方式,因此仍然难以从E中解析出D。进一步地,由于D是利用随机字符串A0、随机字符串B0、专属密钥K、用户终端的设备指纹P以及SHA-512等对四维掌纹特征向量集合C进行混淆处理而得到的,因此破坏者即便能解析出D,也很难完整地收集到用于进行混淆处理的各项参数,尤其是一些仅保存在易失性存储器中的参数(如K),从而无法实现根据D而获得最原始的多维掌纹特征向量集合C。可见,采用实施例4中的该方法,可以非常完善地保证多维掌纹特征向量集合C的安全性,有效避免用户的隐私信息泄露。
以下进一步对步骤78~步骤714进行描述,以说明用户终端如何基于保存的四维掌纹特征向量集合E,实现对用户的身份识别。
步骤78,用户终端获得多维掌纹特征向量集合。此步骤78中获得的多维掌纹特征向量集合也可称为“待认证的掌纹特征信息”。
仍然以掌纹特征信息为例,当用户欲利用自身的掌纹特征,对处于锁定状态的用户终端进行解锁时,用户可以在用户终端中安装的用于引导用户拍摄掌纹的客户端的指引下,利用用户终端的摄像头拍摄自己的掌纹,从而使得用户终端获得包含有掌纹特征信息的图像。图像的长度为l,高度为h。
针对获得的该图像,用户终端可以采用预先设置在用户终端中的掌纹特征信息识别和提取方法对图像进行处理,从而得到由k个四维掌纹特征向量构成的四维掌纹特征向量集合C1={(α11,…,α41),(α12,…,α42)…,(α1k,…,α4k)},αij(i∈[1,4],j∈[1,k])表示构成四维掌纹特征向量的元素。
步骤79,用户终端生成安全散列结果字符串。
步骤79的实现过程与步骤74的实现过程类似,用户终端可以基于自身存储的A0和B0执行下述操作,从而生成安全散列结果字符串:
首先,分别在A0和B0后添加设备指纹P和专属密钥K,得到A1和B1;
然后,利用SHA-512分别对A1和B1进行加密处理,从而获得安全散列结果字符串A和安全散列结果字符串B。其中,A和B的长度都是512bits。
需要说明的是,当通过执行步骤72而获得的专属密钥K未保存在用户终端的非易失性存储器从而丢失时,步骤79的具体实现过程中,用户终端可以先获得用户输入的专属密钥K,然后再执行分别在A0和B0后添加设备指纹P和专属密钥K的操作。比如,处于锁定状态的用户终端若检测到来自其输入信息接收单元(比如用户终端的触摸屏、键盘或鼠标)的信号,则可以提示用户输入专属密钥,进而获得输入用户终端的专属密钥K。而当通过执行步骤72获得的专属密钥K保存在用户终端的非易失性存储器时,用户终端则可以直接从非易失性存储器调用该专属密钥K。将专属密钥K不保存到非易失性存储器的方式具有更高的安全性。
此外需要说明的是,当用户终端中仅保存有一组如A0和B0这样的随机字符串时,在步骤79中,用户终端可以直接调用该组随机字符串以生成安全散列结果字符串。而当用户终端中保存有多组诸如A0和B0这样的随机字符串时,用户终端采用的保存方式可以是将不同组的随机字符串与相应的用户标识进行对应存储。当用户终端需要调用随机字符串时,可以根据用户输入用户终端的用户标识,查找与该用户标识对应存储的一组随机字符串,并调用查找到的随机字符串生成安全散列结果字符串。
步骤710,用户终端对通过执行步骤78而获得的多维掌纹特征向量集合进行混淆处理。
步骤710的实现方式与步骤75的实现方式类似,此处不再赘述。
实施例4中,假设对通过执行步骤78而获得的多维掌纹特征向量集合C1进行混淆处理后,得到的混淆后的四维掌纹特征向量集合为D1。
步骤711,用户终端生成杂凑点模板,并将生成的杂凑点模板添加到通过执行步骤710而得到的混淆后的四维掌纹特征向量集合中。
其中,用户终端生成杂凑点模板的方式与步骤76的实现方式类似,此处不再赘述。
以混淆后的四维掌纹特征向量集合D1为例,通过将生成的杂凑点模板添加到D1所得到的隐藏的四维掌纹特征向量集合可以记为F。F是一个包含k个四维掌纹特征向量的四维掌纹特征向量集合。
步骤712,用户终端确定F与保存在用户终端中的E之间的相似度的值。
本申请实施例中,可以以F和E之间的欧式距离的值来表示F与E之间的相似度的值。其中,F和E之间的欧式距离的值是指F包含的单个特征向量与E所包含的单个特征向量之间的欧式距离的值,或者,F和E之间的欧式距离的值还可以是指F包含的多个特征向量与E所包含的多个特征向量之间的欧式距离的值的平均值。比如,F包含的特征向量θ1与E包含的特征向量θ2之间的欧式距离的值为λ1,F包含的特征向量β1与E包含的特征向量β2之间的欧式距离的值为λ2,F包含的特征向量γ1与E包含的特征向量γ2之间的欧式距离的值为λ3,则F和E之间的欧式距离的值可以为(λ1+λ2+λ3)/3。
可选的,可以按照一定向量排序规则对F和E所包含特征向量进行排序后,再确定F包含的单个特征向量和E所包含的与该单个特征向量处于相同的排列位置的单个特征向量之间的欧式距离的值。其中,这里所说的向量排序规则比如可以为:按照向量中的第三维所表示的特征样式标识由大至小的顺序;或按照向量中的第四维所表示的偏转角度由小至大的顺序,等等。
本申请实施例中,还可以采用汉明距离或集合距离来衡量F和E之间的相似度。或者,也可以采用SVM预先训练相似度评分模型,然后再通过模型打分的方式确定F和E之间的相似度的值。
需要说明的是,E和F中都包含有相同的杂凑点模板,在确定E和F之间的相似度的值之前,可以先对E和F中包含的完全一样的向量进行过滤,并在过滤掉的向量的个数等于杂凑点的个数后,再执行确定E和F之间的相似度的值的操作。对杂凑点进行过滤的好处在于,可以避免由于杂凑点的存在而导致确定出的E和F之间的相似度的值的准确性受到影响。
步骤713,用户终端根据F与E之间的相似度的值,判断是否对用户终端进行解锁操作。
具体地,若用户终端判断出F与E之间的欧式距离的值小于某一距离阈值,则说明“注册的掌纹特征信息”与“待认证的掌纹特征信息”是来自于同一用户,从而执行步骤714;而若用户终端判断出F与E之间的欧式距离的值不小于该距离阈值,则可以不执行对用户终端进行解锁的操作。
需要说明的是,上述距离阈值可以是对多个用户的生物特征信息进行训练而得到的。比如,通过计算由同一用户的多个掌纹特征信息所分别构成的互不相同的掌纹特征向量之间的欧式距离的值,可以确定出该距离阈值的大小。
步骤714,用户终端执行对用户终端自身进行解锁的操作。
通过以上步骤71~步骤714可知,采用本申请实施例4提供的该基于多维生物特征向量集合的处理方法,可以在保证多维生物特征向量集合的安全性的前提下,实现利用生物特征信息对用户终端的解锁。可选的,当用户终端判断出E和F之间的相似度的值小于预设的相似度阈值时,还可以执行除解锁用户终端外的其他特定操作。所述其他特定操作可以但不限于包括:接听呼叫、发起呼叫、多媒体文件播放、关机或进入休眠状态等等。
本申请实施例4中,针对用户由于丢失了用户终端等原因而产生的、需要注销用户终端中保存的E的需求,还提供了一种生物特征信息的“挂失”方案,该方案的具体实现方式如下所述:
首先,用户利用其使用的用户终端X向前文所述的服务器发送生物特征信息挂失请求。比如,当用户遗失了保存有E的用户终端Y时,用户可以利用用户终端X向所述服务器发送该生物特征信息挂失请求,该生物特征信息挂失请求一般包含有用户的认证信息。该认证信息比如可以是用户登录所述服务器所用的账号和密码。
然后,服务器根据用户的认证信息以及服务器所保存的特定对应关系,查找与该认证信息相对应的被发送过A0和B0的用户终端Y的标识,并根据查找结果,向用户终端Y发送用于更新的A0和B0的A’0和B’0。其中,这里所述的特定对应关系是指认证信息、随机字符串和用户终端标识三者的对应关系。
最后,用户终端Y在接收到A’0和B’0后,利用A’0和B’0对用户终端Y所保存的A0和B0进行更新。
当A0和B0被更新为A’0和B’0后,后续即便用户终端Y再次对该用户的掌纹特征信息进行识别,并生成相应的四维掌纹特征向量集合G,但由于利用A’0和B’0对G进行混淆处理和杂凑点模板添加后,基本不可能得到与用户终端Y保存的E相似度较小的四维掌纹特征向量集合,从而采用上述步骤相当于使得E失效,进而使得用户终端丧失基于用户的掌纹特征信息的本地解锁能力,从而保证了用户终端中的信息的安全性不会因为用户终端的遗失而受到威胁。
可选的,实施例4中,服务器还可以接收用户终端X发送的掌纹特征信息删除指令,并根据该指令,通知用户终端Y对其保存的集合E进行删除。该操作可以在A0和B0被更新为A’0和B’0后执行,也可以在其他时机执行,本申请实施例4对该操作的执行时机不作限定。
实施例5
本申请实施例5提供一种多维生物特征向量集合的处理方法。其中,所述多维生物特征向量集合中的每个多维生物特征向量所分别表示的信息至少包括前文所述的三部分。
为方便对本申请实施例5提供的该方法进行清楚的描述,下文以用户提供包含指纹特征信息的图像为例,说明如何对该图像进行生物特征信息提取而得到三维指纹特征向量集合、如何对三维指纹特征向量集合进行特定转换并利用杂凑点对转换后得到的三维指纹特征向量集合进行隐藏,以及如何基于隐藏的多维指纹特征向量集合对用户再次提供的指纹特征信息进行识别比对。该方法也可以用于处理除指纹特征信息之外的其他生物特征信息,如掌纹特征信息、虹膜特征信息、人脸特征信息以及步态特征信息等等。
请参照附图8,其为本申请实施例5所提供的基于多维生物特征向量集合的生物特征信息处理方法的具体实现流程示意图,该方法主要包括下述步骤:
步骤81,用户终端获得并保存随机字符串Z0。
实施例5中,Z0可以是由网络侧的服务器随机生成的,也可以是由终端侧的用户终端随机生成的。
当Z0由网络侧的服务器生成时,服务器可以将Z0发送给用户终端进行存储,以便于后续用户终端可以方便地调用保存在本地的Z0进行生成安全散列结果字符串等操作。
步骤82,用户终端获得专属密钥和用户终端的设备指纹。
具体地,用户终端可以获得用户输入该用户终端的、由用户自己创建的专属密钥K。一般地,K的格式为字符串。K可以存储在用户终端的易失性存储器(如内存)内,也可以通过加密的方式直接存储在用户终端的非易失性存储器(如磁盘)内,以便后续用户终端执行对生物特征模版进行混淆等操作时可以很方便地对K进行调用。其中,对K进行加密的方式可以但不限于采用现有技术中的各种文件加密方式。
针对用户终端的设备指纹而言,用户终端可以根据自身的设备信息生成相应的设备指纹。该设备指纹比如可以是字符串P,P的生成方式可以但不限于是采用安全散列算法的方式。P可以通过加密的方式直接存储在用户终端的非易失性存储器(如磁盘)内,也可以存储在用户终端的易失性存储器(如内存)内,以便后续用户终端执行对多维指纹特征向量集合进行混淆等操作时可以很方便地对P进行调用。其中,对P进行加密的方式可以但不限于采用现有技术中的各种文件加密方式。
步骤83,用户终端获得多维指纹特征向量集合。此步骤83中获得的多维指纹特征向量集合也可称为“注册的指纹特征信息”。
比如,用户可以在用户终端中安装的用于引导用户拍摄指纹的客户端的指引下,利用用户终端的摄像头拍摄自己的指纹,从而使得用户终端获得包含有指纹特征信息的三幅图像。其中,用户终端可以仅拍摄一次自己的指纹,也可以进行多次(如三次)拍摄。实施例5中,假设获得的各图像的长度均为l,高度均为h。
针对获得的上述三幅图像,用户终端可以采用预先设置在用户终端中的指纹特征信息识别和提取方法,实现对图像中的指纹特征信息的提取,从而得到由t个三维指纹特征向量构成的三维指纹特征向量集合。实施例5中,t表示采用所述指纹特征信息识别和提取方法从上述三幅图像中识别出的指纹细节特征信息的数目,其大小一般为十几个或者几十甚至上百个,该数目往往与指纹特征识别和提取方法有关。为了便于描述,得到的三维指纹特征向量集合可以表示为G={(g11,g21,g31),(g12,g22,g32)…,(g1t,g2t,g3t)},构成集合的三维指纹特征向量集合中的元素可标识为gpq(p∈[1,3],q∈[1,t]。
G中的每个三维指纹特征向量满足:前两维表示某指纹细节特征信息在相应的图像所在的二维空间中的坐标;第三维用于描述组合的标识。其中,这里所说的组合是指该指纹细节特征信息的特征样式标识和该指纹细节特征信息在相应的图像所在的二维空间中的坐标相对于该二维空间中指定坐标点(和/或坐标轴)的偏转角度构成的组合。
步骤84,用户终端生成安全散列结果字符串。
比如,用户终端可以基于自身存储的Z0执行下述操作,从而生成安全散列结果字符串:
首先,在Z0后添加设备指纹P和专属密钥K,得到Z1;
然后,利用SHA-512或其他安全散列算法或其他密码散列函数,对Z1进行加密处理,从而获得安全散列结果字符串Z。其中,Z的长度是512bits。
步骤85,用户终端对多维指纹特征向量集合进行混淆处理。
比如,可以对用户终端获得的三维指纹特征向量集合G中的各三维指纹特征向量中的每一个元素分别进行混淆处理。其中,在对某些元素进行混淆处理的过程中,可以利用安全散列结果字符串Z。
其中,对三维指纹特征向量中的每一个元素进行混淆处理的方法可以包括下述子步骤:
子步骤一:对三维指纹特征向量中用于描述组合的标识的元素进行混淆处理。
以G中的三维指纹特征向量(g11,g21,g31)为例,上述用于描述前文所述的组合的标识的元素一般为该三维指纹特征向量中的第三维,即g31。
若假设实施例5中统计出的指纹细节特征信息在相应的图像所在的二维空间中的坐标相对于该二维空间中指定坐标点(和/或坐标轴)的偏转角度与指纹特征信息的特征样式标识的组合标识构成一个“字典”,则当可能存在的组合标识共有m1种时,该构成该“字典”的组合标识的取值范围可以为[1,m1]。
基于可能存在的组合标识的数目m1,实施例5中可以采用下述公式[6]对g31进行混淆处理,得到相应的混淆后的元素g’31:
g’31=m1+1-g31 [6]
子步骤二:对三维指纹特征向量中的第一维和第二维分别进行混淆处理。
具体地,仍然以G中的三维指纹特征向量(g11,g21,g31)为例,子步骤二的实现过程可以如下:
首先,利用SHA-1对Z进行加密处理,得到长度为160bits的字符串z,并将z均分为5个部分,每部分的长度均为32bits。这5个部分可以分别标注为a1、b1、c1、d1、e1。
然后,按照下述公式[7]计算一个旋转圆心点坐标(x1,y1),并按照公式[8]计算一个旋转角度v1:
v1=c1mod360[8]
最后,以(x1,y1)为圆心坐标,使(g11,g21,g31)中的第一维和第二维所表示的坐标(g11,g21)按照正时针方向相对于(x1,y1)旋转v1,从而得到(g11,g21)所对应的新坐标(x1’,y1’)。进一步地,采用下述公式[9]对新坐标(x1’,y1’)进行偏移处理,获得对(g11,g21)进行混淆处理后得到的(g'11,g'21):
通过执行上述子步骤一~子步骤三,可以实现对三维指纹特征向量(g11,g21,g31)中的各元素分别进行混淆处理,从而得到相应的混淆结果,即得到混淆后的三维指纹特征向量(g'11,g'21,g'31)。
对三维指纹特征向量集合G中各三维指纹特征向量进行如上的类似处理,可以得到混淆后的三维指纹特征向量集合H,也称混淆集合结果H。
步骤86,用户终端获得杂凑点模板。
步骤87,用户终端将获得的杂凑点模板添加到混淆后的三维指纹特征向量集合H中,得到隐藏的三维指纹特征向量集合I。
杂凑点模板和H均为三维向量所构成的集合,将杂凑点模板添加到H中相当于是生成了一个较大的三维向量集合I。I中包含的三维向量的个数为H中包含的三维指纹特征向量的个数t与杂凑点模板中包含的杂凑点的个数的总和。
为了保证I的安全性,用户终端可以I进行加密后再保存在本地。其中,可以采用现有技术中的任意文件加密方法对I进行加密。后文将继续说明如何基于I实现对用户的身份识别,在此不再赘述。
值得说明的是,实施例5中利用杂凑点模板对混淆后的三维指纹特征向量集合H进行了隐藏,从而即便是用户终端的安全性被破坏而导致隐藏有H的三维指纹特征向量集合I泄露,但由于破坏者无从得知杂凑点模板的生成方式,因此仍然难以从I中解析出H,从而可以有效避免用户的隐私信息泄露。
以下进一步对步骤88~步骤814进行描述,以说明用户终端如何基于保存的三维指纹特征向量集合I,实现对用户的身份识别。
步骤88,用户终端获得多维指纹特征向量集合。此步骤88中获得的多维指纹特征向量集合也可称为“待认证的指纹特征信息”。
仍然以指纹特征信息为例,当用户欲利用自身的指纹特征,对处于锁定状态的用户终端进行解锁时,用户可以在用户终端中安装的用于引导用户拍摄指纹的客户端的指引下,利用用户终端的摄像头拍摄自己的指纹,从而使得用户终端获得包含有指纹特征信息的图像。图像的长度为l,高度为h。
针对获得的该图像,用户终端可以采用预先设置在用户终端中的指纹特征信息识别和提取方法对图像进行处理,从而得到由t个三维指纹特征向量构成的三维指纹特征向量集合G1={(w11,w21,w41),(w12,w22,w42),…,(w1t,w2t,w4t)}。其中,wpq(p∈[1,3],q∈[1,t])表示构成三维指纹特征向量的元素。
步骤89,用户终端生成安全散列结果字符串。
步骤89的实现过程与步骤84的实现过程类似,用户终端可以基于自身存储的Z0执行下述操作,从而生成安全散列结果字符串,具体如下:
首先,在Z0后添加设备指纹P和专属密钥K,得到Z1;
然后,利用SHA-512对Z1进行加密处理,从而获得安全散列结果字符串Z。其中,Z的长度是512bits。
步骤810,用户终端对通过执行步骤88而获得的多维指纹特征向量集合进行混淆处理。
步骤810的实现方式与步骤85的实现方式类似,此处不再赘述。
实施例5中,假设对通过执行步骤88而获得的三维指纹特征向量集合G1进行混淆处理后,得到的混淆后的三维指纹特征向量集合为H1。
步骤811,用户终端生成杂凑点模板,并将生成的杂凑点模板添加到通过执行步骤810而得到的混淆后的三维指纹特征向量集合中。
其中,用户终端生成杂凑点模板的方式与步骤86的实现方式类似,此处不再赘述。
以混淆后的三维指纹特征向量集合H1为例,通过将生成的杂凑点模板添加到H1所得到的隐藏的三维指纹特征向量集合可以记为J。J是一个包含t个三维指纹特征向量的三维指纹特征向量集合。
步骤812,用户终端确定J与保存在用户终端中的I之间的相似度的值。
步骤813,用户终端根据J与I之间的相似度的值,判断是否对用户终端进行特定操作。
具体地,若用户终端判断出J与I之间的欧式距离的值小于某一距离阈值,则说明“注册的指纹特征信息”与“待认证的指纹特征信息”是来自于同一用户,从而执行步骤814;而若用户终端判断出J与I之间的欧式距离的值不小于该距离阈值,则可以不执行对用户终端进行解锁的操作。
需要说明的是,上述距离阈值可以是对多个用户的生物特征信息进行训练而得到的。比如,通过计算由同一用户的多个指纹特征信息所分别构成的互不相同的指纹特征向量之间的欧式距离的值,可以确定出该距离阈值的大小。
步骤814,用户终端执行特定操作。
通过以上步骤81~步骤814可知,采用本申请实施例5提供的该基于多维生物特征向量集合的处理方法,可以在保证多维生物特征向量集合的安全性的前提下,实现利用生物特征信息触发用户终端执行特定操作。所述其他特定操作可以但不限于包括:解锁用户终端的锁屏状态、接听呼叫、发起呼叫、多媒体文件播放、关机或进入休眠状态等等。
实施例6
实施例6提供一种生物特征信息处理装置,该装置的结构示意图如图9所示,包括如下功能单元:
获得单元91,用于获得第一生物特征信息;
加密单元92,用于根据特定信息和加密方法,对获得单元91获得的第一生物特征信息进行加密处理,得到待识别的生物特征信息。
相似度确定单元93,用于确定加密单元92得到的待识别的生物特征信息与保存的注册的生物特征信息之间的相似度;其中,注册的生物特征信息可以是根据所述特定信息和所述加密方法对第二生物特征信息进行加密处理后得到的;
特定操作执行单元94,用于在相似度确定单元93确定出的相似度满足特定操作执行条件时,执行特定操作。
可选的,加密单元92功能的具体实现方式与前文实施例2中的步骤42的实现方式类似。
具体地,当第一生物特征信息为生物特征向量构成的集合时,加密单元92具体可以用于根据特定信息和加密方法,对构成第一生物特征信息的生物特征向量包含的至少一个元素进行不可逆的加密运算,得到待识别的生物特征信息。
比如,当生物特征向量包含第一元素和第二元素,且第一元素用于表示生物细节特征信息在图像所在的二维空间中的横坐标,第二元素用于表示生物细节特征信息在所述二维空间中的纵坐标时,加密单元92具体可以包括第一加密子单元。该第一加密子单元可以用于根据特定信息和加密方法,对构成第一生物特征信息的每个生物特征向量包含的第一元素和第二元素分别进行不可逆的加密运算。
可选的,当生物特征向量在包含第一元素和第二元素的同时还包含第三元素,且第三元素用于表示生物细节特征信息的特征样式标识时,加密单元92还可以进一步包括第二加密子单元。该第二加密子单元用于根据特征样式总数目和特征样式标识转换算法,对构成第一生物特征信息的每个生物特征向量包含的第三元素分别进行加密运算,得到加密后的第三元素。其中,特征样式总数目为统计出的能够被识别的生物细节特征信息的特征样式总数目。
可选的,当生物特征向量在包含第一元素和第二元素的同时还包含第四元素,且第四元素用于表示生物细节特征信息在图像所在二维空间中的坐标相对于该二维空间中指定参考物的偏转角度时,加密单元92还可以进一步包括第三加密子单元。该第三加密子单元用于根据特定信息和加密方法,对构成第一生物特征信息的每个生物特征向量包含的第四元素分别进行加密运算,得到加密后的第四元素。
可选的,当生物特征向量在包含第一元素和第二元素的同时还包含第五元素,且第五元素用于表示组合(生物细节特征信息在图像所在二维空间中的坐标相对于该二维空间中指定参考物的偏转角度和生物细节特征信息的特征样式标识所构成的组合)的标识时,加密单元92还可以包括:第四加密子单元,用于根据组合标识转换算法,以及对图像样本进行训练而确定出的组合数,对构成所述集合的每个生物特征向量包含的所述第五元素分别进行加密运算,得到加密后的第五元素。其中,组合数为不同生物细节特征信息在所述二维空间中的坐标分别相对于所述指定参考物的偏转角度与所述不同生物细节特征信息的特征样式标识的组合数目。
可选的,当所述特定信息包括随机字符串时,实施例6提供的该装置还可以进一步包括接收单元和更新单元。其中,接收单元用于接收用于更新随机字符串的信息;更新单元用于利用接收单元接收到的用于更新随机字符串的信息,更新特定信息中包括的随机字符串。
可选的,当前文所述的特定操作为对终端进行解锁的操作时,特定操作执行单元94具体可以用于:在相似度确定单元93确定出的相似度的值大于相似度阈值时,执行对终端进行解锁的操作。
可选的,当待识别的生物特征信息中添加有杂凑点时,相似度确定单元93可以划分为以下功能子单元:
信息删除子单元,用于从待识别的生物特征信息中删除满足第一特定条件的特定数目的信息;从注册的生物特征信息中删除满足第二特定条件的特定数目的信息;
相似度确定子单元,用于确定删除了特定数目的信息后的待识别的生物特征信息和删除了特定数目的信息后的注册的生物特征信息之间的相似度。
其中,特定数目为待识别的生物特征信息中添加的杂凑点的数目。第一特定条件为“与注册的生物特征信息中包含的任一信息相同”;第二特定条件为“与待识别的生物特征信息中包含的任一信息相同”。
实施例6由于对生物特征信息进行了加密处理后才将其进行存储,而不是直接存储获得的原始生物特征信息,从而增大了存储的生物特征信息的破译难度。采用实施例6提供的装置,即便存储的生物特征信息被破解者获得,破解者也由于无法获知对生物特征信息的具体加密处理方式,而无法根据加密处理后的生物特征信息得到加密处理前的原始生物特征信息。
实施例7
实施例7提供一种生物特征信息的保存装置,该装置的结构示意图如图10所示,包括下述功能单元:
获得单元101,用于获得生物特征信息;
加密单元102,用于根据特定信息和加密方法,对获得单元101获得的生物特征信息进行加密处理,得到加密处理后的生物特征信息;其中,特定信息包括随机字符串、终端唯一标识和用户密钥三者中的至少一个;
保存单元103,用于保存加密单元102得到的加密处理后的生物特征信息。
可选的,加密单元102功能的具体实现方式与前文实施例2中的步骤42的实现方式类似。
具体地,当获得的生物特征信息为生物特征向量构成的集合时,加密单元102具体可以用于根据特定信息和加密方法,对构成获得的生物特征信息的生物特征向量包含的至少一个元素进行不可逆的加密运算,得到获得的生物特征信息。
比如,当生物特征向量包含第一元素和第二元素,且第一元素用于表示生物细节特征信息在图像所在的二维空间中的横坐标,第二元素用于表示生物细节特征信息在所述二维空间中的纵坐标时,加密单元102具体可以包括第一加密子单元。该第一加密子单元可以用于根据特定信息和加密方法,对构成获得的生物特征信息的每个生物特征向量包含的第一元素和第二元素分别进行不可逆的加密运算。
可选的,当生物特征向量在包含第一元素和第二元素的同时还包含第三元素,且第三元素用于表示生物细节特征信息的特征样式标识时,加密单元102还可以进一步包括第二加密子单元。该第二加密子单元用于根据特征样式总数目和特征样式标识转换算法,对构成获得的生物特征信息的每个生物特征向量包含的第三元素分别进行加密运算,得到加密后的第三元素。其中,特征样式总数目为统计出的能够被识别的生物细节特征信息的特征样式总数目。
可选的,当生物特征向量在包含第一元素和第二元素的同时还包含第四元素,且第四元素用于表示生物细节特征信息在图像所在二维空间中的坐标相对于该二维空间中指定参考物的偏转角度时,加密单元102还可以进一步包括第三加密子单元。该第三加密子单元用于根据特定信息和加密方法,对构成获得的生物特征信息的每个生物特征向量包含的第四元素分别进行加密运算,得到加密后的第四元素。
可选的,当生物特征向量在包含第一元素和第二元素的同时还包含第五元素,且第五元素用于表示组合(生物细节特征信息在图像所在二维空间中的坐标相对于该二维空间中指定参考物的偏转角度和生物细节特征信息的特征样式标识所构成的组合)的标识时,加密单元102还可以包括:第四加密子单元,用于根据组合标识转换算法,以及对图像样本进行训练而确定出的组合数,对构成所述集合的每个生物特征向量包含的第五元素分别进行加密运算,得到加密后的第五元素。其中,组合数为不同生物细节特征信息在所述二维空间中的坐标分别相对于所述指定参考物的偏转角度与所述不同生物细节特征信息的特征样式标识的组合数目。
实施例7由于对生物特征信息进行了加密处理后才将其进行存储,而不是直接存储获得的原始生物特征信息,从而增大了存储的生物特征信息的破译难度。采用实施例7提供的装置,即便存储的生物特征信息被破解者获得,破解者也由于无法获知对生物特征信息的具体加密处理方式,而无法根据加密处理后的生物特征信息得到加密处理前的原始生物特征信息。
实施例8
实施例8提供一种生物特征信息处理装置,该装置的具体结构示意图如图11所示,包括生物特征信息采集器111、处理器112和存储器113,其中,处理器112和存储器113之间有通信连接,处理器112和生物特征信息采集器111之间有通信连接,生物特征信息采集器111和存储器113之间可以有也可以没有通信连接。该装置各部分的功能如下:
生物特征信息采集器111,用于获得第一生物特征信息;
处理器112,用于根据特定信息和加密方法,对第一生物特征信息进行加密处理,得到待识别的生物特征信息;确定待识别的生物特征信息与存储器113保存的注册的生物特征信息之间的相似度;当确定出的相似度满足特定操作执行条件时,执行特定操作。比如,当该特定操作为对终端进行解锁的操作时,处理器具体可以用于:在确定出的相似度的值大于相似度阈值时,执行对终端进行解锁的操作。
上述注册的生物特征信息是根据所述特定信息和所述加密方法对第二生物特征信息进行加密处理后得到的。
实施例8中,处理器112根据特定信息和加密方法对第一生物特征信息进行加密处理的方式与前文实施例6中的加密单元92的功能实现方式类似,在此不再赘述。
可选的,当特定信息包括随机字符串时,实施例8提供的该装置还可以进一步包括信号接收器。该信号接收器的功能在于接收用于更新随机字符串的信息。则处理器112基于信号接收器接收到的用于更新随机字符串的信息,可以对特定信息(特定信息可以但不限于存储在存储器113中)中包括的随机字符串进行更新。
实施例8由于对生物特征信息进行了加密处理后才将其进行存储,而不是直接存储获得的原始生物特征信息,从而增大了存储的生物特征信息的破译难度。采用实施例8提供的装置,即便存储的生物特征信息被破解者获得,破解者也由于无法获知对生物特征信息的具体加密处理方式,而无法根据加密处理后的生物特征信息得到加密处理前的原始生物特征信息。
实施例9
实施例9提供一种生物特征信息的保存装置,该装置的具体结构示意图如图12所示,包括生物特征信息采集器121、处理器122和存储器123,其中,处理器122和存储器123之间有通信连接,处理器122和生物特征信息采集器121之间有通信连接,生物特征信息采集器121和存储器123之间可以有也可以没有通信连接。该装置各部分的功能如下:
生物特征信息采集器121,用于获得生物特征信息;
处理器122,用于根据特定信息和加密方法,对生物特征信息采集器121获得的生物特征信息进行加密处理,得到加密处理后的生物特征信息;
存储器123,用于保存由处理器122得到的加密处理后的生物特征信息。
实施例9中,处理器122根据特定信息和加密方法对生物特征信息采集器121获得的生物特征信息进行加密处理的方式与前文实施例7中的加密单元102的功能实现方式类似,在此不再赘述。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。