一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种生物特征识别方法、装置、电子设备及存储介质与流程

2022-06-08 14:30:27 来源:中国专利 TAG:


1.本技术涉及隐私安全和生物特征识别的技术领域,具体而言,涉及一种生物特征识别方法、装置、电子设备及存储介质。


背景技术:

2.目前,对生物特征等隐私信息进行保护的方法大都是通过不可逆变换运算完成的,此处的不可逆变换例如:模糊金库(fuzzy vault)算法、模糊提取(fuzzy extractor)算法和模糊承诺(fuzzy commitment)算法等等。然而在实际过程中发现,采用这些不可逆变换运算进行身份认证的速度都比较慢。相比于不可逆变换运算,采用可逆变换运算对生物特征等隐私信息进行保护的速度是比较快的,然而,攻击者也可以通过该可逆变换运算的逆运算获取到生物特征,所以采用可逆变换运算无法做到隐私保护,难以保证生物特征等隐私信息的安全。因此,目前对生物特征等隐私信息进行保护难以兼顾隐私安全和识别效率的平衡。


技术实现要素:

3.本技术实施例的目的在于提供一种生物特征识别方法、装置、电子设备及存储介质,用于改善对生物特征等隐私信息进行保护难以兼顾隐私安全和识别效率的平衡的问题。
4.本技术实施例提供了一种生物特征识别方法,应用于电子设备,包括:获取待识别对象的目标图像,并提取目标图像中的生物特征;对目标图像中的生物特征进行分片和同态加密,获得多个加密向量碎片;向多个服务器分别发送多个加密向量碎片,以使多个服务器中的每个服务器将加密向量碎片与底库中的密态向量碎片之间的最大向量距离值确定为向量距离值,并返回向量距离值和向量距离值对应的身份标识;接收多个服务器发送的向量距离值和向量距离值对应的身份标识,获得多个向量距离值和多个向量距离值中的每个向量距离值对应的身份标识;根据多个向量距离值和每个向量距离值对应的身份标识,确定待识别对象的识别结果。在上述的实现过程中,通过分片和同态加密后的其中一个加密向量碎片发送给服务器存储和计算,使得服务器始终以密态数据进行计算,且该服务器难以获取到所有加密向量碎片并根据所有加密向量碎片还原出生物特征,从而保证了生物特征的隐私安全;进一步地,由于采用的是多个服务器分别在以密态数据进行同时计算,且本地采用明文来计算耗时较少的部分任务,从而结合了服务器端的多方密文计算和本地端的明文计算两种方式,能够有效地兼顾隐私安全和识别效率的平衡。
5.可选地,在本技术实施例中,在向多个服务器分别发送多个加密向量碎片之前,还包括:获取待识别对象的生物图像和身份标识,并提取待识别对象的生物图像中的生物特征;对生物图像中的生物特征进行分片和同态加密,获得多个密态向量碎片;向服务器发送身份标识和多个密态向量碎片中的其中一个密态向量碎片,以使服务器将身份标识和接收到的密态向量碎片存储至底库中。在上述的实现过程中,通过对生物图像中的生物特征进
行分片和同态加密,获得多个密态向量碎片,并向服务器发送身份标识和多个密态向量碎片中的其中一个密态向量碎片,使得服务器始终以密态数据进行计算,且该服务器难以获取到所有加密向量碎片并根据所有加密向量碎片还原出生物特征,从而提高了生物特征的隐私安全性。
6.可选地,在本技术实施例中,根据多个向量距离值和每个向量距离值对应的身份标识,确定待识别对象的识别结果,包括:筛选出多个向量距离值中的最大向量距离值;根据目标图像中的生物特征和最大向量距离值确定相似度值,相似度值是目标图像中的生物特征与生物图像中的生物特征之间的相似度值;判断相似度值是否大于预设阈值;若是,则将最大向量距离值对应的身份标识确定为识别结果,否则,将待识别对象未注册确定为识别结果。在上述的实现过程中,通过筛选出多个向量距离值中的最大向量距离值,并根据目标图像中的生物特征和最大向量距离值确定相似度值,再根据相似度值确定待识别对象的生物特征对应的身份识别结果,有效地提高了生物特征识别效率。
7.可选地,在本技术实施例中,根据目标图像中的生物特征和最大向量距离值确定相似度值,包括:对目标图像中的生物特征进行计算,获得目标图像中的生物特征与生物图像中的生物特征之间的匹配分数;根据匹配分数和最大向量距离值确定相似度值。
8.可选地,在本技术实施例中,根据多个向量距离值和每个向量距离值对应的身份标识,确定待识别对象的识别结果,包括:根据目标图像中的生物特征和每个向量距离值确定相似度值,获得多个相似度值;从多个相似度值中筛选出最大相似度值,并将最大相似度值对应的身份标识确定为识别结果。在上述的实现过程中,通过从多个相似度值中筛选出最大相似度值,并将最大相似度值对应的身份标识确定为识别结果,从而避免了根据相似度最小或者非最大的身份标识确定为识别结果的问题,有效地提高了生物特征识别效率。
9.本技术实施例还提供了一种生物特征识别方法,应用于服务器,包括:接收电子设备发送的多个加密向量碎片;将加密向量碎片与底库中的密态向量碎片之间的最大距离值确定为向量距离值,并获取向量距离值和向量距离值对应的身份标识;向电子设备发送向量距离值和向量距离值对应的身份标识,以使电子设备根据向量距离值和向量距离值对应的身份标识确定待识别对象的识别结果。在上述的实现过程中,通过接收电子设备发送的多个加密向量碎片;将加密向量碎片与底库中的密态向量碎片之间的最大距离值确定为向量距离值,并向电子设备发送向量距离值和向量距离值对应的身份标识,使得服务器始终以密态数据进行计算,且该服务器难以获取到所有加密向量碎片并根据所有加密向量碎片还原出生物特征,从而保证了生物特征的隐私安全。
10.可选地,在本技术实施例中,将加密向量碎片与底库中的密态向量碎片之间的最大距离值确定为向量距离值,包括:通过多方安全计算的方式计算出加密向量碎片与底库中的密态向量碎片之间的夹角余弦值,获得多个余弦值;从多个余弦值中筛选出最大余弦值,并将最大余弦值确定为向量距离值。
11.本技术实施例还提供了一种生物特征识别装置,应用于电子设备,包括:生物特征提取模块,用于获取待识别对象的目标图像,并提取目标图像中的生物特征;向量碎片获得模块,用于对目标图像中的生物特征进行分片和同态加密,获得多个加密向量碎片;向量碎片发送模块,用于向多个服务器分别发送多个加密向量碎片,以使多个服务器中的每个服务器将加密向量碎片与底库中的密态向量碎片之间的最大向量距离值确定为向量距离值,
并返回向量距离值和向量距离值对应的身份标识;身份标识接收模块,用于接收多个服务器发送的向量距离值和向量距离值对应的身份标识,获得多个向量距离值和多个向量距离值中的每个向量距离值对应的身份标识;识别结果确定模块,用于根据多个向量距离值和每个向量距离值对应的身份标识,确定待识别对象的识别结果。
12.可选地,在本技术实施例中,生物特征识别装置,还包括:生物身份获取模块,用于获取待识别对象的生物图像和身份标识,并提取待识别对象的生物图像中的生物特征;特征分片加密模块,用于对生物图像中的生物特征进行分片和同态加密,获得多个密态向量碎片;身份信息发送模块,用于向服务器发送身份标识和多个密态向量碎片中的其中一个密态向量碎片,以使服务器将身份标识和接收到的密态向量碎片存储至底库中。
13.可选地,在本技术实施例中,识别结果确定模块,包括:最大距离筛选模块,用于筛选出多个向量距离值中的最大向量距离值;相似度值确定模块,用于根据目标图像中的生物特征和最大向量距离值确定相似度值,相似度值是目标图像中的生物特征与生物图像中的生物特征之间的相似度值;相似度值判断模块,用于判断相似度值是否大于预设阈值;身份结果确定模块,用于若相似度值大于预设阈值,则将最大向量距离值对应的身份标识确定为识别结果,否则,将待识别对象未注册确定为识别结果。
14.可选地,在本技术实施例中,相似度值确定模块,包括:匹配分获得模块,用于对目标图像中的生物特征进行计算,获得目标图像中的生物特征与生物图像中的生物特征之间的匹配分数;相似度确定模块,用于根据匹配分数和最大向量距离值确定相似度值。
15.可选地,在本技术实施例中,识别结果确定模块,包括:相似度值获得模块,用于根据目标图像中的生物特征和每个向量距离值确定相似度值,获得多个相似度值;身份标识确定模块,用于从多个相似度值中筛选出最大相似度值,并将最大相似度值对应的身份标识确定为识别结果。
16.本技术实施例还提供了一种生物特征识别装置,应用于服务器,包括:向量碎片接收模块,用于接收电子设备发送的多个加密向量碎片;身份标识获取模块,用于将加密向量碎片与底库中的密态向量碎片之间的最大距离值确定为向量距离值,并获取向量距离值和向量距离值对应的身份标识;身份标识发送模块,用于向电子设备发送向量距离值和向量距离值对应的身份标识,以使电子设备根据向量距离值和向量距离值对应的身份标识确定待识别对象的识别结果。
17.可选地,在本技术实施例中,身份标识获取模块,包括:夹角余弦计算模块,用于通过多方安全计算的方式计算出加密向量碎片与底库中的密态向量碎片之间的夹角余弦值,获得多个余弦值;向量距离确定模块,用于从多个余弦值中筛选出最大余弦值,并将最大余弦值确定为向量距离值。
18.本技术实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
19.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
附图说明
20.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使
用的附图作简单地介绍,应当理解,以下附图仅示出了本技术实施例中的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
21.图1示出的本技术实施例提供的生物特征识别方法在注册阶段的流程示意图;图2示出的本技术实施例提供的发送身份标识和密态向量碎片的示意图;图3示出的本技术实施例提供的生物特征识别方法在识别阶段的流程示意图;图4示出的本技术实施例提供的与服务器进行交互的示意图;图5示出的本技术实施例提供的电子设备与服务器进行交互的流程示意图;图6示出的本技术实施例提供的生物特征识别装置的结构示意图。
具体实施方式
22.下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术实施例中的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术实施例的详细描述并非旨在限制要求保护的本技术实施例的范围,而是仅仅表示本技术实施例中的选定实施例。基于本技术实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术实施例保护的范围。
23.在介绍本技术实施例提供的生物特征识别方法之前,先介绍本技术实施例中所涉及的一些概念:同态加密(homomorphic encryption)是一种加密形式,同态加密允许人们对密文进行特定形式的代数运算得到仍然是加密的结果,将其解密所得到的结果与对明文进行同样的运算结果一样。换言之,这项技术令人们可以在加密的数据中进行诸如检索、比较等操作,得出正确的结果,而在整个处理过程中无需对数据进行解密。
24.多方安全计算(multi-party computation,mpc),又被称为安全多方计算(secure multi-party computation,smc),mpc的研究主要是针对无可信第三方的情况下,如何安全地计算一个约定函数的问题。一个安全多方计算协议,如果对于拥有无限计算能力攻击者而言是安全的,则称作是信息论安全的或无条件安全的;如果对于拥有多项式计算能力的攻击者是安全的,则称为是密码学安全的或条件安全的。
25.需要说明的是,本技术实施例提供的生物特征识别方法可以被电子设备执行,这里的电子设备是指具有执行计算机程序功能的设备终端或者服务器,设备终端例如:智能手机、个人电脑、平板电脑、个人数字助理或者移动上网设备等。服务器是指通过网络提供计算服务的设备,服务器例如:x86服务器以及非x86服务器,非x86服务器包括:大型机、小型机和unix服务器。
26.下面介绍该生物特征识别方法适用的应用场景,这里的应用场景包括但不限于:指纹识别、人脸识别、虹膜识别、掌纹识别、指静脉识别等等生物识别场景,以及智能家居安全、公司安全防护、小区安全防护、电子保险柜安全防护系统和门禁安防监控系统等安全防护的应用场景。以指纹识别为例进行详细说明,具体例如:员工早上到公司之后,可以凭借指纹通过公司的门禁系统中的指纹门锁(也可以兼顾打卡功能,即指纹打卡机)进入公司办
公区域工作,或者,凭借指纹在公司的指纹打卡机上打卡等等。
27.请参见图1示出的本技术实施例提供的生物特征识别方法在注册阶段的流程示意图;该生物特征识别方法的主要思路是,通过分片和同态加密后的其中一个加密向量碎片发送给服务器存储和计算,使得服务器始终以密态数据进行计算,且该服务器难以获取到所有加密向量碎片并根据所有加密向量碎片还原出生物特征,从而保证了生物特征的隐私安全;进一步地,由于采用的是多个服务器分别在以密态数据进行同时计算,且本地采用明文来计算耗时较少的部分任务,从而结合了服务器端的多方密文计算和本地端的明文计算两种方式,能够有效地兼顾隐私安全和识别效率的平衡。上述的生物特征识别方法具体可以包括:注册阶段和识别阶段;下面先介绍生物特征的注册阶段,注册阶段的实施方式可以包括:步骤s110:电子设备获取待识别对象的生物图像和身份标识,并提取待识别对象的生物图像中的生物特征。
28.身份标识(identification,id),是指能够唯一确定该待识别对象身份的唯一标识,此处的身份标识可以采用姓名、证件号、电话号码和社保编号等任何能够用于表明身份的标识信息。身份标识的获取有很多方式,例如:手动输入、从身份证卡中读取或者接收其它设备发送等等,此处不再一一列举。
29.上述步骤s110中的待识别对象的生物图像的获取方式包括但不限于:第一种获取方式,使用非接触式设备来采集待识别对象的生物图像;具体例如:使用摄像机、录像机或彩色照相机等终端设备对待识别对象进行拍摄,获得待识别对象的生物图像(例如指纹图像、人脸图像、虹膜图像、掌纹图像或者指静脉图像等等),然后可以将待识别对象的生物图像存储至文件系统、数据库或移动存储设备中。第二种获取方式,使用接触式设备来采集待识别对象的生物图像;具体例如:使用指纹传感器、掌纹传感器或指静脉传感器等等采集待识别对象的生物图像。在获取生物图像后,可以将生物图像存储至文件系统、数据库或移动存储设备中。
30.上述步骤s110中的提取生物图像中的生物特征的实施方式包括但不限于:第一种实施方式,可以基于生物统计学上的特征进行提取,该实施方式具体例如:基于指掌纹、指掌静脉纹理、手指纹路、手掌形状、手指指关节线或者手掌粗纹线等生物统计学上的特征进行特征提取,从而获得待识别对象的生物图像中的生物特征。第二种实施方式,可以采用深度神经网络(deep neural networks, dnn)模型来提取生物图像中的生物特征;此处的dnn是一种判别模型,可以使用反向传播算法对dnn进行训练获得dnn模型;可以使用的深度神经网络包括:vgg网络、resnet网络、wide resnet网络和inception网络等。
31.在步骤s110之后,执行步骤s120:电子设备对生物图像中的生物特征进行分片和同态加密,获得多个密态向量碎片。
32.请参见图2示出的本技术实施例提供的发送身份标识和密态向量碎片的示意图;上述步骤s120的实施方式例如:电子设备对生物图像中的生物特征进行归一化处理,获得归一化后的特征向量,并对归一化后的特征向量进行逐维度分片,得到多个向量碎片,然后,对多个向量碎片分别进行同态加密,获得多个密态向量碎片。其中,上述的多个是指两个或者两个以上,为了便于理解和方便描述,下面均以两个为例进行说明,具体例如:假设上述的生物特征是一个1024维度人脸特征向量,那么该人脸特征向量可以使用来表示,
对人脸特征向量作归一化处理,获得归一化后的特征向量可以表示为,并对归一化后的特征向量进行逐维度分片,得到两个向量碎片,这里的两个向量碎片包括第一向量碎片和第二向量碎片,然后,在分别对第一向量碎片和第二向量碎片进行同态加密,获得的多个密态向量碎片包括:第一密态向量碎片和第二密态向量碎片。
33.在步骤s120之后,执行步骤s130:电子设备向服务器发送身份标识和多个密态向量碎片中的其中一个密态向量碎片,以使服务器将身份标识和接收到的密态向量碎片存储至底库中。
34.底库,是指用于存储身份标识和密态向量碎片的映射关系的数据仓库,本技术实施例的底库当然也可以理解为用于存储密态向量碎片的数据库。
35.上述步骤s130的实施方式例如:电子设备通过第一接口向第一服务器发送身份标识和第一密态向量碎片,以使第一服务器将身份标识和接收到的第一密态向量碎片存储至第一服务器的底库中,其中,第一服务器是第一业务方的提供计算服务的设备,第一接口具体可以采用过超文本传输协议(hyper text transfer protocol,http)接口或者超文本传输安全协议(hyper text transfer protocol secure,https)接口。与此同时,电子设备通过第二接口向第二服务器发送身份标识和第二密态向量碎片,以使第二服务器将身份标识和接收到的第二密态向量碎片存储至第二服务器的底库中,其中,第二服务器是第二业务方的提供计算服务的设备,第二接口可以采用安全外壳(secure shell,ssh)协议接口等等。
36.请参见图3示出的本技术实施例提供的生物特征识别方法在识别阶段的流程示意图;可以理解的是,上面介绍了生物特征的注册阶段,下面介绍生物特征的识别阶段,具体可以包括:步骤s210:电子设备获取待识别对象的目标图像,并提取目标图像中的生物特征。
37.上述步骤s210中的获取待识别对象的目标图像的实施方式与步骤s110的实施方式类似,具体可以使用非接触式设备或者接触式设备来采集待识别对象的生物图像。对应地,上述步骤s210中的提取目标图像中的生物特征的实施方式与步骤s110的实施方式类似,具体可以采用基于生物统计学上的特征进行提取,或者,采用深度神经网络(dnn)模型来提取生物图像中的生物特征,此处不再赘述。
38.在步骤s210之后,执行步骤s220:电子设备对目标图像中的生物特征进行分片和同态加密,获得多个加密向量碎片。
39.上述步骤s220的实施方式例如:电子设备对目标图像中的生物特征进行归一化处理,获得归一化后的特征向量,并对归一化后的特征向量进行逐维度分片,得到多个向量碎片,然后,对多个向量碎片分别进行同态加密,获得多个加密向量碎片,具体例如:假设将上述的生物特征表示为一个1024维度人脸特征向量,那么该人脸特征向量可以使用来表示,对人脸特征向量作归一化处理,获得归一化后的特征向量可以表示为,并对归一化后的特征向量进行逐维度分片,得到两个向量碎片,这里的两个向量碎片包括第一向量碎片和第二向量碎片,然后,在分别对第一向量碎片和第二向量碎片进行同态加
密,获得的多个加密向量碎片包括:第一加密向量碎片和第二加密向量碎片。
40.在步骤s220之后,执行步骤s230:电子设备向多个服务器分别发送多个加密向量碎片,以使多个服务器中的每个服务器将加密向量碎片与底库中的密态向量碎片之间的最大向量距离值确定为向量距离值,并返回向量距离值和向量距离值对应的身份标识。
41.请参见图4示出的本技术实施例提供的与服务器进行交互的示意图;上述步骤s230的实施方式例如:电子设备调用第一业务方的第一服务器的接口,向第一服务器发送第一加密向量碎片。第一服务器在接收到第一加密向量碎片之后,将第一加密向量碎片与底库中的密态向量碎片之间的最大向量距离值确定为向量距离值,并向电子设备返回第一向量距离值和第一向量距离值对应的身份标识。同理地,电子设备调用第二业务方的第二服务器的接口,向第二服务器发送第二加密向量碎片。第二服务器在接收到第二加密向量碎片之后,将第二加密向量碎片与底库中的密态向量碎片之间的最大向量距离值确定为向量距离值,并向电子设备返回第二向量距离值和第二向量距离值对应的身份标识。上述的向量距离值具体可以采用夹角余弦值(即余弦距离)、欧氏距离(euclidean distance)、汉明距离(hamming distance)或信息熵(information entropy)等等,为了便于理解和说明,下面均以夹角余弦值来进行详细地说明。
42.在步骤s230之后,执行步骤s240:电子设备接收多个服务器发送的向量距离值和向量距离值对应的身份标识,获得多个向量距离值和多个向量距离值中的每个向量距离值对应的身份标识。
43.上述步骤s240的实施方式例如:电子设备接收第一服务器发送的第一向量距离值和第一向量距离值对应的身份标识,以及第二服务器发送的第二向量距离值和第二向量距离值对应的身份标识,从而获得的多个向量距离值包括:第一向量距离值和第二向量距离值,获得的多个身份标识包括:第一向量距离值对应的身份标识和第二向量距离值对应的身份标识。
44.在步骤s240之后,执行步骤s250:电子设备根据多个向量距离值和每个向量距离值对应的身份标识,确定待识别对象的识别结果。
45.上述步骤s250的实施方式有很多种,包括但不限于如下几种:第一种实施方式,根据多个向量距离值中的最大向量距离值确定的相似度值来进行识别,该实施方式可以包括:步骤s251:电子设备筛选出多个向量距离值中的最大向量距离值。
46.上述步骤s251的实施方式例如:假设向量距离值均是夹角余弦值,那么电子设备筛选出多个夹角余弦值中的最大夹角余弦值;其中,夹角余弦值可以使用公式来进行计算,分别代表第一向量和第二向量,和代表第一向量和第二向量之间的夹角余弦值。
47.步骤s252:电子设备根据目标图像中的生物特征和最大向量距离值确定相似度值,相似度值是目标图像中的生物特征与生物图像中的生物特征之间的相似度值。
48.上述步骤s252的实施方式例如:假设使用来表示目标图像对应的生物特征向
量,使用公式对目标图像中的生物特征进行计算,获得目标图像中的生物特征与生物图像中的生物特征之间的匹配分数;其中,k表示目标图像中的生物特征与生物图像中的生物特征之间的匹配分数,表示目标图像对应的生物特征向量。然后,使用公式对匹配分数和最大向量距离值进行计算,从而获得相似度值;其中,表示相似度值,表示目标图像对应的生物特征向量,cosθ为最大向量距离值,k为匹配分数,e是数学中的自然常数。
49.步骤s253:电子设备判断相似度值是否大于预设阈值。
50.步骤s254:若相似度值大于预设阈值,则将最大向量距离值对应的身份标识确定为识别结果,否则,将待识别对象未注册确定为识别结果。
51.上述步骤s253至步骤s254的实施方式例如:电子设备使用编程语言编译或者解释执行的可执行程序判断相似度值是否大于预设阈值,其中,可以使用的编程语言例如:c、c 、java、basic、javascript、lisp、shell、perl、ruby、python和php等等。若相似度值大于预设阈值,则将最大向量距离值对应的身份标识确定为识别结果;若相似度值不大于预设阈值,则将待识别对象未注册确定为识别结果;其中,上述预设阈值可以根据具体情况进行设置,具体可以设置为0.7或者0.8等等。
52.第二种实施方式,根据生物特征和多个向量距离值计算多个相似度值,并将最大相似度值对应的身份标识确定为识别结果,该实施方式可以包括:步骤s255:电子设备根据目标图像中的生物特征和每个向量距离值确定相似度值,获得多个相似度值。
53.其中,该步骤s255的实施原理和实施方式与步骤s252的实施原理和实施方式是类似的,因此,这里不再说明其实施原理和实施方式,如有不清楚的地方,可以参考对步骤s252的描述。
54.步骤s256:电子设备从多个相似度值中筛选出最大相似度值,并将最大相似度值对应的身份标识确定为识别结果。
55.上述步骤s256的实施方式例如:假设多个相似度值包括:第一相似度值0.7和第二相似度值0.8,那么很明显地,第二相似度值是多个相似度值中最大相似度值,因此,应该将第二相似度值对应的身份标识确定为识别结果。可选地,在具体的实践过程中,可以查找到上述第二相似度值对应的身份标识的用户信息,然后在电子设备的显示设备上显示该身份标识的用户信息;如果是电子设备上已授权的应用程序调用该生物特征识别方法,那么可以将该身份标识或者该身份标识的用户信息转发给该应用程序。
56.在上述的实现过程中,首先对目标图像中的生物特征进行分片和同态加密,获得多个加密向量碎片;然后,向多个服务器分别发送多个加密向量碎片,以使多个服务器中的每个服务器将加密向量碎片与底库中的密态向量碎片之间的向量距离值和对应的身份标识;最后,根据向量距离值和对应的身份标识确定待识别对象的识别结果。在保证生物特征的原始数据安全性的情况下,采用服务器的密文计算和本地的明文计算相结合的方式能够
提高50%的生物特征识别效率。也就是说,通过分片和同态加密后的其中一个加密向量碎片发送给服务器存储和计算,使得服务器始终以密态数据进行计算,且该服务器难以获取到所有加密向量碎片并根据所有加密向量碎片还原出生物特征,从而保证了生物特征的隐私安全;进一步地,由于采用的是多个服务器分别在以密态数据进行同时计算,且本地采用明文来计算耗时较少的部分任务,从而结合了服务器端的多方密文计算和本地端的明文计算两种方式,能够有效地兼顾隐私安全和识别效率的平衡。
57.请参见图5示出的本技术实施例提供的电子设备与服务器进行交互的流程示意图;本技术实施例提供了一种生物特征识别方法,具体可以包括:步骤s310:电子设备获取待识别对象的目标图像,并提取目标图像中的生物特征。
58.在步骤s310之后,执行步骤s320:电子设备对目标图像中的生物特征进行分片和同态加密,获得多个加密向量碎片。
59.在步骤s320之后,执行步骤s330:电子设备向多个服务器分别发送多个加密向量碎片。
60.其中,该步骤s310至步骤s330的实施原理和实施方式与步骤s210至步骤s230的实施原理和实施方式是类似的,因此,这里不再说明其实施原理和实施方式,如有不清楚的地方,可以参考对步骤s210至步骤s230的描述。
61.在步骤s330之后,执行步骤s340:多个服务器中的每个服务器接收电子设备发送的多个加密向量碎片。
62.上述步骤s340的实施方式例如:假设多个服务器包括:第一业务方的第一服务器和第二业务方的第二服务器,且多个加密向量碎片包括:第一加密向量碎片和第二加密向量碎片,那么第一服务器可以通过http协议或者https协议接收电子设备发送的第一加密向量碎片,对应地,第二服务器可以通过http协议或者https协议接收电子设备发送的第二加密向量碎片。
63.在步骤s340之后,执行步骤s350:多个服务器中的每个服务器将加密向量碎片与底库中的密态向量碎片之间的最大距离值确定为向量距离值,并获取向量距离值和向量距离值对应的身份标识。
64.上述步骤s350的实施方式可以包括:可以理解的是,上述的向量距离值具体可以采用夹角余弦值(即余弦距离)、欧氏距离(euclidean distance)、汉明距离(hamming distance)或信息熵(information entropy)等等,为了便于理解和说明,下面均以夹角余弦值来说明,具体例如:通过多方安全计算(mpc)的方式计算出加密向量碎片与底库中的密态向量碎片之间的夹角余弦值,获得多个余弦值。从多个余弦值中筛选出最大余弦值,并将最大余弦值确定为向量距离值,具体例如:假设多个余弦值包括:第一余弦值0.7和第二余弦值0.8,那么很明显地,第二余弦值0.8是多个余弦值中最大余弦值,因此,应该将最大余弦值0.8确定为向量距离值。
65.在步骤s350之后,执行步骤s360:多个服务器中的每个服务器向电子设备发送向量距离值和向量距离值对应的身份标识。
66.在步骤s360之后,执行步骤s370:电子设备接收多个服务器发送的向量距离值和向量距离值对应的身份标识,获得多个向量距离值和多个向量距离值中的每个向量距离值对应的身份标识。
67.在步骤s370之后,执行步骤s380:电子设备根据多个向量距离值和每个向量距离值对应的身份标识,确定待识别对象的识别结果。
68.其中,该步骤s370至步骤s380的实施原理和实施方式与步骤s240至步骤s250的实施原理和实施方式是类似的,因此,这里不再说明其实施原理和实施方式,如有不清楚的地方,可以参考对步骤s240至步骤s250的描述。
69.在上述的实现过程中,通过接收电子设备发送的多个加密向量碎片;将加密向量碎片与底库中的密态向量碎片之间的最大距离值确定为向量距离值,并向电子设备发送向量距离值和向量距离值对应的身份标识,使得服务器始终以密态数据进行计算,且该服务器难以获取到所有加密向量碎片并根据所有加密向量碎片还原出生物特征,从而保证了生物特征的隐私安全。
70.请参见图6示出的本技术实施例提供的生物特征识别装置的结构示意图。本技术实施例提供了一种生物特征识别装置400,应用于电子设备,包括:生物特征提取模块410,用于获取待识别对象的目标图像,并提取目标图像中的生物特征。
71.向量碎片获得模块420,用于对目标图像中的生物特征进行分片和同态加密,获得多个加密向量碎片。
72.向量碎片发送模块430,用于向多个服务器分别发送多个加密向量碎片,以使多个服务器中的每个服务器将加密向量碎片与底库中的密态向量碎片之间的最大向量距离值确定为向量距离值,并返回向量距离值和向量距离值对应的身份标识。
73.身份标识接收模块440,用于接收多个服务器发送的向量距离值和向量距离值对应的身份标识,获得多个向量距离值和多个向量距离值中的每个向量距离值对应的身份标识。
74.识别结果确定模块450,用于根据多个向量距离值和每个向量距离值对应的身份标识,确定待识别对象的识别结果。
75.可选地,在本技术实施例中,生物特征识别装置,还包括:生物身份获取模块,用于获取待识别对象的生物图像和身份标识,并提取待识别对象的生物图像中的生物特征。
76.特征分片加密模块,用于对生物图像中的生物特征进行分片和同态加密,获得多个密态向量碎片。
77.身份信息发送模块,用于向服务器发送身份标识和多个密态向量碎片中的其中一个密态向量碎片,以使服务器将身份标识和接收到的密态向量碎片存储至底库中。
78.可选地,在本技术实施例中,识别结果确定模块,包括:最大距离筛选模块,用于筛选出多个向量距离值中的最大向量距离值。
79.相似度值确定模块,用于根据目标图像中的生物特征和最大向量距离值确定相似度值,相似度值是目标图像中的生物特征与生物图像中的生物特征之间的相似度值。
80.相似度值判断模块,用于判断相似度值是否大于预设阈值。
81.身份结果确定模块,用于若相似度值大于预设阈值,则将最大向量距离值对应的身份标识确定为识别结果,否则,将待识别对象未注册确定为识别结果。
82.可选地,在本技术实施例中,相似度值确定模块,包括:
匹配分获得模块,用于对目标图像中的生物特征进行计算,获得目标图像中的生物特征与生物图像中的生物特征之间的匹配分数。
83.相似度确定模块,用于根据匹配分数和最大向量距离值确定相似度值。
84.可选地,在本技术实施例中,识别结果确定模块,包括:相似度值获得模块,用于根据目标图像中的生物特征和每个向量距离值确定相似度值,获得多个相似度值。
85.身份标识确定模块,用于从多个相似度值中筛选出最大相似度值,并将最大相似度值对应的身份标识确定为识别结果。
86.本技术实施例还提供了一种生物特征识别装置,应用于服务器,包括:向量碎片接收模块,用于接收电子设备发送的多个加密向量碎片。
87.身份标识获取模块,用于将加密向量碎片与底库中的密态向量碎片之间的最大距离值确定为向量距离值,并获取向量距离值和向量距离值对应的身份标识。
88.身份标识发送模块,用于向电子设备发送向量距离值和向量距离值对应的身份标识,以使电子设备根据向量距离值和向量距离值对应的身份标识确定待识别对象的识别结果。
89.可选地,在本技术实施例中,身份标识获取模块,包括:夹角余弦计算模块,用于通过多方安全计算的方式计算出加密向量碎片与底库中的密态向量碎片之间的夹角余弦值,获得多个余弦值。
90.向量距离确定模块,用于从多个余弦值中筛选出最大余弦值,并将最大余弦值确定为向量距离值。
91.应理解的是,该装置与上述的生物特征识别方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置的操作系统(operating system,os)中的软件功能模块。
92.本技术实施例提供的一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上的方法。
93.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上的方法。
94.其中,计算机可读存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random access memory, 简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory, 简称eeprom),可擦除可编程只读存储器(erasable programmable read only memory, 简称eprom),可编程只读存储器(programmable read-only memory, 简称prom),只读存储器(read-only memory, 简称rom),磁存储器,快闪存储器,磁盘或光盘。
95.本技术实施例提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅是示意性的,例如,附图中的流程图和框图显示了根据本技术实施例的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可
执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以和附图中所标注的发生顺序不同。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这主要根据所涉及的功能而定。
96.另外,在本技术实施例中的各个实施例的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
97.在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
98.以上的描述,仅为本技术实施例的可选实施方式,但本技术实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术实施例的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献