CN112364319B - 一种基于二叉树混洗的生物特征模板保护方法及装置 - Google Patents
一种基于二叉树混洗的生物特征模板保护方法及装置 Download PDFInfo
- Publication number
- CN112364319B CN112364319B CN202011085867.3A CN202011085867A CN112364319B CN 112364319 B CN112364319 B CN 112364319B CN 202011085867 A CN202011085867 A CN 202011085867A CN 112364319 B CN112364319 B CN 112364319B
- Authority
- CN
- China
- Prior art keywords
- binary tree
- template matrix
- verified
- matrix
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 239000011159 matrix material Substances 0.000 claims abstract description 170
- 230000009466 transformation Effects 0.000 claims abstract description 45
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000000605 extraction Methods 0.000 claims abstract description 20
- 238000012795 verification Methods 0.000 claims abstract description 15
- 238000003062 neural network model Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 9
- 238000011161 development Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 238000005336 cracking Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/40—Tree coding, e.g. quadtree, octree
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Collating Specific Patterns (AREA)
Abstract
本发明公开了一种基于二叉树混洗的生物特征模板保护方法及装置,该方法包括:获取待验证生物特征图像;对待验证生物特征图像进行像素点插值变换,得到第一模板矩阵;根据第一模板矩阵生成待验证的哈希校验码;对第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵;对第二模板矩阵进行特征提取,得到待验证的特征向量串;将待验证的特征向量串与预先存储的注册生物模板矩阵对应的注册特征向量串进行匹配,同时将待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果。本发明提供的基于二叉树混洗的模板保护方法具有较高的效率和安全性。
Description
技术领域
本发明属于图像处理技术领域,具体涉及一种基于二叉树混洗的生物特征模板保护方法及装置。
背景技术
随着全球经济与信息技术的发展,尤其是全球互联网时代的到来,越来越多的领域需要可靠的身份认证。在信息化的背景下,生物特征由于其稳定性和方便性而被人们广泛研究,生物特征认证也被广泛应用到各个领域及各种场合。生物特征即一个人固有的生理或行为特征,比如指纹、掌纹、虹膜等。然而,基于生物特征的身份识别技术在带来便捷性的同时,其所涉及到的个人隐私和安全隐患问题也不容忽视。
目前,现有技术中对于生物特征的模板保护主要有两种方式,一种是采用传统的加密技术;另一种是采用生物特征变换技术。然而,传统的加密技术其安全性主要取决于秘钥的安全性,而通常情况下,秘钥即靠用户自定义的口令,口令简单易被猜测,口令复杂又难以记住,因此,这种利用传统加密技术进行生物模板保护的方法存在较大安全隐患。而现有的生物特征变换技术通常是针对常规生物特征图像进行模板保护,而对于小面积生物特征图像,存在信息不足的问题,则会出现效率不高或者失效的情况。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种基于二叉树混洗的生物特征模板保护方法及装置。本发明要解决的技术问题通过以下技术方案实现:
一种基于二叉树混洗的生物特征模板保护方法,包括:
获取待验证生物特征图像;
对所述待验证生物特征图像进行像素点插值变换,得到第一模板矩阵;
根据所述第一模板矩阵生成待验证的哈希校验码;
对所述第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵;
对所述第二模板矩阵进行特征提取,得到待验证的特征向量串;
将所述待验证的特征向量串与预先存储的注册生物模板矩阵对应的注册特征向量串进行匹配,同时将所述待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果。
在本发明的一个实施例中,在将所述待验证的特征值与预先存储的注册生物模板矩阵对应的注册特征值进行匹配之前,还包括:
获取待注册生物特征图像;
对所述待注册生物特征图像进行像素点插值变换,得到变换后的模板矩阵;
根据所述变换后的模板矩阵生成注册哈希校验码;
对所述变换后的模板矩阵进行基于二叉树混洗处理,得到注册模板矩阵;
将所述注册哈希校验码和所述注册模板矩阵存储于数据库中,以用于生物特征认证。
在本发明的一个实施例中,对所述待验证生物特征图像进行像素点插值变换,得到第一模板矩阵,包括:
对所述待验证生物特征图像进行像素提取,得到原始生物特征模板矩阵;
根据所述原始生物特征模板矩阵设置哈希函数,以得到所述原始生物特征模板矩阵中的非零像素点对应的哈希地址;
在所述原始生物模板矩阵中找到与所述哈希地址对应的非零像素点,并进行插值变换,得到第一模板矩阵;其中,所述原始生物特征模板矩阵的偶数行像素点按照第一插值进行插值变换,奇数行像素点按照第二插值进行插值变换。
在本发明的一个实施例中,根据所述第一模板矩阵生成待验证的哈希校验码,包括:
提取所述第一模板矩阵的第一插值a和第二插值b;
分别将所述第一插值a和所述第二插值b转换为8位二进制串Sa和Sb,并拼接成16位二进制数Sab;
分别记录所述16位二进制Sab中值为1的位置,同时将该位置序号按顺序拼成一个十进制整数并将其转化为二进制数Dab;其中,所述位置序号是从左向右从0开始计算的;
利用SHA-2哈希算法将所述二进制数Dab加密为256位字符串,以生成待验证的哈希校验码。
在本发明的一个实施例中,对所述第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵,包括:
对所述第一模板矩阵进行并行图像处理,得到若干子像素矩阵;
在所述子像素矩阵中选取一个像素点作为参考像素点,并根据混洗算法将所述子像素矩阵中的其余像素点化为初始二叉树;
根据所述参考像素点对所述初始二叉树进行节点置换运算,得到新的二叉树;
将所有新的二叉树按照一定规则遍历,并以一定主顺序存储在矩阵中,得到第二模板矩阵。
在本发明的一个实施例中,根据所述参考像素点对所述初始二叉树进行节点置换运算,得到新的二叉树,包括:
将所述参考像素点转换为8位参考二进制码;
根据第一运算规则对所述参考二进制码进行运算,得到第一待置换节点在所述初始二叉树中的位置及其对应的第一置换规则;
按照所述第一置换规则对所述第一待置换节点进行第一次迭代,得到第一二叉树;
根据第二运算规则对所述参考二进制码进行运算,得到第二待置换节点在所述第一二叉树中的位置及其对应的第二置换规则;
按照所述第二置换规则对所述第二待置换节点进行第二次迭代,得到第二二叉树;
根据第三运算规则对所述参考二进制码进行运算,得到第三待置换节点在所述第二二叉树中的位置及其对应的第三置换规则;
按照所述第三置换规则对所述第三待置换节点进行第三次迭代,得到第三二叉树;
根据第四运算规则对所述参考像素点进行运算,得到第四置换规则;
按照所述第四置换规则对所述第三二叉树从顶层节点进行置换运算,得到新的二叉树。
在本发明的一个实施例中,对所述第二模板矩阵进行特征提取,得到待验证的特征向量串,包括:
采用ResNet神经网络模型对所述第二模板矩阵进行特征提取,得到待验证的特征向量串;其中,所述ResNet神经网络的残差块使用三层残差函数。
在本发明的一个实施例中,将所述待验证的特征向量串与预先存储的注册生物特征模板矩阵对应的注册特征向量串进行匹配,同时将所述待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果,包括:
根据所述待验证的特征向量串和所述注册特征向量串计算欧式距离;
若判断所述欧式距离小于预设阈值,且所述待验证的哈希校验码与所述注册哈希校验码相同,则验证通过;
否则,验证失败。
本发明的另一个实施例提供了一种基于二叉树混洗的生物特征模板保护装置,包括:
数据采集模块,用于获取待验证生物特征图像;
插值变换模块,用于对所述待验证生物特征图像进行像素点插值变换,得到第一模板矩阵;
哈希码生成模块,用于根据所述第一模板矩阵生成待验证的哈希校验码;
二叉树混洗模块,用于对所述第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵;
特征提取模块,用于对所述第二模板矩阵进行特征提取,得到待验证的特征向量串;
信息匹配模块,用于将所述待验证的特征值与预先存储的注册生物特征模板矩阵对应的注册特征值进行匹配,同时将所述待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果。
在本发明的一个实施例中,所述数据采集模块还用于获取待注册生物特征图像;
所述插值变换模块还用于对所述待注册生物特征图像进行像素点插值变换,得到变换后的模板矩阵;
所述哈希码生成模块还用于根据所述变换后的模板矩阵生成注册哈希校验码;
所述二叉树混洗模块还用于对所述变换后的模板矩阵进行基于二叉树混洗处理,得到注册模板矩阵;
所述特征提取模块还用于对所述注册模板矩阵进行特征提取,得到注册特征向量串。
本发明的有益效果:
1、本发明提供的基于二叉树混洗的生物特征模板保护方法,利用原始图像插值生成哈希校验码,并与二叉树混洗后的生物特征模板形成双重安全机制,攻击者必须破解哈希校验码且恢复虚拟生物特征模板才能攻击成功,具有较高的安全性;且本方法直接对原始生物特征图像进行变换保护,受生物特征图像包含数据量信息少的影响小,提高了算法效率以及可靠性;
2、本发明提供的方法对生物特征模板进行基于哈希表的插值运算,当注册模板丢失时,可以任意更换新的插值数,并发布新的模板,这使得系统具有较好的可撤销性及无关联性;
3、本发明提供的方法在加密域匹配阶段利用神经网络模型提取图像特征进行匹配,与传统图像匹配算法相比鲁棒性更高,受生物特征图像类间相似度影响较小;
4、本发明提供的方法可以有效保护原始生物特征信息,使其不被非法窃取,能够促进信息产业安全发展,具有重要的市场价值。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的一种基于二叉树混洗的生物特征模板保护方法流程示意图;
图2是本发明实施例提供的基于哈希表的插值变换示意图;
图3是本发明实施例提供的基于SHA-2哈希校验码生成的示意图;
图4是本发明实施例提供的并行图像处理示意图;
图5是本发明实施例提供的4×4子像素矩阵示例;
图6是根据图5的子像素矩阵得到的初始二叉树示意图;
图7是本发明实施例提供的二叉树混洗算法过程示意图;
图8是图4所示的像素矩阵经混洗变换后的得到的第二模板矩阵;
图9是本发明实施例提供另一种基于二叉树混洗的生物特征模板保护方法流程示意图;
图10是本发明实施例提供的基于二叉树混洗的生物特征模板保护装置结构示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
实施例一
请参见图1,图1是本发明实施例提供的一种基于二叉树混洗的生物特征模板保护方法示意图,包括:
S1:获取待验证生物特征图像。
在本实施例中,生物特征可以是指纹、掌纹、虹膜、面部轮廓等人体固有的生理特征,本实施例以指纹为例进行详细说明。
具体地,本实施例通过采集指纹得到指纹图像,记为A,该指纹图像A即为待验证的指纹图像。
S2:对待验证生物特征图像进行像素点插值变换,得到第一模板矩阵,包括:
S21:对待验证生物特征图像进行像素提取,得到原始生物特征模板矩阵。
具体地,本实施例将从指纹图像A中提取的像素矩阵记为Am×n,得到第一模板矩阵,并记录矩阵Am×n中第i行非零像素值的个数,记为Ni,i=1,2,3...,m。
S22:根据所述原始生物特征模板矩阵设置哈希函数,以得到所述原始生物特征模板矩阵中的非零像素点对应的哈希地址。
在本实施例中,设置哈希函数为f(k)=k%Ni,其中,k表示第i行中某一个非零像素值,%表示取余运算。经过哈希函数映射后得到哈希地址,记为l;
S23:在原始生物特征模板矩阵中找到与哈希地址对应的非零像素点,并进行插值变换,得到第一模板矩阵;其中,原始生物特征模板矩阵的偶数行像素点按照第一插值进行插值变换,奇数行像素点按照第二插值进行插值变换。
具体地,首先判断行数i的奇偶性,若i为偶数,则对矩阵Am×n中Ai×(l+1)位置的像素值按照插值a变换为Ai×(l+1)+a,其中,a表示插入的第一像素值,也称第一插值。
若i为奇数,则将Ai×(l+1)位置的像素值按照第一插值b变换为Ai×(l+1)+b,其中b表示插入的另一个像素值,也即第二插值。
在插值变换过程中,若发生哈希冲突,则通过二重哈希法用同一个哈希函数对该地址像素进行二次插值。
所有插值变换完成后,得到第一模板矩阵,记为MA。
下面以行数i=1、第一插值a=50、第二插值b=20为例,对本实施例的步骤S2进行举例说明。
请参见图2,图2是本发明实施例提供的基于哈希表的插值变换示意图,由于行数i为1,是奇数,因此,采用第二插值b=20进行插值变换。
具体地,由图2可得,第1行的非零元素有11个,也即N1=11。
然后,依次计算各元素所指位置,并对相应位置进行插值,这里需要注意的是位置序号从0开始。例如:第一个元素221,经过哈希函数计算得到值l=1,则对第一个位置的元素进行加20的操作,即对位置序号1(A12)中元素10进行加20的操作。
当发生哈希冲突时,使用同一个哈希函数进行二次插值,例如元素105、6计算所得的哈希地址均为位置序号6的位置,则对位置序号6(A17)的元素62进行两次加20操作,插值后原位置元素更新为102。
所有插值结束后,得到变换后的第一模板矩阵MA。
S3:根据第一模板矩阵生成待验证的哈希校验码,包括:
S31:提取第一模板矩阵的第一插值a和第二插值b。
S32:分别将第一插值a和所述第二插值b转换为8位二进制串Sa和Sb,并拼接成16位二进制数Sab。
S33:分别记录所述16位二进制数Sab中值为1的位置,同时将该位置序号按顺序拼成一个十进制整数并将其转化为二进制串Dab;其中,位置序号是从左向右从0开始计算的。
S34:利用SHA-2哈希算法将所述二进制串Dab加密为256位字符串,以生成待验证的哈希校验码。
下面继续以a=50、b=20为例,对本实施例的步骤S3进行详细说明。
请参见图3,图3是本发明实施例提供的基于SHA-2哈希校验码生成的示意图。
具体地,先将a=50、b=20分别转换为二进制,得到Sa=00110010,Sb=00010100,并将Sa和Sb首尾相连拼接成一个16位二进制数Sab=0011001000010100。
然后记录Sab中值为1的位置。需要注意的是,序号编码从左到右从0开始,则值为1的位置分别为第2、3、6、11、13;将位置序号依次拼接组成一个十制整数,为Dab=2361113。
将该十进制数转换为二进制数,再利用SHA-2算法加密成256位字符串,加密后的字符串即为生成的待验证的哈希校验码,记为HA。
S4:对第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵,包括:
S41:对第一模板矩阵进行并行图像处理,得到若干子像素矩阵。
本实施例设第一模板矩阵MA为16×16的像素矩阵,子像素矩阵设为4×4的像素矩阵。
具体地,请参见图4,图4是本发明实施例提供的并行图像处理示意图。首先,第一个16×16的像素矩阵被划分为16组4×4的矩阵,每个4×4矩阵分配一个处理器。然后再取12×12的像素矩阵划分为9组4×4的矩阵,每个像素矩阵分配一个处理器。下一阶段使用8×8的像素矩阵,得到4组4×4的像素矩阵,每个像素矩阵分配一个处理器混洗。
本实施例通过对每一个子像素矩阵分配一个唯一的处理器,可以提高算法的整体计算效率和速度。
S42:在子像素矩阵中选取一个像素点作为参考像素点,并根据混洗算法将子像素矩阵中的其余像素点化为初始二叉树。
请参见图5,图5是本发明实施例提供的4×4子像素矩阵示例。下面以图5所示矩阵为例对步骤S42进行举例说明。
在本实施例中,选择矩阵中第一个像素值221作为参考像素点,并将矩阵中其余像素点以层序遍历法插入二叉树,得到初始二叉树。请参见图6,图6是根据图5的子像素矩阵得到的初始二叉树示意图。
S43:根据参考像素点对初始二叉树进行节点置换运算,得到新的二叉树。具体如下:
S43-1:将参考像素点转换为8位参考二进制码。
具体地,将步骤S42中选择的参考像素点转换为8位二进制码,并将其作为参考二进制码。
S43-2:根据第一运算规则对参考二进制码进行运算,得到第一待置换节点在初始二叉树中的位置及其对应的第一置换规则。
在本实施例中,第一待置换节点在初始二叉树中的位置可由层数level以及当前层的节点序号x表示,其中,层数由上而下从0开始,序号由左至右从0开始。
然后按照预设的第一运算规则对参考二进制码进行运算,例如:
可以将参考二进制码的高两位转换为十进制数,然后将该十进制数作为第一待置换节点在初始二叉树中所处的层数level;显然,层数level的取值范围为0~3。
若层数level为0,则将参考二进制码的低六位转换为十进制数,并用该十进制数除以8,得到余数x1,将该余数x1作为第一待置换节点在当前层的序号x,以此得到第一待置换节点在初始二叉树中的位置信息。其中,余数x1的取值范围为0~7。
对每个余数设置对应的置换规则,例如:
若x1为0,可以按照“左、左、左”的置换规则进行置换,即依次对待置换节点与其左边的节点进行置换;当x1为1时,按照“左、左、右”的置换规则进行置换,即先对待置换节点与其左边的节点进行两次置换,然后再与其右边的节点进行置换。类似的,可以设置当x1分别为3、4、5、6、7时,其对应的置换规则依次为:“左、右、右”、“右、左、左”、“右、左、右”、“右、右、左”、“右、右、右”。
若level为1,则将参考二进制码的低六位转换为十进制数,并用该十进制数除以2,得到余数x2,将该余数x2作为第一待置换节点在当前层的序号x,同时,将参考二进制码的低六位对应的十进制数除以4,得到余数x3,并根据x3的值选择对应的置换规则作为第一置换规则。其中,x2的取值范围为0或1,x3的取值范围为0、1、2、3。相应的,对每个余数x3设置对应的置换规则。例如,可以设置余数x3分别为0、1、2、3时,其对应的置换规则为:“左、左”、“左、右”、“右、右”、“右、左”。
若level为2,则将参考二进制码的低六位转换为十进制数,并用该十进制数除以4,得到余数x4,将该余数x4作为第一待置换节点在当前层的序号x,同时,将参考二进制码的低六位对应的十进制数除以2,得到余数x5,并根据x5的值选择对应的置换规则作为第一置换规则。其中,x4的取值范围为0、1、2、3,x5的取值范围为0或1。相应的,对每个x5设置对应的置换规则。例如,可以设置x5分别为0或1时,其对应的置换规则分别为:“左”、“右”。
若level为3,则将参考二进制码的低六位转换为十进制数,并用该十进制数除以8,得到余数x6,将该余数x6作为第一待置换节点在当前层的序号x,并设置置换规则为“邻交换”,也即将该待置换节点与其邻节点进行交换。
以上只是本实施例提供的步骤S43-2的一种实现方式,在实际应用当中,可根据需要随意调整置换规则。
S43-3:按照第一置换规则对第一待置换节点进行第一次迭代,得到第一二叉树。
S43-4:根据第二运算规则对参考二进制码进行运算,得到第二待置换节点在第一二叉树中的位置及其对应的第二置换规则。
在步骤S43-2和S43-3的基础上,将参考二进制码的高两位去掉,得到新的6位参考二进制码。
在本实施例中,第二运算规则参考步骤S43-2的第一运算规则,对上述新的6位参考二进制码进行节点位置选取和规则设定,得到第二待置换节点在第一二叉树中的位置及其对应的第二置换规则。
具体地,将6位参考二进制码的高两位对应的十进制数作为层数,并将6位二进制码去掉高两位后,按照步骤S43-2中相应层数对应选取置换节点序号以及规则。其中,若低位不够六位,在其面前补0。具体过程在此不再赘述。
S43-5:按照第二置换规则对第二待置换节点进行第二次迭代,得到第二二叉树。
S43-6:根据第三运算规则对参考二进制码进行运算,得到第三待置换节点在第二二叉树中的位置及其对应的第三置换规则。
具体地,在步骤S43-4和S43-5的基础上,将步骤S43-4得到的6位参考二进制码的高两位去掉,得到新的4位参考二进制码。参考步骤S43-2的第一运算规则对上述新的4位参考二进制码进行节点位置选取和第三运算规则设定,得到第三待置换节点在第一二叉树中的位置及其对应的第三置换规则。
具体地,将4位参考二进制码的高两位对应的十进制数作为层数,并将4位二进制码去掉高两位后对应的十进制数按照步骤S43-2中相应层数对应选取置换节点序号以及规则。其中,若低位不够六位,在其面前补0。具体过程在此不再赘述。
S43-7:按照第三置换规则对第三待置换节点进行第三次迭代,得到第三二叉树。
S43-8:根据第四运算规则对参考像素点进行运算,得到第四置换规则。
具体地,本实施例采用的第四运算规则为将选取的参考像素点直接对8取余数,得到余数x7,其中,余数x7的取值范围为0、1、2、3、4、5、6、7。参考步骤S43-2中余数x1的规则设定,对余数x7分别设定相应的规则。按照余数具体取值,选取对应的规则作为第四置换规则。
S43-9:按照第四置换规则对第三二叉树从顶层节点进行置换运算,得到新的二叉树。
下面以图6所示的初始二叉树为例,对步骤S43进行举例说明。请参见图7,图7是本发明实施例提供的二叉树混洗算法过程示意图。其中,选取的参考像素点为“221”。
1)进行第一次迭代。
将211转换成8位二进制码,得到11011101,取高两位“11”,对应的十进制数为3,即层数level为3。根据低六位“011101”对应的十进制数29对8取余,得到余数x6为5,也即第一次迭代的第一待置换点为第三层中序号为5的节点,即节点20,按照预设的规则,执行“邻交换”,得到如图7a所示的第一二叉树。
2)进行第二次迭代。
将参考二进制码11011101去掉高两位,得到6位二进制码011101,其高两位01对应的十进制数为1,也即本次迭代的层数level为1。然后将6位二进制码011101去掉高两位得到1101,在其前面补0得到6为二进制数001101及其对应的十进制数13,按照规则,将13对2取余,得到余数x2为1,即本次迭代的第二待置换点为第1层序号为1的节点,即节点8。同时,将低六位对应的十进制数13对4取余,得到余数x3为1,选取对应的规则为“左、右”,按照该规则对第一二叉树进行置换,得到第二二叉树,如图7b所示。
3)进行第三次迭代。
具体地,在第二次迭代的基础上,将6为二进制码011101的高两位去掉,得到4位二进制码1101,其高两位11对应的十进制数为3,也即本次迭代的层数level为3。然后将该4位二进制码高两位去掉,并在其前面补0,得到000001及其对应的十进制数1,按照规则,将1对8取余,得到余数x6为1,即本次迭代的第三待置换点为第3层序号为1的节点,即节点29。按照该规则对该节点进行“邻交换”,得到第三二叉树,如图7c所示。
4)进行整体置换。
将像素点211直接对8取余,得到余数x7为3,按照预设规则,其对应的置换规则为:“左、右、右”,按此规则,对第三二叉树从第0层开始进行置换,得到新的二叉树,如图7d所示。
至此,完成二叉树的混洗过程。
S44:将新的二叉树按照一定规则遍历,并以一定主顺序存储在矩阵中,得到第二模板矩阵,记为SA。
具体地,将最终得到的新的二叉树按照根右左的方式遍历并以行主顺序存储在矩阵中,请参见图8,图8是图4所示的像素矩阵经混洗变换后的得到的第二模板矩阵。
在本实施例中,步骤S3和S4的顺序还可以互换,不影响本方案的实施。
S5:对第二模板矩阵进行特征提取,得到待验证的特征向量串。
在本实施例中,采用ResNet神经网络模型对第二模板矩阵SA进行特征提取,得到待验证的特征向量串PA。
该方法将ResNet神经网络思想应用于生物特征图像的特征提取中,可结合生物特征特点,对网络模型进行设计命名。例如,本实施例采用指纹模板,则可设计并命名网络模型为FingerANet。请参见表1,表1是本实施例提供FingerANet网络模型的详细结构参数。其中,残差块使用三层残差函数可以降低参数的数目、减少计算量、提高训练效率。此外,该网络模型的深度设计为50层,是因为对于指纹图像来说,不需要过深的网络,同时结合Triplet loss与Softmax损失函数,使得指纹特征提取有更高的准确性。
表1详细模型结构参数
本实施例提供的方法在加密域匹配阶段利用神经网络模型提取图像特征进行匹配,与传统图像匹配算法相比鲁棒性更高,受生物特征图像类间相似度影响较小。
S6:将待验证的特征向量串与预先存储的注册生物特征模板矩阵对应的注册特征向量串进行匹配,同时将待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果。
具体地,在进行匹配之前,还需要:
x1)获取待注册生物特征图像。
x2)对待注册生物特征图像进行像素点插值变换,得到变换后的模板矩阵。
x3)根据变换后的模板矩阵生成注册哈希校验码。
x4)对变换后的模板矩阵进行基于二叉树混洗处理,得到注册模板矩阵。
x5)将注册哈希校验码和注册模板矩阵存储于数据库中,以用于生物特征认证。
本实施例对生物特征模板进行基于哈希表的插值运算,当注册模板丢失时,可以任意更换新的插值数,并发布新的模板,这使得系统具有较好的可撤销性及无关联性。
请参见图9,图9是本发明实施例提供另一种基于二叉树混洗的生物特征模板保护方法流程示意图。
本实施例以指纹图像为例,将指纹模板保护分为两个阶段,即注册阶段和认证阶段。
在认证阶段,进行指纹认证之前,需要经过注册阶段,以保存注册指纹信息。
具体地,该过程与前述认证阶段的过程相同,即获取注册指纹图像A′;对指纹图像A′进行插值变换,得到模板矩阵MA′;提取插值生成注册哈希校验码HA′,同时,对模板矩阵MA′进行像素提取及像素混洗,得到注册模板矩阵SA′。将注册哈希校验码HA′和注册模板矩阵SA′保存在数据库中,以当需要进行匹配时,提取出注册模板矩阵SA′的特征值PA′进行匹配。
本实施例的匹配操作在交换域进行,具体地:
根据待验证的特征向量串PA和所述注册特征向量串PA′计算欧式距离,若判断欧式距离小于预设阈值,且待验证的哈希校验码HA与注册哈希校验码HA′相同,则验证通过;否则,验证失败。
本发明提供的基于二叉树混洗的模板保护方法,利用原始图像插值生成哈希校验码,并与二叉树混洗后的生物特征模板形成双重安全机制,攻击者必须破解哈希校验码且恢复虚拟生物特征模板才能攻击成功,具有较高的安全性;且本方法直接对原始生物特征图像进行变换保护,不受生物特征图像的细节点个数影响,提高了算法效率以及可靠性。
此外,本发明提供的方法可以有效保护原始生物特征信息,使其不被非法窃取,能够促进信息产业安全发展,具有重要的市场价值。
实施例二
在上述实施例一的基础上,本实施例提供了一种基于二叉树混洗的生物特征模板保护装置,请参见图10,图10是本发明实施例提供的基于二叉树混洗的生物特征模板保护装置结构示意图,包括:
数据采集模块1,用于获取待验证生物特征图像;
插值变换模块2,用于对待验证生物特征图像进行像素点插值变换,得到第一模板矩阵;
哈希码生成模块3,用于根据第一模板矩阵生成待验证的哈希校验码;
二叉树混洗模块4,用于对第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵;
特征提取模块5,用于对第二模板矩阵进行特征提取,得到待验证的特征向量串;
信息匹配模块6,用于将待验证的特征值与预先存储的注册生物特征模板矩阵对应的注册特征值进行匹配,同时将待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果。
在本实施例中,数据采集模块1还用于获取待注册生物特征图像;
插值变换模块2还用于对待注册生物特征图像进行像素点插值变换,得到变换后的模板矩阵;
哈希码生成模块3还用于根据变换后的模板矩阵生成注册哈希校验码;
二叉树混洗模块4还用于对变换后的模板矩阵进行基于二叉树混洗处理,得到注册模板矩阵;
特征提取模块5还用于对注册模板矩阵进行特征提取,得到注册特征向量串。
本实施例提供基于二叉树混洗的生物特征模板保护装置可实现上述实施例一所述的基于二叉树混洗的生物特征模板保护方法,具体过程在此不再赘述。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (7)
1.一种基于二叉树混洗的生物特征模板保护方法,其特征在于,包括:
获取待验证生物特征图像;
对所述待验证生物特征图像进行像素点插值变换,得到第一模板矩阵;
根据所述第一模板矩阵生成待验证的哈希校验码;
对所述第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵;
对所述第二模板矩阵进行特征提取,得到待验证的特征向量串;
将所述待验证的特征向量串与预先存储的注册生物模板矩阵对应的注册特征向量串进行匹配,同时将所述待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果;其中,
对所述待验证生物特征图像进行像素点插值变换,得到第一模板矩阵,包括:
对所述待验证生物特征图像进行像素提取,得到原始生物特征模板矩阵;
根据所述原始生物特征模板矩阵设置哈希函数,以得到所述原始生物特征模板矩阵中的非零像素点对应的哈希地址;
在所述原始生物特征模板矩阵中找到与所述哈希地址对应的非零像素点,并进行插值变换,得到第一模板矩阵;其中,所述原始生物特征模板矩阵的偶数行像素点按照第一插值进行插值变换,奇数行像素点按照第二插值进行插值变换;
对所述第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵,包括:
对所述第一模板矩阵进行并行图像处理,得到若干子像素矩阵;
在所述子像素矩阵中选取一个像素点作为参考像素点,并根据混洗算法将所述子像素矩阵中的其余像素点化为初始二叉树;
根据所述参考像素点对所述初始二叉树进行节点置换运算,得到新的二叉树,具体包括:
将所述参考像素点转换为8位参考二进制码;
根据第一运算规则对所述参考二进制码进行运算,得到第一待置换节点在所述初始二叉树中的位置及其对应的第一置换规则;
按照所述第一置换规则对所述第一待置换节点进行第一次迭代,得到第一二叉树;
根据第二运算规则对所述参考二进制码进行运算,得到第二待置换节点在所述第一二叉树中的位置及其对应的第二置换规则;
按照所述第二置换规则对所述第二待置换节点进行第二次迭代,得到第二二叉树;
根据第三运算规则对所述参考二进制码进行运算,得到第三待置换节点在所述第二二叉树中的位置及其对应的第三置换规则;
按照所述第三置换规则对所述第三待置换节点进行第三次迭代,得到第三二叉树;
根据第四运算规则对所述参考像素点进行运算,得到第四置换规则;
按照所述第四置换规则对所述第三二叉树从顶层节点进行置换运算,得到新的二叉树;
将所有新的二叉树按照一定规则遍历,并以一定主顺序存储在矩阵中,得到第二模板矩阵。
2.根据权利要求1所述的基于二叉树混洗的生物特征模板保护方法,其特征在于,在将所述待验证的特征值与预先存储的注册生物特征模板矩阵对应的注册特征值进行匹配之前,还包括:
获取待注册生物特征图像;
对所述待注册生物特征图像进行像素点插值变换,得到变换后的模板矩阵;
根据所述变换后的模板矩阵生成注册哈希校验码;
对所述变换后的模板矩阵进行基于二叉树混洗处理,得到注册模板矩阵;
将所述注册哈希校验码和所述注册模板矩阵存储于数据库中,以用于生物特征认证。
3.根据权利要求1所述的基于二叉树混洗的生物特征模板保护方法,其特征在于,根据所述第一模板矩阵生成待验证的哈希校验码,包括:
提取所述第一模板矩阵的第一插值a和第二插值b;
分别将所述第一插值a和所述第二插值b转换为8位二进制串Sa和Sb,并拼接成16位二进制数Sab;
分别记录所述16位二进制Sab中值为1的位置,同时将该位置序号按顺序拼成一个十进制整数并将其转化为二进制数Dab;其中,所述位置序号是从左向右从0开始计算的;
利用SHA-2哈希算法将所述二进制数Dab加密为256位字符串,以生成待验证的哈希校验码。
4.根据权利要求1所述的基于二叉树混洗的生物特征模板保护方法,其特征在于,对所述第二模板矩阵进行特征提取,得到待验证的特征向量串,包括:
采用ResNet神经网络模型对所述第二模板矩阵进行特征提取,得到待验证的特征向量串;其中,所述ResNet神经网络的残差块使用三层残差函数。
5.根据权利要求1所述的基于二叉树混洗的生物特征模板保护方法,其特征在于,将所述待验证的特征向量串与预先存储的注册生物特征模板矩阵对应的注册特征向量串进行匹配,同时将所述待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果,包括:
根据所述待验证的特征向量串和所述注册特征向量串计算欧式距离;
若判断所述欧式距离小于预设阈值,且所述待验证的哈希校验码与所述注册哈希校验码相同,则验证通过;
否则,验证失败。
6.一种基于二叉树混洗的生物特征模板保护装置,其特征在于,包括:
数据采集模块(1),用于获取待验证生物特征图像;
插值变换模块(2),用于对所述待验证生物特征图像进行像素点插值变换,得到第一模板矩阵;
哈希码生成模块(3),用于根据所述第一模板矩阵生成待验证的哈希校验码;
二叉树混洗模块(4),用于对所述第一模板矩阵进行基于二叉树混洗处理,得到第二模板矩阵;
特征提取模块(5),用于对所述第二模板矩阵进行特征提取,得到待验证的特征向量串;
信息匹配模块(6),用于将所述待验证的特征向量串与预先存储的注册生物特征模板矩阵对应的注册特征向量串进行匹配,同时将所述待验证的哈希校验码与预先存储的注册哈希校验码进行匹配,并输出验证结果;
其中,所述插值变换模块(2)具体用于:
对所述待验证生物特征图像进行像素提取,得到原始生物特征模板矩阵;
根据所述原始生物特征模板矩阵设置哈希函数,以得到所述原始生物特征模板矩阵中的非零像素点对应的哈希地址;
在所述原始生物特征模板矩阵中找到与所述哈希地址对应的非零像素点,并进行插值变换,得到第一模板矩阵;其中,所述原始生物特征模板矩阵的偶数行像素点按照第一插值进行插值变换,奇数行像素点按照第二插值进行插值变换;
所述二叉树混洗模块(4)具体用于:
对所述第一模板矩阵进行并行图像处理,得到若干子像素矩阵;
在所述子像素矩阵中选取一个像素点作为参考像素点,并根据混洗算法将所述子像素矩阵中的其余像素点化为初始二叉树;
根据所述参考像素点对所述初始二叉树进行节点置换运算,得到新的二叉树,具体包括:
将所述参考像素点转换为8位参考二进制码;
根据第一运算规则对所述参考二进制码进行运算,得到第一待置换节点在所述初始二叉树中的位置及其对应的第一置换规则;
按照所述第一置换规则对所述第一待置换节点进行第一次迭代,得到第一二叉树;
根据第二运算规则对所述参考二进制码进行运算,得到第二待置换节点在所述第一二叉树中的位置及其对应的第二置换规则;
按照所述第二置换规则对所述第二待置换节点进行第二次迭代,得到第二二叉树;
根据第三运算规则对所述参考二进制码进行运算,得到第三待置换节点在所述第二二叉树中的位置及其对应的第三置换规则;
按照所述第三置换规则对所述第三待置换节点进行第三次迭代,得到第三二叉树;
根据第四运算规则对所述参考像素点进行运算,得到第四置换规则;
按照所述第四置换规则对所述第三二叉树从顶层节点进行置换运算,得到新的二叉树;
将所有新的二叉树按照一定规则遍历,并以一定主顺序存储在矩阵中,得到第二模板矩阵。
7.根据权利要求6所述的基于二叉树混洗的生物特征模板保护装置,其特征在于,所述数据采集模块(1)还用于获取待注册生物特征图像;
所述插值变换模块(2)还用于对所述待注册生物特征图像进行像素点插值变换,得到变换后的模板矩阵;
所述哈希码生成模块(3)还用于根据所述变换后的模板矩阵生成注册哈希校验码;
所述二叉树混洗模块(4)还用于对所述变换后的模板矩阵进行基于二叉树混洗处理,得到注册模板矩阵;
所述特征提取模块(5)还用于对所述注册模板矩阵进行特征提取,得到注册特征向量串。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011085867.3A CN112364319B (zh) | 2020-10-12 | 2020-10-12 | 一种基于二叉树混洗的生物特征模板保护方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011085867.3A CN112364319B (zh) | 2020-10-12 | 2020-10-12 | 一种基于二叉树混洗的生物特征模板保护方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112364319A CN112364319A (zh) | 2021-02-12 |
CN112364319B true CN112364319B (zh) | 2022-12-23 |
Family
ID=74507626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011085867.3A Active CN112364319B (zh) | 2020-10-12 | 2020-10-12 | 一种基于二叉树混洗的生物特征模板保护方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112364319B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113286013B (zh) * | 2021-05-19 | 2023-11-07 | 苏州瑞立思科技有限公司 | 一种子网匹配方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105761254A (zh) * | 2016-02-04 | 2016-07-13 | 浙江工商大学 | 基于图像特征的眼底图像配准方法 |
CN109727196A (zh) * | 2018-12-26 | 2019-05-07 | 呈像科技(北京)有限公司 | 图像内插处理方法 |
CN109816590A (zh) * | 2018-12-26 | 2019-05-28 | 呈像科技(北京)有限公司 | 图像外插处理方法 |
CN110245515A (zh) * | 2019-05-08 | 2019-09-17 | 北京大学 | 一种面向hdfs访问模式的保护方法和系统 |
CN111027404A (zh) * | 2019-11-15 | 2020-04-17 | 西安电子科技大学 | 一种基于指纹保护模板的指纹识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109479138B (zh) * | 2016-07-13 | 2023-11-03 | 韩国电子通信研究院 | 图像编码/解码方法和装置 |
-
2020
- 2020-10-12 CN CN202011085867.3A patent/CN112364319B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105761254A (zh) * | 2016-02-04 | 2016-07-13 | 浙江工商大学 | 基于图像特征的眼底图像配准方法 |
CN109727196A (zh) * | 2018-12-26 | 2019-05-07 | 呈像科技(北京)有限公司 | 图像内插处理方法 |
CN109816590A (zh) * | 2018-12-26 | 2019-05-28 | 呈像科技(北京)有限公司 | 图像外插处理方法 |
CN110245515A (zh) * | 2019-05-08 | 2019-09-17 | 北京大学 | 一种面向hdfs访问模式的保护方法和系统 |
CN111027404A (zh) * | 2019-11-15 | 2020-04-17 | 西安电子科技大学 | 一种基于指纹保护模板的指纹识别方法 |
Non-Patent Citations (3)
Title |
---|
A Generic Binary Tree-Based Progressive Demosaicking Method for Multispectral Filter Array;Lidan Miao 等;《2006 International Conference on Image Processing》;20061011;第3221-3224页 * |
图像通用隐写检测中的多特征融合方法;谢振哲;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160915(第9期);第I138-14页 * |
基于BWT和小波树的数据压缩算法;赵恒;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160315;第I138-317页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112364319A (zh) | 2021-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lee et al. | Biometric key binding: Fuzzy vault based on iris images | |
Yang et al. | An alignment-free fingerprint bio-cryptosystem based on modified Voronoi neighbor structures | |
Lee et al. | A new method for generating an invariant iris private key based on the fuzzy vault system | |
CN102510330B (zh) | 一种基于指纹特征数据与匹配算法的新型模糊金库方法 | |
CN105553657A (zh) | 一种特征级融合的指纹模糊金库实现方法 | |
CN106936586A (zh) | 一种基于指纹比特串和纠错编码的生物密钥提取方法 | |
Nazari et al. | Securing templates in a face recognition system using error-correcting output code and chaos theory | |
Tran et al. | A multi-filter fingerprint matching framework for cancelable template design | |
CN103873253B (zh) | 一种人类指纹生物密钥生成方法 | |
CN112347855A (zh) | 一种基于深度学习的生物特征模板保护方法及装置 | |
CN111027404A (zh) | 一种基于指纹保护模板的指纹识别方法 | |
CN102710417A (zh) | 一种基于指纹特征与密钥交换协议的模糊金库方法 | |
CN112364319B (zh) | 一种基于二叉树混洗的生物特征模板保护方法及装置 | |
CN102710657A (zh) | 一种一次性口令生成方法及系统 | |
Asthana et al. | A novel biometric crypto system based on cryptographic key binding with user biometrics | |
Jin et al. | Secure minutiae-based fingerprint templates using random triangle hashing | |
CN104376307A (zh) | 一种指纹图像信息编码方法 | |
CN113128364B (zh) | 一种基于深度神经网络编码的指纹生物密钥生成方法 | |
Jin et al. | Generating revocable fingerprint template using minutiae pair representation | |
Nandini et al. | Efficient cryptographic key generation from fingerprint using symmetric hash functions | |
Fouad et al. | A fuzzy vault implementation for securing revocable iris templates | |
Freire et al. | Dynamic signature verification with template protection using helper data | |
Eldin et al. | Cancellable Multi-Biometric Feature Veins Template Generation Based on SHA-3 Hashing. | |
CN104104501A (zh) | 一种基于指纹特征与有限乘法群的共享模糊金库方法 | |
Baghel et al. | Adaptation of pair-polar structures to compute a secure and alignment-free fingerprint template |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |