一种加密图像的可逆信息隐藏方法转让专利

申请号 : CN201610157487.3

文献号 : CN105847629B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵腊生张强

申请人 : 大连大学

摘要 :

一种加密图像的可逆信息隐藏方法属于密码学和信息安全技术领域,该方法包括以下步骤:步骤1:依据加密密钥对原始明文图像进行加密,生成加密图像;步骤2:依据信息隐藏密钥在加密图像上嵌入秘密信息,生成含有秘密信息的加密图像;步骤3:依据加密密钥对含有秘密信息的加密图像进行解密,生成含有秘密信息的解密图像,并依据隐藏密钥实现明文图像的恢复和秘密信息的提取。本发明的有益效果是:该方法增加了参与波动函数计算的有效像素数量,提高了解密图像的质量,是一种性能高且稳定的加密图像可逆信息隐藏方法。

权利要求 :

1.一种加密图像的可逆信息隐藏方法,其特征在于,该方法包括如下步骤:

第一步、对原始明文图像依据加密密钥进行加密,将原始明文图像的像素灰度值分解为二进制比特序列,二进制比特序列与伪随机二进制序列通过异或运算生成加密图像;上述伪随机二进制序列采用四舍五入取整Logistic混沌映射序列生成,上述加密密钥由Logistic混沌映射的初始参数、初始值及序列起始位置组成;

第二步、依据信息隐藏密钥在第一步所述的加密图像上嵌入秘密信息,生成含有秘密信息的加密图像,具体步骤是:首先将第一步所述的加密图像分割成大小为s×s的不重叠图像块,然后将图像块内所有像素按棋盘格分布模式划分为两个像素集S0和S1,嵌入的秘密信息为伪随机二进制序列,根据信息嵌入密钥选定嵌入图像块,当嵌入的秘密信息为1时,将选定图像块的像素集S1内所有像素的三个最低有效位取反;当嵌入的秘密信息为0时,图像块内所有像素保持不变;上述信息隐藏密钥为秘密信息嵌入图像块的选择顺序,由Logistic混沌映射序列按大小排序生成;

第三步、依据第一步所述的加密密钥对第二步所述含有秘密信息的加密图像进行解密,生成含有秘密信息的解密图像,并依据第二步所述的信息隐藏密钥实现明文图像的恢复和秘密信息的提取,具体步骤是:以加密时所用的伪随机二进制序列对带隐藏信息的密文图像对应比特直接进行异或运算生成解密图像,解密图像按信息隐藏时的分块规则进行分块,将图像块的像素集S1内所有像素的三个最低有效位取反,然后根据图像块像素取反前后的图像相关性波动函数实现原始明文图像的恢复和信息提取,具体步骤为:对解密后的每一个图像块,依次按波动性函数公式分别获得该图像块像素集S1取反前后的波动函数值f和f',如果f<f',则该图像块隐藏的秘密信息为0,则解密后的该图像块即为恢复的图像块,否则秘密信息为1,该图像块像素集S1内所有像素的三个最低有效位取反后的图像块即为恢复的图像块,同时,根据隐藏密钥,可获得秘密信息序列;

上述相关性波动函数如下:

其中,Pu,v为图像块内当前像素的灰度值,Pavg为与其相邻的横向和纵向的所有像素的灰度值平均值,Pavg的计算公式如下:

说明书 :

一种加密图像的可逆信息隐藏方法

技术领域

[0001] 本发明属于密码学和信息安全技术领域,具体涉及一种加密图像的可逆信息隐藏方法。

背景技术

[0002] 近年来,随着网络、云计算等技术的发展,对信息安全技术提出了新的要求,传统的加密和明文信息隐藏方式已逐渐不能满足用户对信息安全的差异化需求,为了更有效地保护这些用户的隐私文件,基于加密图像的信息隐藏研究引起了研究者的关注。由于加密图像破坏了明文图像的许多统计特性,明文图像中许多有效的可逆信息隐藏方法不能直接在加密图像上使用,这些给加密图像的可逆信息隐藏研究带来了极大的挑战。从现有的文献资料看,关于加密图像的可逆信息隐藏方法主要可以分为两类,一类是通过加密前的图像压缩操作,预留出信息隐藏空间,加密后直接在预留出的空间中嵌入信息;另一类是直接在图像加密后通过信息隐藏操作,实现加密域的信息隐藏。严格意义上讲,第一类方法不能算作加密域的信息隐藏,因为它的隐藏空间是在加密前预留出的,而不是利用加密后的图像空间。因此,第二类方法是这类问题的主要研究方法。本发明也属于第二类方法。然而,我们通过对现有方法的研究分析发现,当前多数方法在进行原始图像恢复和秘密信息提取时,常采用对比图像块内全部像素的三个最低有效位取反前与取反后图像块相关性值大小的方式,但当原始载体图像存在较大的局部光滑区域时,这种方式会使参与相关性值比较的有效像素作用减弱或失效,从而可能降低算法的性能。

发明内容

[0003] 为了解决现有技术存在的在原始载体图像存在较大局部光滑区域时,由于参与相关性值比较运算的有效像素作用减弱或失效造成的算法性能下降的技术问题,本发明提供一种性能高且稳定的加密图像可逆信息隐藏方法。
[0004] 为了解决上述技术问题,本发明所采取的技术方案如下:
[0005] 一种加密图像的可逆信息隐藏方法,其包括如下步骤:
[0006] 第一步、对原始明文图像依据加密密钥进行加密,将原始明文图像的像素灰度值分解为二进制比特序列,二进制比特序列与伪随机二进制序列通过异或运算生成加密图像;上述伪随机二进制序列采用四舍五入取整Logistic混沌映射序列生成,上述加密密钥由Logistic混沌映射的初始参数、初始值及序列起始位置组成;
[0007] 第二步、依据信息隐藏密钥在第一步所述的加密图像上嵌入秘密信息,生成含有秘密信息的加密图像,具体步骤是:首先将第一步所述的加密图像分割成大小为s×s的不重叠图像块,然后将图像块内所有像素按棋盘格分布模式划分为两个像素集S0和S1,嵌入的秘密信息为伪随机二进制序列,根据信息嵌入密钥选定嵌入图像块,当嵌入的秘密信息为1时,将选定图像块的像素集S1内所有像素的三个最低有效位取反;当嵌入的秘密信息为0时,图像块内所有像素保持不变;上述信息隐藏密钥为秘密信息嵌入图像块的选择顺序,由Logistic混沌映射序列按大小排序生成;
[0008] 第三步、依据第一步所述的加密密钥对第二步所述含有秘密信息的加密图像进行解密,生成含有秘密信息的解密图像,并依据第二步所述的信息隐藏密钥实现明文图像的恢复和秘密信息的提取,具体步骤是:以加密时所用的伪随机二进制序列对带隐藏信息的密文图像对应比特直接进行异或运算生成解密图像,解密图像按信息隐藏时的分块规则进行分块,将图像块的像素集S1内所有像素的三个最低有效位取反,然后根据图像块像素取反前后的图像相关性波动函数实现原始明文图像的恢复和信息提取;上述相关性波动函数如下:
[0009]
[0010] 其中,Pu,v为图像块内当前像素的灰度值,Pavg为与其相邻的横向和纵向的所有像素的灰度值平均值,Pavg的计算公式如下:
[0011]
[0012] 本发明的有益效果是:该方法首先将现有技术中常用的图像块内两个像素集随机划分方式改变为棋盘格划分方式,然后调整了图像块内特定像素集三个最低有效位的翻转策略,并进一步采用基于全像素运算的波动函数判定翻转操作。该方法增加了参与波动函数计算的有效像素数量,提高了解密图像的质量,是一种性能高且稳定的加密图像可逆信息隐藏方法。

附图说明

[0013] 图1是本发明加密图像的可逆信息隐藏方法流程图。
[0014] 图2是本发明选择的四个测试图像。其中,图a)为Lena,图b)为Baboon,图c)为Boat,图d)为Cameraman。
[0015] 图3是采用本发明方法对四个测试图像的实验结果示意图。
[0016] 图4是采用本发明方法对四个测试图像在不同信息隐藏密钥下的实验结果示意图。

具体实施方式

[0017] 下面结合附图对本发明的具体实施方式作以下说明。
[0018] 如图1所示,本发明加密图像的可逆信息隐藏方法主要包括以下步骤:
[0019] 步骤1:依据加密密钥对原始明文图像进行加密,生成加密图像;
[0020] 步骤2:依据信息隐藏密钥在加密图像上嵌入秘密信息,生成含有秘密信息的加密图像;
[0021] 步骤3:依据加密密钥对含有秘密信息的加密图像进行解密,生成含有秘密信息的解密图像,并依据隐藏密钥实现明文图像的恢复和秘密信息的提取。
[0022] 下面将对本发明方法的主要流程实现作详细的说明。
[0023] 图像加密
[0024] 假设原始明文图像是未压缩的灰度图I,包含的像素数为M×N,每个像素的灰度范围为[0,255]之间的整数。其中每个像素的灰度值可以用8个二进制比特表示为:
[0025]
[0026]
[0027] 其中,i,j表示像素在图像中的坐标位置。由此,原明文灰度图像可以分解为8个二进制的位平面图像,然后使用密码生成方法产生二进制伪随机数序列,取其中部分序列,并让序列中的每个元素和以上8个位平面的每个比特一一对应。二进制伪随机数序列的生成采用如公式(3)的混沌映射方法:
[0028] xn+1=αxn(1-xn)xn∈(0,1)α∈(3.5699456,4]  (3)
[0029] 初始参数α、初始值x1及序列起始位置即可作为加密密钥。产生的xn序列通过四舍五入取整即可生成伪随机二进制序列en。若以er表示截取序列中的一位随机数,则它对应于位平面像素为bi,j,k,然后可依据公式(4)进行位平面每个像素的加密。
[0030]
[0031] 其中,表示异或运算,最后生成的加密图像可表示为:
[0032]
[0033] 加密图像信息隐藏
[0034] 在信息隐藏阶段,密文图像首先被分割成大小为s×s的不重叠块,将图像块内所有像素按棋盘格分布模式划分为两个像素集S0和S1,每个像素集构造如下:
[0035] S0={Pu,v|(u+v)mod2=0} 1≤u≤s 1≤v≤s  (6)
[0036] S1={Pu,v|(u+v)mod2=1} 1≤u≤s 1≤v≤s  (7)
[0037] 其中,u,v表示当前像素在块内的相对位置。
[0038] 设嵌入秘密信息为伪随机二进制序列,根据信息嵌入密钥选定嵌入图像块,当嵌入的秘密信息为1时,将选定图像块的像素集S1内所有像素的三个最低有效位取反,而当嵌入的秘密信息为0时,图像块内所有像素保持不变。
[0039] 信息隐藏密钥的生成方式依然采用公式(3)。根据公式(3)的初始参数、初始值及序列截取起始位置,可以得到一个长度为图像分块个数m的密钥序列Y={y1,y2,…,ym},对以上序列按数值大小进行排序,得排序后的序列在原序列中的位置序列为Z={z1,z2,…,zm}。设秘密信息序列D={d1,d2,…,dm},图像块序列W={w1,w2,…,wm},以A(i)表示A中的第i个元素,则秘密信息D(i)隐藏的图像块为W(Z(i)),由于Z(i)彼此不同,实现了信息隐藏位置的加密。如果要隐藏的信息D(i)为1,对图像块W(Z(i))中像素集S1的像素三个最低有效位取反,如果D(i)为0,则不做任何变化。
[0040] 加密图像解密
[0041] 加密图像解密时,接收者只需要根据加密时所用的伪随机二进制序列元素er对带隐藏信息的密文图像对应比特直接进行异或即可。即,
[0042]
[0043] 其中,b′i,j,k表示带隐藏信息的密文图像比特,bi,j,k表示解密后的图像比特, 表示异或运算,最后生成的解密图像I可表示为:
[0044]
[0045] 图像恢复及信息提取
[0046] 在图像恢复和信息提取阶段,解密图像首先进行和信息隐藏阶段一样的图像分块及图像块内像素集划分。接收方需要根据像素相关性波动来判断块内哪个像素集的像素三个最低有效位取反,同时也就确定了隐藏的秘密信息。设图像块内当前像素灰度值为Pu,v,与其相邻的横向和纵向的所有像素灰度值平均值为Pavg,具体的相关性波动函数为:
[0047]
[0048] 其中,Pavg的计算公式如下:
[0049]
[0050] 对解密后的每一个图像块,依次按公式(10)分别获得该图像块像素集S1取反前后的波动函数值f和f',如果f<f',则该图像块隐藏的秘密信息为0,则解密后的该图像块即为恢复的图像块,否则秘密信息为1,该图像块像素集S1内所有像素的三个最低有效位取反后的图像块即为恢复的图像块。同时,根据隐藏密钥,可获得秘密信息序列。
[0051] 实施例
[0052] 本发明的实施例是在以本发明技术方案为前提进行实施的,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述实施例。具体实施例如下:
[0053] 本发明选取了4幅512×512灰度图像,分别为Lena、Baboon、Boat和Cameraman作为原始图像进行加密图像的可逆信息隐藏。以上图像如图2所示。本实施例中,加密密钥、秘密信息序列、信息隐藏密钥的产生皆采用Logistic混沌算法,其中初始参数α=4,初始值x1=0.87654321,并通过选取不同的混沌序列起始位生成不同的密钥。4幅测试图像上的实验结果如图3所示。从图3可以看出,本发明秘密信息提取正确率较高,可有效实现加密图像的可逆信息隐藏。
[0054] 在加密图像中嵌入秘密信息后,在图像解密阶段获得的解密后图像质量与原始图像相比会有一定程度的降低,这里采用峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)评价本发明解密后的图像质量。表1给出了本发明解密图像PSNR值。本发明解密图像的PSNR值基本在40dB左右,解密图像的质量较高。
[0055] 表1 本发明解密图像PSNR值
[0056]
[0057] 在本发明中,图像块内两类像素的空间分布特性是确定的,信息隐藏密钥主要决定图像块的选择顺序。信息隐藏密钥对本发明性能的影响关系如图4所示。从图4可以看出,在4幅测试图中,不同的信息隐藏密钥对本发明性能基本没有影响,换句话说,不同的信息隐藏密钥条件下,本发明性能稳定。
[0058] 以上结合附图对本发明的实施方式作了详细说明,但本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。