基于深度学习的虹膜图像加密算法

2020-04-07 15:25朱泽烁暨南大学智能科学与工程学院
数码世界 2020年3期
关键词:加密算法虹膜特征向量

朱泽烁 暨南大学智能科学与工程学院

1 引言

在密码学中,密钥是成功实现加解密的关键。然而,传统的图像加密算法多数都涉及到密钥的安全传输和管理困难问题。虹膜是人体的生物特征之一,具有唯一性、特征信息丰富和抗攻击能力强等特点,拥有优秀的加密潜质。本文提出了一种基于深度学习的虹膜图像加密算法,通过深度学习优化虹膜特征提取,使得加解密精度与安全性大幅度提升。

2 基于深度学习的虹膜图像加密算法

1.1 基于深度学习的虹膜特征提取算法

1.1.1 图像预处理

算法中对虹膜图像的预处理主要包括虹膜定位、分割与归一化。其中,虹膜内边缘定位时主要采用灰色投影法[2]和横移法,外边缘定位采用微积分算子方法,虹膜归一化则采用线段提取算法。

1.1.2 虹膜特征提取

算法采用CNN对虹膜数据集进行特征提取。同时,为了解决虹膜图像采集难度大造成样本较少的问题,引入了SAE模型。通过它对图像块提取后的虹膜进行训练,达到初始化CNN参数的目的,然后采用CNN对整幅虹膜图像进行训练以提取最终的虹膜特征。双模型的结合不仅解决了样本较少的问题,而且更保障了图像加密的安全性。具体步骤如下:

(1)对虹膜图像P0进行预处理得到P1;

(2)对P1进行图像块提取P2,组成SAE数据集x;

(3)将数据集x用于训练SAE模型,然后对训练好的参数矩阵进行区间归一化,作为CNN的卷积核和全连接层权值,计算方法如式(2-1)-(2-4)。

其中nk代表第k层SAE节点数,为避免CNN模型参数初始化失误而导致的梯度消失或者梯度爆炸等现象,算法为初始化参数增加区间限制

(4)加密方将采集的虹膜图像输入训练好的CNN模型,从中提取特征向量Vn,特征向量的维数n可根据采用的图像加密算法进行调整。

(5)为保证提取出来的加解密特征向量的一致性,对提取出来的图像使用RS码进行纠错。

1.2 基于AES的图像加密算法

(3) 利 用Logistic映 射 产 生 一 个 混 沌 序 列作为图像像素进行横向移动的位数,对图像每行像素进行行移位。

(4)将图像的每列像素根据第三步的对换方法置换到该列的另一位置,记为。

(6)回到第二步进行下一轮加密,一共有10轮加密。其中结尾轮稍有不同,减少了列置换部分。

解密时则是执行上述过程的逆变换。

2 实验结果与分析

2.1 实验结果

为了提高算法的可信度和预测性,实验虹膜数据采用CASIA虹膜数据库公共版。原始数据集中含有睫毛等干扰因素,首先通过虹膜定位、分割和归一化对图像进行预处理。

预处理后的图像只包含虹膜部分,将其作为数据集进行SAE模型与CNN模型的训练。数据集一共包含虹膜图像400张,一共10类,每一类40张,其中300张作为训练样本,100张作为测试样本。SAE与CNN均采用五层网络,CNN卷积核大小为5×5,降采样步长为2×2,第一卷积层生成特征图个数为6,第二卷积层为12。由CNN提取出来的特征向量经过RS码后即为最终密钥。

使用生成的密钥对原始图像进行基于AES的图像加密算法,结果如图3-1所示。由结果可知,对图像加解密成功,原始图像与解密图像完全一致。

图3 -1基于深度学习的虹膜图像加密与解密结果

2.2 实验分析

为验证算法的可行性,本文主要从安全性方面对算法进行评估。在仅有RS纠错码时,只能通过猜测对密钥进行攻击。若RS码容错能力T=92,那么长度为256的密钥被破解的几率为

,表3-1为本算法与其余算法密钥破解几率对比表。

表3 -1 密钥破解几率对比表

由此可见,引入深度学习进行密钥生成,可极大地降低密钥被破解的几率,提高图像加密的安全性。

3 结论

本文提出基于深度学习的虹膜图像加密算法,该算法利用SAE有限制参数初始化算法实现对CNN模型参数的初始化,然后通过CNN模型提取特征向量作为密钥,最后使用AES算法对图像进行加密实验。实验结果表明,利用该算法得到的加密图像的精度与安全性更高,保护图像信息效果更好。

猜你喜欢
加密算法虹膜特征向量
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
双眼虹膜劈裂症一例
克罗内克积的特征向量
加密文档排序中保序加密算法的最优化选取
“刷眼”如何开启孩子回家之门
基于整数矩阵乘法的图像加密算法
一种基于虹膜识别技术的车辆启动系统
三个高阶微分方程的解法研究
“刷眼”如何开启孩子回家之门
教育云平台的敏感信息保护技术研究