发明名称 一种基于生物特征水印的安全身份认证方法
摘要 本发明公开了一种基于生物特征水印的安全身份认证方法,包含生物特征水印的嵌入和认证两个阶段,水印嵌入阶段包括:步骤1:宿主生物特征图像采集,步骤2:待嵌入生物特征提取,步骤3:水印生成,步骤4:宿主图像显著性区域检测,步骤5:水印嵌入;生物特征认证阶段段包括:步骤(1):水印提取,步骤(2):特征解码,步骤(3):水印认证,步骤(4):多生物特征身份认证。本发明中每次认证事务,均由可靠第三方单独分配水印加密密钥K1,以及水印嵌入密钥K2,提高了安全性。而且本发明嵌入水印时,通过对宿主图像进行显著性分析,选择合适的嵌入位置和强度,减小水印对生物特征宿主识别性能的影响。
申请公布号 CN102306305B 申请公布日期 2013.04.17
申请号 CN201110188208.7 申请日期 2011.07.06
申请人 北京航空航天大学 发明人 王蕴红;马彬;张兆翔;李春雷;徐涛
分类号 H04L9/00(2006.01)I 主分类号 H04L9/00(2006.01)I
代理机构 北京永创新实专利事务所 11121 代理人 赵文利
主权项 1.一种基于生物特征水印的安全身份认证方法,其特征在于,当宿主生物特征信息为人脸图像,待嵌入生物特征为指纹时,具体为: 一、水印嵌入阶段; 具体包括以下几个步骤: 步骤1:宿主生物特征图像采集 采集待认证身份用户的人脸图像,作为宿主生物特征图像,记为I<sub>face</sub>; 步骤2:待嵌入生物特征提取 再次采集步骤1中的同一个用户的指纹图像,提取细节点信息作为待嵌入特征,选取距离中心点最近的20个细节点作为待嵌入特征:V=[v<sub>1</sub>,v<sub>2</sub>,…,v<sub>20</sub>];v<sub>k</sub>=(x<sub>k</sub>,y<sub>k</sub>,θ<sub>k</sub>),k∈[1,20]表示第k个细节点,其中(x<sub>k</sub>,y<sub>k</sub>)为第k个细节点的二维坐标,其数值被量化为[0,255]区间中的整数,θ<sub>k</sub>为第k个细节点处脊线的切线方向,量化为[0,360]区间中的偶数;特征向量的每一维使用8位无符号整型数据表示,最终的指纹细节点特征向量V包含8×3×20=480位; 步骤3:水印生成 将步骤2中提取的特征向量V直接按位展开,得到480位的二进制序列B,使用可靠第三方密钥K<sub>2</sub>对二进制序列B进行加密,具体为:使用K<sub>2</sub>作为随机数发生器的种子,生成一个与B相同长度的随机二进制序列R,按照如下公式,生成水印序列: <img file="FDA00002773020000011.GIF" wi="215" he="39" />其中<img file="FDA00002773020000012.GIF" wi="38" he="39" />为按位异或运算符,W为生成的待嵌入水印序列;步骤4:宿主图像显著性检测 对于作为宿主的人脸图像I<sub>face</sub>,使用计算机视觉中的显著性检测方法,计算其显著性分布图; 步骤5:水印嵌入 将人脸图像I<sub>face</sub>,分成尺寸为m×n的不交叠图像块;根据步骤4中的显著性检测结果,选取显著性值占前α%的图像块,并使用可靠第三方分配的密钥K<sub>2</sub>,将其随机地平均分成480组;对于每一组图像块Λ<sub>i</sub>,按照公式(1),对像素的灰度平均值进行量化; <img file="FDA00002773020000013.GIF" wi="1177" he="172" />其中<img file="FDA00002773020000014.GIF" wi="56" he="65" />表示向上取整操作符,返回一个不小于自变量的最小整数,w<sub>i</sub>={0,1}为待嵌入的一个水印位,Q为量化步长,控制水印嵌入强度,取[2,10]之间的整数值;Q值越大,对宿主图像造成的失真越明显,水印鲁棒性越强;最后,通过修改中像素的灰度值,将其均值调整为u<sub>i</sub>′,即得到嵌入水印后的图像块Λ<sub>i</sub>′;遍历所有的图像块Λ<sub>i</sub>,i=1,2,...,480,重复上述操作,即得到 嵌入水印后的人脸图像I′<sub>face</sub>;二、生物特征认证; 步骤(1):水印提取 对于一副待认证的人脸生物特征图像<img file="FDA00002773020000021.GIF" wi="105" he="67" />首先进行水印提取,将<img file="FDA00002773020000022.GIF" wi="78" he="66" />分为m×n不交叠的图像块;根据嵌入过程中使用的密钥K<sub>2</sub>重新定位用于水印嵌入的480组图像块<img file="FDA00002773020000023.GIF" wi="81" he="61" />i=1,2,...,480;对其中的第k组图像块<img file="FDA00002773020000024.GIF" wi="84" he="62" />计算其像素灰度的平均值<img file="FDA00002773020000025.GIF" wi="81" he="74" />并利用公式(2)提取水印位<img file="FDA00002773020000026.GIF" wi="87" he="74" /><img file="FDA00002773020000027.GIF" wi="1270" he="187" />其中mod为取模运算符,[·]为取整运算符,Q为水印的量化步长参数;将提取出的所有水印位<img file="FDA00002773020000028.GIF" wi="88" he="74" />k=1,2,…,480,顺序排列,即得到提取出的水印序列<img file="FDA00002773020000029.GIF" wi="442" he="62" />步骤(2):特征解码 使用K<sub>2</sub>作为随机数发生器的种子,生成一个与W<sup>*</sup>相同长度的随机二进制序列R,按照如下公式,得到解密后的二进制序列B*: <img file="FDA000027730200000210.GIF" wi="257" he="39" />将480位的二进制序列B*,每8位一组转换为十进制的无符号整型数据,即得到提取出的60维指纹细节点特征向量V*; 步骤3:水印认证 使用模式分类方法,验证提取出的特征向量V*的有效性,分别使用指纹细节点和随机点集作为正负样本训练SVM分类器,并用于判别特征向量V*的有效性;如果V*是有效的指纹细节点特征,则认为生物特征数据的来源可靠,进入步骤(4);否则,拒绝认证请求,认证失败; 步骤(4):多生物特征身份认证 如果步骤(3)的水印认证通过,则同时使用水印生物特征和宿主生物特征进行多生物特征识别,使用分数层融合策略,分别使用提取出的指纹细节点特征V*和宿主人脸图像<img file="FDA000027730200000211.GIF" wi="106" he="67" />进行指纹识别和人脸识别,将二者的分数进行加权求和,得到最终的身份认证结果。
地址 100191 北京市海淀区学院路37号