CN114745475A - 一种鲁棒的加密图像可逆信息隐藏方法 - Google Patents

一种鲁棒的加密图像可逆信息隐藏方法 Download PDF

Info

Publication number
CN114745475A
CN114745475A CN202210229638.7A CN202210229638A CN114745475A CN 114745475 A CN114745475 A CN 114745475A CN 202210229638 A CN202210229638 A CN 202210229638A CN 114745475 A CN114745475 A CN 114745475A
Authority
CN
China
Prior art keywords
image
encrypted
seed
watermark
recovery
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.)
Granted
Application number
CN202210229638.7A
Other languages
English (en)
Other versions
CN114745475B (zh
Inventor
和红杰
杨尧林
陈帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southwest Jiaotong University
Original Assignee
Southwest Jiaotong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Southwest Jiaotong University filed Critical Southwest Jiaotong University
Priority to CN202210229638.7A priority Critical patent/CN114745475B/zh
Publication of CN114745475A publication Critical patent/CN114745475A/zh
Application granted granted Critical
Publication of CN114745475B publication Critical patent/CN114745475B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32267Methods relating to embedding, encoding, decoding, detection or retrieval operations combined with processing of the image
    • H04N1/32272Encryption or ciphering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/3232Robust embedding or watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种鲁棒的加密图像可逆信息隐藏方法,属于图像技术领域,该方法包括:生成恢复水印;生成加密恢复水印与加密LSBs;生成加密图像;获取隐藏密钥与秘密数据,通过隐藏密钥对秘密数据加密后,嵌入加密图像中生成载密图像;生成篡改标记图;从载密图像中恢复秘密数据与加密图像;在图像恢复时,得到恢复图像的8‑k个LSBs与恢复水印;若未发生篡改,直接恢复原始图像;若发生篡改,进行篡改恢复后生成恢复图像。本发明利用恢复水印与认证水印,在图像被篡改时,能准确定位出被篡改位置,辨别秘密数据中未篡改内容,且能得到与原始图像近似的恢复图像,在满足加密算法安全性的同时实现鲁棒性,更好地满足实际需求。

Description

一种鲁棒的加密图像可逆信息隐藏方法
技术领域
本发明属于图像处理技术领域,尤其涉及一种鲁棒的加密图像可逆信息隐藏方法。
背景技术
随着云计算与云存储的广泛使用,图像作为主要使用的载体之一,其安全性逐渐受到大众重视。为提高数字图像在传输及存储时的安全性,研究者们提出图像加密技术。又考虑到加密图像管理困难的特点,将图像加密与信息隐藏技术相结合的加密图像可逆信息隐藏(Reversible Data Hiding in Encrypted Image,RDHEI)被提出。兼顾隐私安全与便捷管理,被广泛应用于军事、医学、法律取证等领域。
以隐藏容量及可逆性作为研究的方向,近年来取得了一系列显著成果。2019年,Fu等人(Y.Fu,P.Kong,H.Yao,et al.“Effective reversible data hiding in encryptedimage with adaptive encoding strategy,”Information Sciences,2019,494:21-36.)以图像块中相同MSBs作为特征,统计后采用霍夫曼编码进行压缩来腾出空间。随后,Wang等人(X.Wang,C.Chang,C.Lin.“Reversible data hiding in encrypted images withblock-based adaptive MSB encoding,”Information Sciences,2021,567:375-394.)与Yin等人(Z.Yin,Y.Xiang,X.Zhang.“Reversible data hiding in encrypted imagesbased on multi-MSB prediction and Huffman coding,”IEEE Transactions onMultimedia,2020,22(4):874-884.)分别提出以图像块中全0或全1MSBs数和预测值与像素值相同MSBs数作为特征,进行霍夫曼编码压缩的方法。基于霍夫曼编码的RDHEI算法由于霍夫曼编码良好的编码性能,实现了高隐藏容量。但弊端也是显而易见的,当压缩编码流内容被篡改时,无法正确实现霍夫曼解码操作,即无法得到正确的恢复图像。
同样地,在Wu等人(Y.Wu,Y.Xiang,Y.Guo,et al.“An improved reversible datahiding in encrypted images using parametric binary tree labeling,”IEEETransactions on Multimedia,2020,22(8):1929-1938.)提出的参数二叉树标记压缩中,当加密图像被篡改后,像素中存储的标记也会发生改变,导致误差图与恢复图像错误。Chen等人(F.Chen,Y.Yuan,H.He,et al.“Multi-MSB compression based reversible datahiding scheme in encrypted images,”IEEE Transactions on Circuits and Systemsfor Video Technology,2021,31(3):905-916.)提出的基于稀疏矩阵压缩的RDHEI中,当生成的压缩编码流被篡改时,将导致图像块恢复错误,进而得到错误的恢复图像。
综上所述,现有RDHEI算法具有较高的隐藏容量,但加密算法的鲁棒性存在不足,当加密图像在传输或存储时被有意或无意的篡改时,无法得到正确的恢复图像是难以接受的。因此如何实现RDHEI算法的鲁棒性,是必须解决的关键问题。
发明内容
针对现有技术中的上述不足,本发明提供的一种鲁棒的加密图像可逆信息隐藏方法,解决了现有技术中在被篡改后无法正确恢复图像的问题。
为了达到上述发明目的,本发明采用的技术方案为:本发明提供了一种鲁棒的加密图像可逆信息隐藏方法,包括以下步骤:
S1、获取原始图像与加密密钥,对原始图像k个MSBs进行加密编码生成总编码流,并根据参考共享机制,生成恢复水印;
S2、基于加密密钥,对恢复水印及原始图像的8-k个LSBs进行加密,生成加密恢复水印与加密LSBs;
S3、根据加密恢复水印与加密LSBs,生成中间加密图像,并获取认证密钥,生成认证水印嵌入中间加密图像,得到加密图像;
S4、获取隐藏密钥与秘密数据,并通过隐藏密钥对秘密数据进行加密,嵌入加密图像中生成载密图像;
S5、获取载密图像与认证密钥,确定载密图像被篡改的位置,生成篡改标记图;
S6、基于篡改标记图,针对图像恢复时,基于加密密钥对载密图像的高8-k个MSBs及加密恢复水印进行解密,得到图像的8-k个LSBs与恢复水印;
S7、根据图像的8-k个LSBs与恢复水印,判断是否发生篡改,若是,则根据参考共享机制进行篡改恢复,生成恢复图像,否则,直接恢复原始图像。
本发明的有益效果是:本发明提出了鲁棒的图像加密方法。在图像加密过程中,生成恢复水印并嵌入加密图像中。当加密图像或载密图像发生篡改时,通过恢复水印中的压缩编码流与参考比特对被篡改的压缩编码流进行恢复,得到正确的恢复图像。同时,本发明提出了载密图像篡改检测策略。在图像加密时,基于图像块内容与认证密钥生成块认证水印并嵌入加密图像中。检测时将图像块中嵌入的块认证水印与重新生成的认证水印进行对比,确定载密图像中被篡改图像块位置及秘密数据未篡改内容。综上所述,本发明在加密图像或载密图像发生篡改时,能准确定位到被篡改位置,并且能得到正确的恢复图像,兼顾了加密算法的安全性与鲁棒性,更好地满足数字图像在传输存储中的鲁棒性,更适用于实际应用场景。
进一步地,所述步骤S1包括以下步骤:
S101、获取原始图像,将原始图像的高k个MSBs组成高位面图像,选取高位面图像的某个像素作为参考像素,并采用预测法计算其余像素的预测误差值,生成对应的预测误差图;
S102、根据预测误差图中各预测误差值出现的频率生成霍夫曼编码表;
S103、统计霍夫曼编码表中各码字长度,并根据码字长度对编码表中各码字进行分组;
S104、获取时间戳,生成时间密钥,将时间密钥与组内码字个数之和作为种子执行置乱序列生成函数randperm(d,seed),生成与当前组内码字个数相同的置乱序列,并对组内码字进行置乱;其中,d为分组中码字的个数,seed为时间密钥与组内码字长度之和生成的种子;
S105、判断是否所有分组的码字均完成置乱,若是,则生成置乱编码表,并进入步骤S106,否则,返回步骤S104;
S106、获取加密密钥,以加密密钥作为种子执行随机偏移矩阵生成函数rand(m,n,seed1),得到大小与高位面图像相同的十进制偏移矩阵;其中,m为高位面图像的行数,n为高位面图像的列数,seed1为加密密钥生成的种子;
S107、在编码过程中,针对预测误差图的首个误差值进行编码时,确定首个误差值对应置乱编码表中的位置,以及根据码字长度确定所在分组及组内序号,并结合十进制偏移矩阵中第一个值执行公式t'=mod(t+g,d)确定偏移序号,得到首个误差值对应的码字,所述首个误差值对应的码字为所在分组的第t'个码字;其中,t'为组内偏移序号,t为组内原始序号,g为十进制偏移矩阵中的偏移值,d为所在分组中码字的个数;
S108、依次生成预测误差图中所有误差值的编码,将所有误差值的编码连接生成压缩编码流;
S109、将置乱编码表处理为二进制数据,将其与二进制的压缩编码流长度组成辅助数据,并基于加密密钥进行DES加密,生成加密辅助数据;
S1010、根据公式Kf=Hash(Ke,AuxData)生成特征密钥,基于特征密钥结合随机序列生成函数rand(1,len,seed2),生成长度与压缩编码流长度相同的二进制随机序列;其中,Ke为加密密钥,AuxData为辅助数据,len为压缩编码流长度,seed2为特征密钥生成的种子,Hash(·)为哈希函数,Kf为特征密钥;
S1011、将压缩编码流与生成的二进制随机序列进行异或处理,生成加密压缩编码流;
S1012、将加密辅助数据长度的二进制序列、加密辅助数据和加密压缩编码流组合为总编码流;
S1013、根据公式
Figure BDA0003537848110000051
计算分组数;其中,group为分组数,20bits空间用于存储分组数的二进制形式,lenC为总编码流长度,cLen为组内原始比特长度,默认为256,
Figure BDA0003537848110000052
为上取整操作,当不能整分组时,在总编码流后补0;
S1014、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×cLen-20,seed1)生成置乱序列,对补0后的总编码流进行置乱加密生成置乱编码流;
S1015、将分组数的二进制形式与置乱编码流组合为原始比特流,并重排行数为cLen以及列数为分组数的原始矩阵;
S1016、以加密密钥作为种子执行随机矩阵生成函数rand(rLen,cLen,seed1)得到二进制随机矩阵;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256,seed1为加密密钥生成的种子;
S1017、将原始矩阵与生成的二进制随机矩阵进行矩阵相乘,生成行数为rLen以及列数为组数的参考矩阵;
S1018、将原始矩阵与参考矩阵进行列合并,并重排为一行,生成恢复水印。
上述进一步方案的有益效果是:本发明中加密编码过程在编码压缩腾出空间的同时,引入时间密钥实现一次一密的加密算法,兼顾了隐藏容量与安全性。同时,恢复水印的生成为篡改恢复提供了基础。
再进一步地,所述步骤S2包括以下步骤:
S201、获取加密密钥,以加密密钥作为种子执行随机置乱序列生成函数randperm((cLen+rLen)×group,seed1),生成与恢复水印相同长度的置乱序列,基于该置乱序列,对恢复水印进行置乱加密生成置乱恢复水印,并以加密密钥作为种子执行随机序列生成函数rand(1,(cLen+rLen)×group,seed1),得到长度与置乱恢复水印长度相同的二进制序列,将长度与置乱恢复水印长度相同的二进制序列与置乱恢复水印进行异或加密,得到加密恢复水印;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S202、获取原始图像,将原始图像的8-k个LSBs组成低位面图像,以加密密钥作为种子执行随机置乱序列生成函数randperm(m1×n1,seed1),生成与低位面图像大小相同的置乱序列,基于该置乱序列,对低位面图像进行置乱加密,并与执行随机序列生成函数rand(m1,n1,seed1)得到的二进制序列进行异或加密,得到加密LSBs;其中,m1为低位面图像的行数,n1为低位面图像的列数。
上述进一步方案的有益效果是:本发明通过对恢复水印和原始图像的LSBs分别进行置乱及异或加密,保证了加密图像的安全性。
再进一步地,所述步骤S3包括以下步骤:
S301、将加密LSBs作为中间加密图像的8-k个MSBs;
S302、获取认证密钥,将时间密钥转化为50bits的比特流,并复制扩展至(m2/8)×(n2/8)比特流,将扩展后的比特流与认证密钥作为种子生成的二进制序列进行异或处理,生成认证序列,其中,其中,m2为原始图像的行数,n2为原始图像的列数;
S303、将加密恢复水印等分为(m2/8)×(n2/8)份,在每份后填充认证序列中的一位及全0比特使长度为8×8×k,并作为中间加密图像每个8×8图像块的k个LSBs;
S304、将中间加密图像中每个8×8图像块中像素值转化为字符串形式;
S305、将时间密钥转化为字符串形式,并与首个图像块中所有像素值转化的字符串位连接,生成哈希密钥,并根据H=Hash(Kh)生成哈希序列,选取前30bits作为认证水印,嵌入至中间加密图像首个图像块中的认证序列位置后;其中,Kh为哈希密钥,H为哈希序列;
S306、依次对中间加密图像中所有图像块执行认证水印生成及嵌入操作,生成加密图像。
上述进一步方案的有益效果是:本发明基于时间密钥与认证密钥生成的认证序列具有重复特性,在篡改比例不高时可实现时间密钥的无损恢复,认证比特则可实现加密图像或载密图像的篡改检测。
再进一步地,所述步骤S4包括以下步骤:
S401、获取隐藏密钥与秘密数据,通过隐藏密钥对秘密数据进行加密处理,生成加密秘密数据;
S402、获取加密图像,将加密图像分为8×8大小的图像块,并将加密秘密数据嵌入每个加密图像块的认证水印之后,生成载密图像。
上述进一步方案的有益效果是:本发明在加密图像中隐藏与图像相关的秘密数据,例如,图像所有者姓名、图像类别等,可以提高对加密图像管理的效率。
再进一步地,所述步骤S5包括以下步骤:
S501、获取载密图像,将其分为8×8的载密图像块,从每个载密图像块的LSBs中提取出30bits认证水印;
S502、获取认证密钥,提取每个载密图像块认证水印的前一位,组成认证序列,恢复时间密钥;
S503、将载密图像块中认证序列、认证水印与秘密数据进行置0处理,并将时间密钥与载密图像块中所有像素值转化为字符串形式,位连接为哈希密钥,根据H=Hash(Kh)生成哈希序列并选取前30bits;
S504、将获取的哈希序列前30bits与载密图像块中提取的认证水印进行对比,若一致,则当前载密图像块未发生篡改,篡改标记图对应位置标记为1;若不一致,则发生篡改,篡改标记图对应位置标记为0。
上述进一步方案的有益效果是:篡改标记图可以正确标识出加密图像或载密图像被篡改的位置,实现篡改检测功能。
再进一步地,所述步骤S6包括以下步骤:
S601、在图像恢复时,提取加密图像的8-k个MSBs组成载密高位面图像,获取加密密钥,以加密密钥作为种子执行随机序列生成函数rand(m3,n3,seed1)得到的二进制序列,对载密高位面图像进行异或解密处理,并执行随机置乱序列生成函数randperm(m3×n3,seed1),生成与载密高位面图像大小相同的置乱序列,将置乱序列作为图像的8-k个LSBs;其中,m3为载密高位面图像的行数,n3为载密高位面图像的列数;
S602、将载密图像分为8×8的载密图像块,并从每个载密图像块的LSBs中提取出恢复水印部分,组成恢复水印;
S603、以加密密钥作为种子执行随机序列生成函数rand(1,group×(cLen+rLen),seed1),得到长度与提取的恢复水印长度相同的二进制序列,并进行异或解密生成置乱恢复水印;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S604、根据篡改标记图中标记出的篡改块位置,将置乱恢复水印中从篡改块提取出的内容全部修改为小于0的值;
S605、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×(cLen+rLen),seed1),生成与置乱恢复水印相同长度的置乱序列,对置乱恢复水印进行置乱解密,生成恢复水印。
上述进一步方案的有益效果是:恢复水印的可逆提取是图像恢复的基础,结合篡改标记图,可确定恢复水印中被篡改的部分,进而实现篡改恢复。
再进一步地,所述步骤S7包括以下步骤:
S701、提取恢复水印的前20bits,并判断前20bits的恢复水印是否发生篡改,若未发生篡改,则转化为十进制形式得到分组数,并进入步骤S702;若发生篡改,则根据恢复水印的前cLen+rLenbits,以及步骤S604结中提取的内容,结合参考共享机制进行篡改恢复,由篡改恢复后的恢复水印前20bits得到分组数,并进入步骤S702,其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S702、将恢复水印重排为行数为cLen+rLen以及列数为分组数的恢复水印矩阵;
S703、判断重排后的恢复水印是否发生篡改,若未发生篡改,则将恢复水印矩阵的前cLen行展开为一行,作为原始比特流,并进入步骤S704;若发生篡改,则根据恢复水印矩阵每列的cLen+rLenbits,结合参考共享机制进行篡改恢复,并提取篡改恢复后恢复水印矩阵的前cLen行,展开为原始比特流,并进入步骤S704;
S704、删除原始比特流的前20bits,得到置乱编码流;
S705、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×cLen-20,seed1)生成置乱序列,对置乱编码流进行解密生成总编码流;其中,cLen默认为256;
S706、基于加密密钥对总编码流进行解码,并根据篡改标记图判断载密图像是否发生篡改,若未发生篡改,则根据解码后得到原始图像的高k个MSBs结合步骤S601得到图像的8-k个LSBs,恢复出原始图像;若发生篡改,则根据解码得到恢复图像的高k个MSBs结合S601中的8-k个LSBs生成恢复图像。
上述进一步方案的有益效果是:当加密图像或载密图像未发生篡改时,能恢复原始图像;当发生篡改时,可生成与原始图像近似的恢复图像,实现了加密算法的鲁棒性。
再进一步地,所述步骤S706中对总编码流进行解码,包括以下步骤:
A1、提取总编码流中前8位,转化为十进制形式得到辅助数据长度;
A2、根据辅助数据长度,提取出总编码流中的加密辅助数据,并基于加密密钥对加密辅助数据执行DES解密,生成辅助数据,得到置乱编码表与压缩编码流长度;
A3、基于特征密钥Kf=Hash(Ke,AuxData),执行随机序列生成函数rand(1,len,seed2),生成长度与压缩编码流长度相同的二进制随机序列;其中,Ke为加密密钥,AuxData为辅助数据,len为压缩编码流长度,seed2为特征密钥生成的种子;
A4、根据压缩编码流长度,从总编码流中提取加密压缩编码流与生成的二进制随机序列进行异或处理,生成压缩编码流;
A5、以加密密钥作为种子执行随机偏移矩阵生成函数rand(m4,n4,seed1),得到大小与恢复图像相同的十进制偏移矩阵;其中,m4为恢复图像的行数,n4为恢复图像的列数,seed1为加密密钥生成的种子;
A6、统计置乱编码表中各码字长度并进行分组,在解码过程中,查找置乱编码表确定压缩编码流中首个码字长度以及确定所在分组及在分组中的序号,结合随机偏移矩阵的第一个值执行t=mod(t'-g,d)确定实际序号,查找置乱编码表获得对应的误差值,将该误差值作为预测误差图中第一个值;其中,t为组内实际序号,t'为组内序号,g为十进制偏移矩阵中的偏移值,d为所在分组中码字的个数;
A7、将压缩编码流全部解码后,得到预测误差图;
A8、采用预测恢复方法,根据预测误差图恢复方法生成图像的k个MSBs。
上述进一步方案的有益效果是:通过解码过程可无损恢复出恢复图像的MSBs,实现了算法的可逆性。
附图说明
图1为本发明的流程图。
图2为Lena测试图像。
图3为Napoleon测试图像。
图4为Mona测试图像。
图5为Lena加密图像。
图6为Napoleon加密图像。
图7为Mona加密图像。
图8为Wu算法未篡改时的恢复图像(峰值信噪比PSNR=∞)。
图9为Yin算法未篡改时的恢复图像(峰值信噪比PSNR=∞)。
图10为本发明未篡改时的篡改标记图。
图11为本发明未篡改时的恢复图像(峰值信噪比PSNR=∞)。
图12为Wu算法在区域篡改大小为100×100时的恢复图像(峰值信噪比PSNR=29.34dB)。
图13为Yin算法在区域篡改大小为100×100时的恢复图像(峰值信噪比PSNR=8.49dB)。
图14为本发明在区域篡改大小为100×100时的篡改标记图。
图15为本发明在区域篡改大小为100×100时的恢复图像(峰值信噪比PSNR=39.94dB)。
图16为Wu算法在区域篡改大小为200×200时的恢复图像(峰值信噪比PSNR=19.41dB)。
图17为Yin算法在区域篡改大小为200×200时的恢复图像(峰值信噪比PSNR=9.20dB)。
图18为本发明在区域篡改大小为200×200时的篡改标记图。
图19为本发明在区域篡改大小为200×200时的恢复图像(峰值信噪比PSNR=33.94dB)。
图20为Wu算法在区域篡改大小为250×250时的恢复图像(峰值信噪比PSNR=18.87dB)。
图21为Yin算法在区域篡改大小为250×250时的恢复图像(峰值信噪比PSNR=9.12dB)。
图22为本发明在区域篡改大小为250×250时的篡改标记图。
图23为本发明在区域篡改大小为250×250时的恢复图像(峰值信噪比PSNR=32.02dB)。
图24为Wu算法在随机篡改时的恢复图像(峰值信噪比PSNR=40.99dB)。
图25为Yin算法在随机篡改时的恢复图像(峰值信噪比PSNR=9.69dB)。
图26为本发明在随机篡改时的篡改标记图。
图27为本发明在随机篡改时的恢复图像(峰值信噪比PSNR=66.4022dB)。
图28为Wu算法在拼贴攻击时的恢复图像(峰值信噪比PSNR=15.45dB)。
图29为Yin算法在拼贴攻击时的恢复图像(峰值信噪比PSNR=8.99dB)。
图30为本发明在拼贴攻击时的篡改标记图。
图31为本发明在拼贴攻击时的恢复图像(峰值信噪比PSNR=33.90dB)。
图32为本发明与参考文献算法嵌入容量比较图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
在对本发明进行说明前,先对以下参数进行解释:
参数 含义
MSBs 最高有效位
LSBs 最低有效位
如图1所示,本发明提供了一种鲁棒的加密图像可逆信息隐藏方法,其实现方法如下:
S1、获取原始图像与加密密钥,对原始图像k个MSBs进行加密编码生成总编码流,并根据参考共享机制,生成恢复水印,其实现方法如下:
S101、获取原始图像,将原始图像的高k个MSBs组成高位面图像,选取高位面图像的某个像素作为参考像素,并采用预测法计算其余像素的预测误差值,生成对应的预测误差图;
S102、根据预测误差图中各预测误差值出现的频率生成霍夫曼编码表;
S103、统计霍夫曼编码表中各码字长度,并根据码字长度对编码表中各码字进行分组;
S104、获取时间戳,生成时间密钥,将时间密钥与组内码字个数之和作为种子执行置乱序列生成函数randperm(d,seed),生成与当前组内码字个数相同的置乱序列,并对组内码字进行置乱;其中,d为分组中码字的个数,seed为时间密钥与组内码字长度之和生成的种子;
S105、判断是否所有分组的码字均完成置乱,若是,则生成置乱编码表,并进入步骤S106,否则,返回步骤S104;
S106、获取加密密钥,以加密密钥作为种子执行随机偏移矩阵生成函数rand(m,n,seed1),得到大小与高位面图像相同的十进制偏移矩阵;其中,m为高位面图像的行数,n为高位面图像的列数,seed1为加密密钥生成的种子;
S107、在编码过程中,针对预测误差图的首个误差值进行编码时,确定首个误差值对应置乱编码表中的位置,以及根据码字长度确定所在分组及组内序号,并结合十进制偏移矩阵中第一个值执行公式t'=mod(t+g,d)确定偏移序号,得到首个误差值对应的码字,所述首个误差值对应的码字为所在分组的第t'个码字;其中,t'为组内偏移序号,t为组内原始序号,g为十进制偏移矩阵中的偏移值,d为所在分组中码字的个数;
S108、依次生成预测误差图中所有误差值的编码,将所有误差值的编码连接生成压缩编码流;
S109、将置乱编码表处理为二进制数据,将其与二进制的压缩编码流长度组成辅助数据,并基于加密密钥进行DES加密,生成加密辅助数据;
S1010、根据公式Kf=Hash(Ke,AuxData)生成特征密钥,基于特征密钥结合随机序列生成函数rand(1,len,seed2),生成长度与压缩编码流长度相同的二进制随机序列;其中,Ke为加密密钥,AuxData为辅助数据,len为压缩编码流长度,seed2为特征密钥生成的种子,Hash(·)为哈希函数,Kf为特征密钥;
S1011、将压缩编码流与生成的二进制随机序列进行异或处理,生成加密压缩编码流;
S1012、将加密辅助数据长度的二进制序列、加密辅助数据和加密压缩编码流组合为总编码流;
S1013、根据公式
Figure BDA0003537848110000151
计算分组数;其中,group为分组数,20bits空间用于存储分组数的二进制形式,lenC为总编码流长度,cLen为组内原始比特长度,默认为256,
Figure BDA0003537848110000152
为上取整操作,当不能整分组时,在总编码流后补0;
S1014、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×cLen-20,seed1)生成置乱序列,对补0后的总编码流进行置乱加密生成置乱编码流;
S1015、将分组数的二进制形式与置乱编码流组合为原始比特流,并重排行数为cLen以及列数为分组数的原始矩阵;
S1016、以加密密钥作为种子执行随机矩阵生成函数rand(rLen,cLen,seed1)得到二进制随机矩阵;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256,seed1为加密密钥生成的种子;
S1017、将原始矩阵与生成的二进制随机矩阵进行矩阵相乘,生成行数为rLen以及列数为组数的参考矩阵;
S1018、将原始矩阵与参考矩阵进行列合并,并重排为一行,生成恢复水印;
S2、基于加密密钥,对恢复水印及原始图像的8-k个LSBs进行加密,生成加密恢复水印与加密LSBs,其实现方法如下:
S201、获取加密密钥,以加密密钥作为种子执行随机置乱序列生成函数randperm((cLen+rLen)×group,seed1),生成与恢复水印相同长度的置乱序列,基于该置乱序列,对恢复水印进行置乱加密生成置乱恢复水印,并以加密密钥作为种子执行随机序列生成函数rand(1,(cLen+rLen)×group,seed1),得到长度与置乱恢复水印长度相同的二进制序列,将长度与置乱恢复水印长度相同的二进制序列与置乱恢复水印进行异或加密,得到加密恢复水印;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S202、获取原始图像,将原始图像的8-k个LSBs组成低位面图像,以加密密钥作为种子执行随机置乱序列生成函数randperm(m1×n1,seed1),生成与低位面图像大小相同的置乱序列,基于该置乱序列,对低位面图像进行置乱加密,并与执行随机序列生成函数rand(m1,n1,seed1)得到的二进制序列进行异或加密,得到加密LSBs;其中,m1为低位面图像的行数,n1为低位面图像的列数;
S3、根据加密恢复水印与加密LSBs,生成中间加密图像,并获取认证密钥,生成认证水印嵌入中间加密图像,得到加密图像,其实现方法如下:
S301、将加密LSBs作为中间加密图像的8-k个MSBs;
S302、获取认证密钥,将时间密钥转化为50bits的比特流,并复制扩展至(m2/8)×(n2/8)比特流,将扩展后的比特流与认证密钥作为种子生成的二进制序列进行异或处理,生成认证序列,其中,其中,m2为原始图像的行数,n2为原始图像的列数;
S303、将加密恢复水印等分为(m2/8)×(n2/8)份,在每份后填充认证序列中的一位及全0比特使长度为8×8×k,并作为中间加密图像每个8×8图像块的k个LSBs;
S304、将中间加密图像中每个8×8图像块中像素值转化为字符串形式;
S305、将时间密钥转化为字符串形式,并与首个图像块中所有像素值转化的字符串位连接,生成哈希密钥,并根据H=Hash(Kh)生成哈希序列,选取前30bits作为认证水印,嵌入至中间加密图像首个图像块中的认证序列位置后;其中,Kh为哈希密钥,H为哈希序列;
S306、依次对中间加密图像中所有图像块执行认证水印生成及嵌入操作,生成加密图像;
S4、获取隐藏密钥与秘密数据,并通过隐藏密钥对秘密数据进行加密,嵌入加密图像中生成载密图像,其实现方法如下:
S401、获取隐藏密钥与秘密数据,通过隐藏密钥对秘密数据进行加密处理,生成加密秘密数据;
S402、获取加密图像,将加密图像分为8×8大小的图像块,并将加密秘密数据嵌入每个加密图像块的认证水印之后,生成载密图像;
S5、获取载密图像与认证密钥,确定载密图像被篡改的位置,生成篡改标记图,其实现方法如下:
S501、获取载密图像,将其分为8×8的载密图像块,从每个载密图像块的LSBs中提取出30bits认证水印;
S502、获取认证密钥,提取每个载密图像块认证水印的前一位,组成认证序列,恢复时间密钥;
S503、将载密图像块中认证序列、认证水印与秘密数据进行置0处理,并将时间密钥与载密图像块中所有像素值转化为字符串形式,位连接为哈希密钥,根据H=Hash(Kh)生成哈希序列并选取前30bits;
S504、将获取的哈希序列前30bits与载密图像块中提取的认证水印进行对比,若一致,则当前载密图像块未发生篡改,篡改标记图对应位置标记为1;若不一致,则发生篡改,篡改标记图对应位置标记为0;
S6、基于篡改标记图,针对图像恢复时,基于加密密钥对载密图像的高8-k个MSBs及加密恢复水印进行解密,得到图像的8-k个LSBs与恢复水印,其实现方法如下:
S601、在图像恢复时,提取加密图像的8-k个MSBs组成载密高位面图像,获取加密密钥,以加密密钥作为种子执行随机序列生成函数rand(m3,n3,seed1)得到的二进制序列,对载密高位面图像进行异或解密处理,并执行随机置乱序列生成函数randperm(m3×n3,seed1),生成与载密高位面图像大小相同的置乱序列,将置乱序列作为图像的8-k个LSBs;其中,m3为载密高位面图像的行数,n3为载密高位面图像的列数;
S602、将载密图像分为8×8的载密图像块,并从每个载密图像块的LSBs中提取出恢复水印部分,组成恢复水印;
S603、以加密密钥作为种子执行随机序列生成函数rand(1,group×(cLen+rLen),seed1),得到长度与提取的恢复水印长度相同的二进制序列,并进行异或解密生成置乱恢复水印;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S604、根据篡改标记图中标记出的篡改块位置,将置乱恢复水印中从篡改块提取出的内容全部修改为小于0的值;
S605、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×(cLen+rLen),seed1),生成与置乱恢复水印相同长度的置乱序列,对置乱恢复水印进行置乱解密,生成恢复水印;
S7、根据图像的8-k个LSBs与恢复水印,判断是否发生篡改,若是,则根据参考共享机制进行篡改恢复,生成恢复图像,否则,直接恢复原始图像,其实现方法如下:
S701、提取恢复水印的前20bits,并判断前20bits的恢复水印是否发生篡改,若未发生篡改,则转化为十进制形式得到分组数,并进入步骤S702;若发生篡改,则根据恢复水印的前cLen+rLenbits,以及步骤S604结中提取的内容,结合参考共享机制进行篡改恢复,由篡改恢复后的恢复水印前20bits得到分组数,并进入步骤S702,其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S702、将恢复水印重排为行数为cLen+rLen以及列数为分组数的恢复水印矩阵;
S703、判断重排后的恢复水印是否发生篡改,若未发生篡改,则将恢复水印矩阵的前cLen行展开为一行,作为原始比特流,并进入步骤S704;若发生篡改,则根据恢复水印矩阵每列的cLen+rLenbits,结合参考共享机制进行篡改恢复,并提取篡改恢复后恢复水印矩阵的前cLen行,展开为原始比特流,并进入步骤S704;
S704、删除原始比特流的前20bits,得到置乱编码流;
S705、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×cLen-20,seed1)生成置乱序列,对置乱编码流进行解密生成总编码流;其中,cLen默认为256;
S706、基于加密密钥对总编码流进行解码,并根据篡改标记图判断载密图像是否发生篡改,若未发生篡改,则根据解码后得到原始图像的高k个MSBs结合步骤S601得到图像的8-k个LSBs,恢复出原始图像;若发生篡改,则根据解码得到恢复图像的高k个MSBs结合S601中的8-k个LSBs生成恢复图像,所述步骤S706中对总编码流进行解码,包括以下步骤:
A1、提取总编码流中前8位,转化为十进制形式得到辅助数据长度;
A2、根据辅助数据长度,提取出总编码流中的加密辅助数据,并基于加密密钥对加密辅助数据执行DES解密,生成辅助数据,得到置乱编码表与压缩编码流长度;
A3、基于特征密钥Kf=Hash(Ke,AuxData),执行随机序列生成函数rand(1,len,seed2),生成长度与压缩编码流长度相同的二进制随机序列;其中,Ke为加密密钥,AuxData为辅助数据,len为压缩编码流长度,seed2为特征密钥生成的种子;
A4、根据压缩编码流长度,从总编码流中提取加密压缩编码流与生成的二进制随机序列进行异或处理,生成压缩编码流;
A5、以加密密钥作为种子执行随机偏移矩阵生成函数rand(m4,n4,seed1),得到大小与恢复图像相同的十进制偏移矩阵;其中,m4为恢复图像的行数,n4为恢复图像的列数,seed1为加密密钥生成的种子;
A6、统计置乱编码表中各码字长度并进行分组,在解码过程中,查找置乱编码表确定压缩编码流中首个码字长度以及确定所在分组及在分组中的序号,结合随机偏移矩阵的第一个值执行t=mod(t'-g,d)确定实际序号,查找置乱编码表获得对应的误差值,将该误差值作为预测误差图中第一个值;其中,t为组内实际序号,t'为组内序号,g为十进制偏移矩阵中的偏移值,d为所在分组中码字的个数;
A7、将压缩编码流全部解码后,得到预测误差图;
A8、采用预测恢复方法,根据预测误差图恢复方法生成图像的k个MSBs。
鲁棒性对比:
在实验过程中,选取图2所示的Lena、图3所示的Napolen和图4所示的Mona作为测试图像,并令k=3。为评估本文加密算法的鲁棒性,将本发明与Wu等人(Wu et al.)和Yin等人(Yin et al.)在加密图像未篡改、发生区域篡改、随机篡改及拼贴攻击时的结果进行对比,分析结果如下。
当加密图像未发生篡改时,Wu等人提出算法的恢复图像如图8所示,Yin等人提出算法的恢复图像如图9所示,本发明的篡改标记图与恢复图像如图10和图11所示,均可实现可逆恢复,恢复图像与原始图像一致,且本发明的篡改标记图为全0。
当加密图像发生区域篡改时,实验中篡改区域分别为(250-350,250-350)、(150-350,150-350)、(100-350,100-350)的方形,Wu等人提出算法的恢复图像如图12、图16、图20所示,图像中虽然背景内容依旧清晰,但最重要的人脸已经无法识别。Yin等人算法的恢复图像如图13、图17、图21所示,已经无法看出Lena图像的相关信息,分析原因为当加密图像发生篡改时,图内保存的霍夫曼编码被修改,导致解码错误,进而得到错误的恢复图像。由图14、图18及图22可以看出,本发明则能够准确确定出区域篡改位置,并得到如图15、图19与图23所示与原始图像近似的恢复图像,即使当篡改区域大小为250×250时,恢复图像的PSNR仍可达到32.02dB。
当发生随机篡改时,由于篡改比例较小,Wu等人算法的恢复图像如图24所示,依旧可以看出原始图像内容,但PSNR仅为40.99dB。Yin等人算法的回复结果如图25所示,因为解码错误导致恢复图像错误。本发明的篡改标记图与恢复图像如图26与图27所示,相较于两篇参考算法具有明显优势,在篡改标记出正确标记出被篡改位置的同时,恢复图像PSNR可达66.40dB。
在拼贴攻击对比中,选取了如图3的Napolen和如图4的Mona作为测试图像,实验中分别在相同密钥下通过不同算法生成两幅图像的加密图像,并将Mona加密图像的一部分替代Napolen加密图像中相同位置。从图28可以看出,Wu等人算法在拼贴攻击下的恢复图像是Mona与Napolen的结合,无法辨别出原始图像内容。Yin等人得到如图29的恢复图像也无法看出原始图像内容。本发明通过如图30的篡改标记图与如图31的恢复图像,可以看出能有效抵抗拼贴攻击,且恢复图像中依旧能清晰看出Napolen的完整信息。
因此,本发明在通过加密算法生成图5所示的Lena加密图像,图6所示的Napolen加密图像和图7所示Mona加密图像中可以看出,本发明生成的加密图像未泄露原始图像内容,在保证安全性的基础上,实现了未篡改时算法的可逆性与被篡改时的鲁棒性。
隐藏容量对比:
在隐藏容量上,将本发明与Wu等人(Wu et al.)和Yin等人(Yin et al.)提出算法进行对比,结果如图32所示。可以看出,本文算法的隐藏容量低于现有算法,分析原因可知,对比文献中利用了原始图像整体冗余,而本发明在实验过程中仅利用了3个MSBs的冗余,并且为实现加密算法的鲁棒性,引入参考比特与认证水印,也会导致隐藏容量的降低。总的来说,本发明在保证加密算法鲁棒性的基础上,依旧能达到图32所示的1.6bpp以上的嵌入容量,满足一般实际应用的需求。
本发明提出了鲁棒的图像加密方法。在图像加密过程中,生成恢复水印并嵌入加密图像中。当加密图像或载密图像发生篡改时,通过恢复水印中的压缩编码流与参考比特对被篡改的压缩编码流进行恢复,得到正确的恢复图像。
本发明提出了载密图像篡改检测策略。在图像加密时,基于图像块内容与认证密钥生成块认证水印并嵌入加密图像中。检测时将图像块中嵌入的块认证水印与重新生成的认证水印进行对比,确定载密图像中被篡改图像块位置及秘密数据未篡改内容。
综上所述,本发明在加密图像或载密图像发生篡改时,能准确定位到被篡改位置,并且能得到正确的恢复图像,兼顾了加密算法的安全性与鲁棒性,更好地满足数字图像在传输存储中的鲁棒性,更适用于实际应用场景。

Claims (9)

1.一种鲁棒的加密图像可逆信息隐藏方法,其特征在于,包括以下步骤:
S1、获取原始图像与加密密钥,对原始图像k个MSBs进行加密编码生成总编码流,并根据参考共享机制,生成恢复水印;
S2、基于加密密钥,对恢复水印及原始图像的8-k个LSBs进行加密,生成加密恢复水印与加密LSBs;
S3、根据加密恢复水印与加密LSBs,生成中间加密图像,并获取认证密钥,生成认证水印嵌入中间加密图像,得到加密图像;
S4、获取隐藏密钥与秘密数据,并通过隐藏密钥对秘密数据进行加密,嵌入加密图像中生成载密图像;
S5、获取载密图像与认证密钥,确定载密图像被篡改的位置,生成篡改标记图;
S6、基于篡改标记图,针对图像恢复时,基于加密密钥对载密图像的高8-k个MSBs及加密恢复水印进行解密,得到图像的8-k个LSBs与恢复水印;
S7、根据图像的8-k个LSBs与恢复水印,判断是否发生篡改,若是,则根据参考共享机制进行篡改恢复,生成恢复图像,否则,直接恢复原始图像。
2.根据权利要求1所述的鲁棒的加密图像可逆信息隐藏方法,其特征在于,所述步骤S1包括以下步骤:
S101、获取原始图像,将原始图像的高k个MSBs组成高位面图像,选取高位面图像的某个像素作为参考像素,并采用预测法计算其余像素的预测误差值,生成对应的预测误差图;
S102、根据预测误差图中各预测误差值出现的频率生成霍夫曼编码表;
S103、统计霍夫曼编码表中各码字长度,并根据码字长度对编码表中各码字进行分组;
S104、获取时间戳,生成时间密钥,将时间密钥与组内码字个数之和作为种子执行置乱序列生成函数randperm(d,seed),生成与当前组内码字个数相同的置乱序列,并对组内码字进行置乱;其中,d为分组中码字的个数,seed为时间密钥与组内码字长度之和生成的种子;
S105、判断是否所有分组的码字均完成置乱,若是,则生成置乱编码表,并进入步骤S106,否则,返回步骤S104;
S106、获取加密密钥,以加密密钥作为种子执行随机偏移矩阵生成函数rand(m,n,seed1),得到大小与高位面图像相同的十进制偏移矩阵;其中,m为高位面图像的行数,n为高位面图像的列数,seed1为加密密钥生成的种子;
S107、在编码过程中,针对预测误差图的首个误差值进行编码时,确定首个误差值对应置乱编码表中的位置,以及根据码字长度确定所在分组及组内序号,并结合十进制偏移矩阵中第一个值执行公式t'=mod(t+g,d)确定偏移序号,得到首个误差值对应的码字,所述首个误差值对应的码字为所在分组的第t'个码字;其中,t'为组内偏移序号,t为组内原始序号,g为十进制偏移矩阵中的偏移值,d为所在分组中码字的个数;
S108、依次生成预测误差图中所有误差值的编码,将所有误差值的编码连接生成压缩编码流;
S109、将置乱编码表处理为二进制数据,将其与二进制的压缩编码流长度组成辅助数据,并基于加密密钥进行DES加密,生成加密辅助数据;
S1010、根据公式Kf=Hash(Ke,AuxData)生成特征密钥,基于特征密钥结合随机序列生成函数rand(1,len,seed2),生成长度与压缩编码流长度相同的二进制随机序列;其中,Ke为加密密钥,AuxData为辅助数据,len为压缩编码流长度,seed2为特征密钥生成的种子,Hash(·)为哈希函数,Kf为特征密钥;
S1011、将压缩编码流与生成的二进制随机序列进行异或处理,生成加密压缩编码流;
S1012、将加密辅助数据长度的二进制序列、加密辅助数据和加密压缩编码流组合为总编码流;
S1013、根据公式
Figure FDA0003537848100000031
计算分组数;其中,group为分组数,20bits空间用于存储分组数的二进制形式,lenC为总编码流长度,cLen为组内原始比特长度,默认为256,
Figure FDA0003537848100000032
为上取整操作,当不能整分组时,在总编码流后补0;
S1014、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×cLen-20,seed1)生成置乱序列,对补0后的总编码流进行置乱加密生成置乱编码流;
S1015、将分组数的二进制形式与置乱编码流组合为原始比特流,并重排行数为cLen以及列数为分组数的原始矩阵;
S1016、以加密密钥作为种子执行随机矩阵生成函数rand(rLen,cLen,seed1)得到二进制随机矩阵;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256,seed1为加密密钥生成的种子;
S1017、将原始矩阵与生成的二进制随机矩阵进行矩阵相乘,生成行数为rLen以及列数为组数的参考矩阵;
S1018、将原始矩阵与参考矩阵进行列合并,并重排为一行,生成恢复水印。
3.根据权利要求2所述的鲁棒的加密图像可逆信息隐藏方法,其特征在于,所述步骤S2包括以下步骤:
S201、获取加密密钥,以加密密钥作为种子执行随机置乱序列生成函数randperm((cLen+rLen)×group,seed1),生成与恢复水印相同长度的置乱序列,基于该置乱序列,对恢复水印进行置乱加密生成置乱恢复水印,并以加密密钥作为种子执行随机序列生成函数rand(1,(cLen+rLen)×group,seed1),得到长度与置乱恢复水印长度相同的二进制序列,将长度与置乱恢复水印长度相同的二进制序列与置乱恢复水印进行异或加密,得到加密恢复水印;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S202、获取原始图像,将原始图像的8-k个LSBs组成低位面图像,以加密密钥作为种子执行随机置乱序列生成函数randperm(m1×n1,seed1),生成与低位面图像大小相同的置乱序列,基于该置乱序列,对低位面图像进行置乱加密,并与执行随机序列生成函数rand(m1,n1,seed1)得到的二进制序列进行异或加密,得到加密LSBs;其中,m1为低位面图像的行数,n1为低位面图像的列数。
4.根据权利要求3所述鲁棒的加密图像可逆信息隐藏方法,其特性在于,所述步骤S3包括以下步骤:
S301、将加密LSBs作为中间加密图像的8-k个MSBs;
S302、获取认证密钥,将时间密钥转化为50bits的比特流,并复制扩展至(m2/8)×(n2/8)比特流,将扩展后的比特流与认证密钥作为种子生成的二进制序列进行异或处理,生成认证序列,其中,其中,m2为原始图像的行数,n2为原始图像的列数;
S303、将加密恢复水印等分为(m2/8)×(n2/8)份,在每份后填充认证序列中的一位及全0比特使长度为8×8×k,并作为中间加密图像每个8×8图像块的k个LSBs;
S304、将中间加密图像中每个8×8图像块中像素值转化为字符串形式;
S305、将时间密钥转化为字符串形式,并与首个图像块中所有像素值转化的字符串位连接,生成哈希密钥,并根据H=Hash(Kh)生成哈希序列,选取前30bits作为认证水印,嵌入至中间加密图像首个图像块中的认证序列位置后;其中,Kh为哈希密钥,H为哈希序列;
S306、依次对中间加密图像中所有图像块执行认证水印生成及嵌入操作,生成加密图像。
5.根据权利要求4所述鲁棒的加密图像可逆信息隐藏方法,其特性在于,所述步骤S4包括以下步骤:
S401、获取隐藏密钥与秘密数据,通过隐藏密钥对秘密数据进行加密处理,生成加密秘密数据;
S402、获取加密图像,将加密图像分为8×8大小的图像块,并将加密秘密数据嵌入每个加密图像块的认证水印之后,生成载密图像。
6.根据权利要求5所述鲁棒的加密图像可逆信息隐藏方法,其特性在于,所述步骤S5包括以下步骤:
S501、获取载密图像,将其分为8×8的载密图像块,从每个载密图像块的LSBs中提取出30bits认证水印;
S502、获取认证密钥,提取每个载密图像块认证水印的前一位,组成认证序列,恢复时间密钥;
S503、将载密图像块中认证序列、认证水印与秘密数据进行置0处理,并将时间密钥与载密图像块中所有像素值转化为字符串形式,位连接为哈希密钥,根据H=Hash(Kh)生成哈希序列并选取前30bits;
S504、将获取的哈希序列前30bits与载密图像块中提取的认证水印进行对比,若一致,则当前载密图像块未发生篡改,篡改标记图对应位置标记为1;若不一致,则发生篡改,篡改标记图对应位置标记为0。
7.根据权利要求6所述鲁棒的加密图像可逆信息隐藏方法,其特性在于,所述步骤S6包括以下步骤:
S601、在图像恢复时,提取加密图像的8-k个MSBs组成载密高位面图像,获取加密密钥,以加密密钥作为种子执行随机序列生成函数rand(m3,n3,seed1)得到的二进制序列,对载密高位面图像进行异或解密处理,并执行随机置乱序列生成函数randperm(m3×n3,seed1),生成与载密高位面图像大小相同的置乱序列,将置乱序列作为图像的8-k个LSBs;其中,m3为载密高位面图像的行数,n3为载密高位面图像的列数;
S602、将载密图像分为8×8的载密图像块,并从每个载密图像块的LSBs中提取出恢复水印部分,组成恢复水印;
S603、以加密密钥作为种子执行随机序列生成函数rand(1,group×(cLen+rLen),seed1),得到长度与提取的恢复水印长度相同的二进制序列,并进行异或解密生成置乱恢复水印;其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S604、根据篡改标记图中标记出的篡改块位置,将置乱恢复水印中从篡改块提取出的内容全部修改为小于0的值;
S605、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×(cLen+rLen),seed1),生成与置乱恢复水印相同长度的置乱序列,对置乱恢复水印进行置乱解密,生成恢复水印。
8.根据权利要求7所述鲁棒的加密图像可逆信息隐藏方法,其特性在于,所述步骤S7包括以下步骤:
S701、提取恢复水印的前20bits,并判断前20bits的恢复水印是否发生篡改,若未发生篡改,则转化为十进制形式得到分组数,并进入步骤S702;若发生篡改,则根据恢复水印的前cLen+rLenbits,以及步骤S604结中提取的内容,结合参考共享机制进行篡改恢复,由篡改恢复后的恢复水印前20bits得到分组数,并进入步骤S702,其中,rLen为组内参考比特长度,默认为128,cLen为组内原始比特长度,默认为256;
S702、将恢复水印重排为行数为cLen+rLen以及列数为分组数的恢复水印矩阵;
S703、判断重排后的恢复水印是否发生篡改,若未发生篡改,则将恢复水印矩阵的前cLen行展开为一行,作为原始比特流,并进入步骤S704;若发生篡改,则根据恢复水印矩阵每列的cLen+rLenbits,结合参考共享机制进行篡改恢复,并提取篡改恢复后恢复水印矩阵的前cLen行,展开为原始比特流,并进入步骤S704;
S704、删除原始比特流的前20bits,得到置乱编码流;
S705、以加密密钥作为种子执行随机置乱序列生成函数randperm(group×cLen-20,seed1)生成置乱序列,对置乱编码流进行解密生成总编码流;其中,cLen默认为256;
S706、基于加密密钥对总编码流进行解码,并根据篡改标记图判断载密图像是否发生篡改,若未发生篡改,则根据解码后得到原始图像的高k个MSBs结合步骤S601得到图像的8-k个LSBs,恢复出原始图像;若发生篡改,则根据解码得到恢复图像的高k个MSBs结合S601中的8-k个LSBs生成恢复图像。
9.根据权利要求8所述鲁棒的加密图像可逆信息隐藏方法,其特性在于,所述步骤S706中对总编码流进行解码,包括以下步骤:
A1、提取总编码流中前8位,转化为十进制形式得到辅助数据长度;
A2、根据辅助数据长度,提取出总编码流中的加密辅助数据,并基于加密密钥对加密辅助数据执行DES解密,生成辅助数据,得到置乱编码表与压缩编码流长度;
A3、基于特征密钥Kf=Hash(Ke,AuxData),执行随机序列生成函数rand(1,len,seed2),生成长度与压缩编码流长度相同的二进制随机序列;其中,Ke为加密密钥,AuxData为辅助数据,len为压缩编码流长度,seed2为特征密钥生成的种子;
A4、根据压缩编码流长度,从总编码流中提取加密压缩编码流与生成的二进制随机序列进行异或处理,生成压缩编码流;
A5、以加密密钥作为种子执行随机偏移矩阵生成函数rand(m4,n4,seed1),得到大小与恢复图像相同的十进制偏移矩阵;其中,m4为恢复图像的行数,n4为恢复图像的列数,seed1为加密密钥生成的种子;
A6、统计置乱编码表中各码字长度并进行分组,在解码过程中,查找置乱编码表确定压缩编码流中首个码字长度以及确定所在分组及在分组中的序号,结合随机偏移矩阵的第一个值执行t=mod(t'-g,d)确定实际序号,查找置乱编码表获得对应的误差值,将该误差值作为预测误差图中第一个值;其中,t为组内实际序号,t'为组内序号,g为十进制偏移矩阵中的偏移值,d为所在分组中码字的个数;
A7、将压缩编码流全部解码后,得到预测误差图;
A8、采用预测恢复方法,根据预测误差图恢复方法生成图像的k个MSBs。
CN202210229638.7A 2022-03-09 2022-03-09 一种鲁棒的加密图像可逆信息隐藏方法 Active CN114745475B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210229638.7A CN114745475B (zh) 2022-03-09 2022-03-09 一种鲁棒的加密图像可逆信息隐藏方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210229638.7A CN114745475B (zh) 2022-03-09 2022-03-09 一种鲁棒的加密图像可逆信息隐藏方法

Publications (2)

Publication Number Publication Date
CN114745475A true CN114745475A (zh) 2022-07-12
CN114745475B CN114745475B (zh) 2023-03-24

Family

ID=82274394

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210229638.7A Active CN114745475B (zh) 2022-03-09 2022-03-09 一种鲁棒的加密图像可逆信息隐藏方法

Country Status (1)

Country Link
CN (1) CN114745475B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116825259A (zh) * 2023-08-31 2023-09-29 四川省医学科学院·四川省人民医院 一种基于物联网的医疗数据管理方法
CN117156138A (zh) * 2023-10-31 2023-12-01 季华实验室 图像的不定长深度哈希编码方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160189325A1 (en) * 2014-12-30 2016-06-30 University Of Macau Method for reversible image data hiding
CN106408495A (zh) * 2015-11-06 2017-02-15 河南师范大学 一种基于混沌理论的高psnr脆弱水印方法
CN112070636A (zh) * 2020-09-09 2020-12-11 西南交通大学 一种具有多级证据链的图像电子合同签署及验证方法
CN112202984A (zh) * 2020-09-25 2021-01-08 中国人民武装警察部队工程大学 一种基于纠错冗余的密文域可逆信息隐藏方法
CN113938691A (zh) * 2021-09-28 2022-01-14 西南交通大学 一种加密图像可逆信息隐藏方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160189325A1 (en) * 2014-12-30 2016-06-30 University Of Macau Method for reversible image data hiding
CN106408495A (zh) * 2015-11-06 2017-02-15 河南师范大学 一种基于混沌理论的高psnr脆弱水印方法
CN112070636A (zh) * 2020-09-09 2020-12-11 西南交通大学 一种具有多级证据链的图像电子合同签署及验证方法
CN112202984A (zh) * 2020-09-25 2021-01-08 中国人民武装警察部队工程大学 一种基于纠错冗余的密文域可逆信息隐藏方法
CN113938691A (zh) * 2021-09-28 2022-01-14 西南交通大学 一种加密图像可逆信息隐藏方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
宋畅: "基于图像加密域的可逆信息隐藏算法研究", 《东南大学》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116825259A (zh) * 2023-08-31 2023-09-29 四川省医学科学院·四川省人民医院 一种基于物联网的医疗数据管理方法
CN116825259B (zh) * 2023-08-31 2023-11-07 四川省医学科学院·四川省人民医院 一种基于物联网的医疗数据管理方法
CN117156138A (zh) * 2023-10-31 2023-12-01 季华实验室 图像的不定长深度哈希编码方法、装置、设备及存储介质
CN117156138B (zh) * 2023-10-31 2024-02-09 季华实验室 图像的不定长深度哈希编码方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN114745475B (zh) 2023-03-24

Similar Documents

Publication Publication Date Title
Yin et al. Reversible data hiding in encrypted images based on multi-MSB prediction and Huffman coding
Yin et al. Reversible data hiding in encrypted images based on pixel prediction and bit-plane compression
Jo et al. A digital image watermarking scheme based on vector quantisation
Tai et al. Image self-recovery with watermark self-embedding
Zhang et al. Reference sharing mechanism for watermark self-embedding
Saha et al. Steganographic techniques of data hiding using digital images
Wang et al. Reversible data hiding in encrypted images with block-based adaptive MSB encoding
JP4669187B2 (ja) 圧縮イメージ内に透かしを組み込む方法、圧縮されたイメージからすかしを回復する方法、ならびに記録媒体
CN112202984B (zh) 一种基于纠错冗余的密文域可逆信息隐藏方法
CN114745475B (zh) 一种鲁棒的加密图像可逆信息隐藏方法
CN110913092B (zh) 一种加密图像可逆信息隐藏方法
Kumar et al. Reversible data hiding: A contemporary survey of state-of-the-art, opportunities and challenges
Chanu et al. A survey paper on secret image sharing schemes
CN114567711A (zh) 一种基于块容量标签的大容量加密图像信息隐藏方法
Rezaei et al. Digital image self-recovery using CNN networks
Gao et al. High-performance reversible data hiding in encrypted images with adaptive Huffman code
Singh et al. An efficient self-embedding fragile watermarking scheme for image authentication with two chances for recovery capability
Gao et al. Reversible watermarking algorithm based on wavelet lifting scheme
CN115190216B (zh) 基于预测误差图的加密图像可逆数据隐藏及解密方法
CN116437019A (zh) 一种全0行和全0列编码的密文域可逆信息隐藏方法
Zhang et al. Blind dual watermarking scheme using stucki kernel and spiht for image self-recovery
CN113378186B (zh) 一种基于编码的图像加密隐藏信息的方法及装置
Li et al. High‐Capacity Reversible Data Hiding in Encrypted Images by Information Preprocessing
AU2021102700A4 (en) A system for reversible data hiding in encrypted images
CN115103081B (zh) 基于混合预测和哈夫曼编码的加密图像可逆数据隐藏方法

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