CN106780278B - 一种结合零水印和块分类融合的自恢复图像加密和解密方法 - Google Patents

一种结合零水印和块分类融合的自恢复图像加密和解密方法 Download PDF

Info

Publication number
CN106780278B
CN106780278B CN201611056502.1A CN201611056502A CN106780278B CN 106780278 B CN106780278 B CN 106780278B CN 201611056502 A CN201611056502 A CN 201611056502A CN 106780278 B CN106780278 B CN 106780278B
Authority
CN
China
Prior art keywords
formula
equation
block
image
random numbers
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
Application number
CN201611056502.1A
Other languages
English (en)
Other versions
CN106780278A (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.)
Shaanxi Normal University
Original Assignee
Shaanxi Normal 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 Shaanxi Normal University filed Critical Shaanxi Normal University
Priority to CN201611056502.1A priority Critical patent/CN106780278B/zh
Publication of CN106780278A publication Critical patent/CN106780278A/zh
Application granted granted Critical
Publication of CN106780278B publication Critical patent/CN106780278B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0042Fragile watermarking, e.g. so as to detect tampering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0052Embedding of the watermark in the frequency domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

本发明提供一种结合零水印和块分类融合的自恢复图像加密和解密方法,在加密时,首先依据待加密图像小块频域交变系数能量将小块划分为4类并保留对应的交直流系数作为修复参考矩阵;其次将位置置乱小块的主信息和原位置参考矩阵副信息相融合,依据编码矩阵获取融合小块的认证信息;再次将分别置乱的融合前小块直流分量、块类型和融合小块认证信息作为第3方公信方存储的零水印;最后由融合小块重构图像并进行全局位置置乱生成加密图像。在恢复时,首先重构融合小块,利用主副信息认证关系和零水印恢复主信息并重构解密图像。同现有方法相比,所提方法既可对图像进行有效的加密,还可对信道攻击进行一定的恢复,具备更高的应用价值。

Description

一种结合零水印和块分类融合的自恢复图像加密和解密方法
技术领域
本发明属于图像安全和图像信号处理交叉领域,涉及一种图像加密及解密方法,特别涉及一种结合零水印和块分类融合的自恢复图像加密和解密方法。
背景技术
针对图像加密,已提出了多种图像加密方法:
①通过对像素值改变来对图像进行混淆加密的图像加密方法,例如:彭再平等,2014(彭再平,王春华,林愿,等.一种新型的四维多翼超混沌吸引子及其在图像加密中的研究[J].物理学报,2014,63(24):240506-1–240506-10)和朱从旭等,2012(朱从旭,孙克辉.对一类超混沌图像加密算法的密码分析与改进[J].物理学报,2012,61(12):12503-1-12503-12)通过4维超混沌***产生随机序列对图像像素值进行异或加密。Zhang Xuanping等,2014a(Xuanping Zhang,Yanbin Mao,Zhongmeng Zhao.An efficient imageencryption based on alternate cicular S-boxes[J].Nonlinear Dynamics,2014,78(1):359-369)和Zhang Xuanping等,2014b(Xuanping Zhang,Zhongmeng Zhao,JiayinWang.Chaotic image encryption based on circularsubstitution box and keystream buffer[J].Signal Processing:Image Communication,2014,29(8):902-913)将图像像素在S-BOX上的映射值作为图像像素的加密值。
②扰乱邻近像素位置相关性的置换环节和改变像素值相关性的混淆环节的图像加密方法,官国荣等,2015(官国荣,吴成茂,贾倩.一种改进Lorenz混沌***构造及其加密应用[J].小型微型计算机***,2015,36(4):830-835)和赵玉青,2014(赵玉青.基于改进Chen混沌***的加密算法[J].小型微型计算机***,2014,35(9):2162-2166)分别对改进Lorenz混沌***和添加扰动的Chen***产生的随机序列进行预处理,通过排序对待加密图像像素进行位置置换,并将置换后的图像像素进行异或混淆加密。Xiao Juntong等,2015(Xiao Juntong,Zhu Wang,Miao Zhang,et al.An image encryption algorithm basedon the perturbed high-dimensional chaotic map[J].Nonlinear Dynamics,2015,80(3):1493-1508)将图像像素矩阵划分为5个部分,由不同初始值驱动猫映射进行像素位置置换,然后对像素进行异或混淆加密。
③基于置换与混淆加密环节耦合性相结合的图像加密方法,例如Narendra K等,2013(Narendra K.Pareek,Vinod Patidar,Krishan K.Sud.Diffusion–substitutionbased gray imageencryption scheme[J].Digital Signal Processing,2013,23(3):894-901)通过128位外部密钥将对图像的全局异或加密,分块混淆过程的块大小和块内元素的起始位置以及邻近元素的异或加密方向耦合到了一起。徐亚等,2015(徐亚,张绍武.基于Arnold映射的分块双层自适应扩散图像加密算法[J].中国图像图形学报,2015,20(6):0740-0748)采用外部密钥将Arnold对块及块内像素置换以及扩散操作耦合在了一起,加密后的像素与外部密钥共同更新混沌***初始参数。
④基于加密图像明文属性的图像加密算法,例如Yicong Zhou等,2014(YicongZhou,Weijia Cao,C.L.Philip Chen.Image encryption using binary bitplane[J].Signal Processing,2014,100(7):197-207)将明文像素和与Logistic映射迭代次数相绑定,从而不同像素对应于不同的logistic映射迭代次数。Xingyuan Wang等,2014(XingyuanWang,Kang Guo.A new image alternate encryption algorithm based on chaotic map[J].Nonlinear Dynamics.2014,76(4):1943-1950)将明文像素和作为映射参数,使得不同图像对应不同随机数。
⑤选择性图像加密方法,包含对比特位面和比特位的选择性加密策略,例如Rehman A U,2015.(Rehman A U,Liao X,Kulsoom A,et al.Selective encryption forgray images based on chaos and DNA complementary rules[J].Multimedia Toolsand Applications,2015,74(13):4655-4677)对待加密图像的高低位比特位面通过不同的DNA序列加密。Kulsoom A,2016.(Kulsoom A,Xiao D,Aqeel-ur-Rehman,et al.Anefficient and noise resistive selective image encryption scheme for grayimages based on chaotic maps and DNA complementary rules[J].Multimedia Toolsand Applications,2016,75(1):1-23.)进一步引入图像MD5值来提高Rehman A U,2015所述策略的抗选择明文攻击能力。对图像像素和像素块进行筛选,对筛选出的像素和像素块进行选择性加密,例如赵亮,2010.(赵亮,廖晓峰,向涛等.基于Z矩阵映射和选择加密的彩色图像退化算法研究.物理学报[J],2010,59[3]:1507-1523.)给出了基于像素随机筛选模版和像素信息熵的图像退化加密方法。Wen W,2015.(Wen W,Zhang Y,Fang Z,etal.Infrared target-based selective encryption bychaotic maps[J].OpticsCommunications,2015,341:131–139.)利用几何活动轮廓和偏微分方程对红外图像目标区域进行筛选,然后对筛选出像素块进行加密。Khashan O A,2014.(Khashan O A,Zin A M,Sundararajan E A.Performance study of selective encryption in comparison tofull encryption for still visual images[J].Journal of Zhejiang UniversitySCIENCE C,2014,15(6):435-444.)对图像划分的不重叠分块计算像素和,根据像素和设定阈值之间的关系筛选出blowfish加密像素块。对图像特定频域系数进行选择性加密。汪丽华,2010.(汪丽华,廖晓峰,向涛等.基于小波变换的图像人工退化算法[J].计算机工程,2010,36(16):203-207.)将原始图像转换为不同频率成分的小波域子图像,通过对高频部分添加乘性噪声和加性噪声来对图像进行频域选择性加密。
尽管目前已提出了大量图像加密方法,但现有图像加密方法通常关注的是如何有效和安全地构造加密策略,而对加密图像的抗攻击能力关注较为有限,一些图像加密方法尽管具备一定抗攻击能力,但抵御攻击的能力十分有限并且上述所给出的图像加密方法都不具备攻击后修复能力。
发明内容
本发明目的在于克服现有技术缺陷,提供一种结合零水印和块分类融合的自恢复图像加密和解密方法,同现有方法相比,所提方法既可对图像进行加密,还可对信道受攻击后具备修复能力。
为实现该目的,本发明采用以下技术方案:
一种结合零水印和块分类融合的自恢复图像加密方法,包括以下步骤:
第1步:记分辨率为m×n的原始图像A且满足(m)mod4=0,(n)mod4=0,将A划分为4×4不重叠小块Au,v,u=0,1,…,(m/4)-1,v=0,1,…,(n/4)-1,记划分小块数为bm×bn,则有bm=m/4,bn=n/4,输入用户给定参数x0∈(0,1)和μ0∈[3.57,4];
第2步:记Au,v=(ai,j)4×4,对Au,v进行频域变换,记变换后输出块为A′u,v=(a′s,t)4×4
第3步:计算A′u,v=(a′s,t)4×4的交变系数能量Eu,v,确定Au,v的块类型Tu,v
第4步:对所有A′u,v根据Tu,v保留交直流系数作为恢复系数参考矩阵Ru,v
第5步:将用户给定的参数x0和μ0映射为μ′0∈[3.57,4]和x′0∈(0,1),然后以μ′0,x′0为参数产生(0,1)范围内的随机数,在迭代时,为消除暂态效应,将最开始生成的IT,IT>0次随机数删除掉,将后续生成的随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中w=bm,h=bn;
第6步:将所有矩阵小块Ru,v位置置乱,将置乱后小块记为
Figure BDA0001162668680000051
将A′u,v
Figure BDA0001162668680000052
融合在一起作为A″u,v,其中A′u,v称为A″u,v主信息,
Figure BDA0001162668680000053
称为A″u,v副信息,置乱参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及t=T0,w=bm,h=bn;
第7步:取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]与t=T1,T2,w=bm,h=bn分别将所有矩阵小块Ru,v对应的DC系数DCu,v置乱为
Figure BDA0001162668680000054
将所有Tu,v位置置乱,将置乱后Tu,v记为
Figure BDA0001162668680000055
第8步:设定阈值T,T≥0,对所有A″u,v,将待编码图像块A″u,v中DCT系数与阈值T进行比较,然后转换为编码矩阵Bu,v=(bi,j)4×4
第9步:生成随机起始值lstart∈(0,1),将所有Bu,v量化为2值比特位串lru,v,lcu,v,ldu,v,由lstart和μ0产生(0,1)范围内随机数,将前IT,IT>0次生成随机数剔除掉,将后续生成随机数依次作为筛选比特位串lru,v,lcu,v,ldu,v的随机数种子,从lru,v,lcu,v,ldu,v分别随机筛选出6位比特位串lr′u,v,lc′u,v,ld′u,v并将lr′u,v,lc′u,v,ld′u,v映射为6位随机比特autu,v,将autu,v作为块A″u,v的6位认证比特auu,v,将所有auu,v置乱,记置乱后auu,v
Figure BDA0001162668680000056
置乱参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及t=T3,w=bm,h=bn;
第10步:将置乱后位于同一位置的DCu,v,Tu,v,auu,v构成三元组集合作为零水印存储在第3方公信方对应的数据库中;
第11步:将所有A″u,v进行恢复,并重构图像A″′;
第12步:将μ′0∈[3.57,4]和x′0∈(0,1)映射为μ″0∈[3.57,4]和x″0∈(0,1),然后以μ″0,x″0为参数产生(0,1)范围内的随机数,在迭代时将前IT,IT>0次随机数剔除掉,将后续生成的随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中w=m,h=n;
第13步:由所有A″u,v重构图像A″,将A″=(a″i,j)m×n位置置乱为A″′,将A″′输出作为加密后图像,其中参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及t=T0,w=m,h=n。
进一步,在第2步中对Au,v进行频域变换的具体方法为式(1):
Figure BDA0001162668680000061
式(1)中,cs为标准化系数,其具体取值如式(2)所示:
Figure BDA0001162668680000062
在第3步中计算A′u,v=(a′s,t)4×4对应的交变系数能量Eu,v,确定Au,v所对应的块类型Tu,v的具体方法为:按式(3)计算A′u,v=(a′s,t)4×4对应的交变系数能量Eu,v,然后按式(4)确定Au,v对应的块类型Tu,v
Figure BDA0001162668680000063
Figure BDA0001162668680000064
式(4)中,λ012为分割阈值;
在第4步中对所有A′u,v根据块类型Tu,v保留对应位置的交直流系数作为恢复系数参考矩阵Ru,v的具体方法为式(17):
Figure BDA0001162668680000065
式(17)中,DC为直流系数,AC为交变系数。
进一步,第3步式(4)中确定分割阈值λ012的具体确定方法为:
第3.1步:生成平滑矩阵模板
Figure BDA0001162668680000066
第3.2步:将参数x0和μ0分别作为式(5)初始值和***参数,驱动式(5)产生(0,1)范围内的随机数,在迭代时,为消除暂态效应,将前IT,IT>0次生成的随机数删掉,将后续生成的160个随机数记为xIT,xIT+1,…,xIT+159按式(6)量化为[0,255]范围内整数X0,X1,…,X159,按式(7)产生候选随机矩阵模板
Figure BDA0001162668680000067
xn+1=μxn(1-xn) (5)
式(5)中,xn∈(0,1)为迭代起始值,μ为变换参数,当μ∈[3.57,4]时,式(5)处于混沌状态具有初值敏感性;
Figure BDA0001162668680000071
Figure BDA0001162668680000072
第3.3步:按式(8)计算
Figure BDA0001162668680000073
的均值矩阵M=(mi,j)4×4,按式(9)找出与均值矩阵M差异最大矩阵
Figure BDA0001162668680000074
与均值矩阵M差异最小的矩阵
Figure BDA0001162668680000075
并将
Figure BDA0001162668680000076
Figure BDA0001162668680000077
从Mk中去掉,将Mk中剩余的8个矩阵计算得到均值矩阵作为随机矩阵模板
Figure BDA0001162668680000078
num>1:
Figure BDA0001162668680000079
Figure BDA00011626686800000710
第3.4步:对
Figure BDA00011626686800000711
Figure BDA00011626686800000712
按式(10)加权,产生num-1个模板矩阵
Figure BDA00011626686800000713
然后按式(3)计算交变系数能量El,l=0,1,…,num;
Figure BDA00011626686800000714
第3.5步:将区间[E0,Enum]按式(11)划分为L,L>1个区间并分配能量阶K,K=0,1,…,L-1,对能量阶进行统计形成能量直方图HE=(hK)L,其中hK表示能量阶为K的交变系数能量发生次数,并按式(12)计算每个能量阶发生概率PK,K=0,1,…,L-1;
Figure BDA00011626686800000715
Figure BDA00011626686800000716
第3.6步:按式(13)可确定划分阈值λ012,即对区间范围内的λ∈[λbeginend],求解使目标式δ最大化的λ,即
Figure BDA00011626686800000717
Figure BDA0001162668680000081
式(13)中upart1,upart2,utotal分别按式(14)、式(15)和式(16)计算:
Figure BDA0001162668680000082
Figure BDA0001162668680000083
Figure BDA0001162668680000084
将λbegin=0,λend=L-1代入式(13),可确定分割阈值λ1;将λbegin=0,λend=λ1-1代入式(14),可确定分割阈值λ0;将λbegin=λ1+1,λend=L-1代入式(13),可确定阈值λ2
进一步,在第5步中将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中w=bm,h=bn的具体方法为:记后续生成随机数为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中式(20)中取w=bm,h=bn,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1)直至按式(20)生成的映射值满足式(21)的条件;
Figure BDA0001162668680000085
Figure BDA0001162668680000086
Figure BDA0001162668680000087
Figure BDA0001162668680000088
式(21)中“|”表示或,p=gcd(w,h)为w,h的最大公因子且w=pz1,h=pz2
在第6步中将所有矩阵小块Ru,v位置置乱的具体方法为式(22):
Figure BDA0001162668680000089
在第7步中将所有矩阵小块Ru,v对应的DC系数DCu,v置乱为
Figure BDA0001162668680000091
将所有Tu,v位置置乱为
Figure BDA0001162668680000092
的具体方法为式(22);
在第12步中将后续生成的随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中取w=m,h=n的具体方法为:记后续生成随机数为l0,l1,l2,l3,l4,l5,l6∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中式(20)中w=m,h=n,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6∈(0,1)直至按式(20)生成映射值满足式(21)条件;
在第13步中,将A″=(a″i,j)m×n位置置乱为A″′的具体方法为式(22)。
进一步,在第6步中将A′u,v
Figure BDA0001162668680000093
融合在一起作为A″u,v的具体方法为:
记Tu,v,
Figure BDA0001162668680000094
分别对应为A′u,v
Figure BDA0001162668680000095
的块类型,将A′u,v
Figure BDA0001162668680000096
融合的具体方法如式(23a)~式(23d)所示,式中ACi和AC′i分别对应为A′u,v
Figure BDA0001162668680000097
的交变系数:
Figure BDA0001162668680000098
Figure BDA0001162668680000099
Figure BDA00011626686800000910
Figure BDA00011626686800000911
式(23a)~式(23d)中,当
Figure BDA00011626686800000912
时,此时直接将A″u,v作为A″u,v,即A″u,v=A′u,v
进一步,在第8步中将待编码图像块A″u,v中的DCT系数与阈值T进行比较,然后转换为编码矩阵Bu,v=(bi,j)4×4的具体方法为式(24):
Figure BDA0001162668680000101
式(24)中,cofi,j为待编码图像块第(i,j)位置的DCT系数;
在第9步中生成随机起始值lstart∈(0,1)的具体方法为式(25):
lstart=(l0+l1+…+l9)/10 (25)
在第9步中,将所有Bu,v量化为2值比特位串lru,v,lcu,v,ldu,v的具体方法为式(26)、式(27)和式(28):
Figure BDA0001162668680000102
Figure BDA0001162668680000103
Figure BDA0001162668680000104
式(26)、式(27)和式(28)中,函数bin()为2值化函数,bin(v)执行的功能如式(29)所示:
Figure BDA0001162668680000105
在第6步中,将lr′u,v,lc′u,v,ld′u,v映射为6位随机比特autu,v的具体方法为式(30):
Figure BDA0001162668680000106
式(30)中,
Figure BDA0001162668680000107
为异或运算符。
一种结合零水印和块分类融合的自恢复图像解密方法,包括以下步骤:
第1步:记接收到分辨率为m×n的信道传输图像为Z=(zi,j)m×n且满足(m)mod4=0,(n)mod4=0,记Z可划分4×4不重叠小块的块数为bm×bn,则有bm=m/4,bn=n/4,输入用户给定的参数x0∈(0,1),μ0∈[3.57,4],阈值T以及消除暂态效应的滤除迭代次数IT,IT>0;
第2步:将用户给定参数x0和μ0映射为μ′0∈[3.57,4]和x′0∈(0,1),然后驱动μ′0,x′0产生(0,1)范围内随机数,在迭代时,为消除暂态效应,将最开始生成的IT,IT>0次随机数剔除,将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中w=bm,h=bn;
第3步:从第3方公信方提取出零水印对应的三元组集合,记其中1个三元组对应为(DCu,v,Tu,v,auu,v),以a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T1,T2,T3∈[0,IT-1]为参数,取w=bm,h=bn,将
Figure BDA0001162668680000111
其中u=0,1,…,bm-1,v=0,1,…,bn-1;
第4步:生成随机起始值lstart∈(0,1),将T0记为S0,由μ′0∈[3.57,4]和x′0∈(0,1)映射生成μ″0∈[3.57,4]和x″0∈(0,1),然后驱动μ″0,x″0产生(0,1)范围内随机数,在迭代时,将前IT,IT>0次随机数剔除掉,将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中w=m,h=n;
第5步:将Z恢复为Z′=(z′i,j)m×n,其中参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及t=T0,w=m,h=n,将Z′划分为4×4不重叠小块Z′u,v,u=0,1,…,bm-1,v=0,1,…,bn-1,将每个小块Z′u,v变换为Z″u,v=(z″s,t)4×4
第6步:对所有Z″u,v,将Z″u,v中DCT系数与阈值T进行比较,转换为编码矩阵Bu,v=(bi,j)4×4
第7步:将所有Bu,v量化为2值比特位串lru,v,lcu,v,ldu,v,由lstart和μ0产生(0,1)范围内随机数,将前IT,IT>0次随机数删除掉,将后续生成随机数依次作为筛选比特位串lru,v,lcu,v,ldu,v的随机数种子,从lru,v,lcu,v,ldu,v中随机筛选出6位比特位串lr′u,v,lc′u,v,ld′u,v,将lr′u,v,lc′u,v,ld′u,v映射为6位随机比特autu,v,将autu,v作为块Z″u,v的6位认证比特au′u,v
第8步:对所有块Z″u,v,若au′u,v=auu,v,则将Z″u,v标记为完整块,否则将Z″u,v标记为待修复块,并通过标记矩阵S=(su,v)bm×bn进行标记,当su,v=1时为完整块,su,v=0为待修复块,su,v=2为已修复块;
第9步:若块Z″u,v标记状态为su,v=0,则对块Z″u,v主信息A′u,v进行试探性恢复;
第10步:重复第9步,直至将所有标记状态为su,v=0的Z″u,v恢复为A′u,v
第11步:对所有su,v=1的Z″u,v,提取Z″u,v存储的交变系数AC0,AC1,…,ACk-1,将DCu,v作为Z″u,v的直流系数,其余元素清零,然后填充到Z″u,v中的第1~k个位置,并将Z″u,v作为A′u,v输出,其中k为Z″u,v主信息交变系数个数;
第12步:将所有A′u,v=(a′s,t)4×4恢复为Au,v=(ap,q)4×4并重构秘密图像A。
进一步,在第2步中将用户给定参数x0和μ0映射为μ′0∈[3.57,4]和x′0∈(0,1)的具体方法为:
Figure BDA0001162668680000121
Figure BDA0001162668680000122
在第2步中驱动μ′0,x′0产生(0,1)范围内随机数的具体方法为式(5):
xn+1=μxn(1-xn) (5);
在2步中将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中w=bm,h=bn的具体方法为:记后续生成随机数为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中式(20)中的w=bm,h=bn,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1)直至按式(20)生成映射值满足式(21)的条件;
Figure BDA0001162668680000123
Figure BDA0001162668680000124
式(21)中“|”表示或,p=gcd(w,h)为w,h的最大公因子且w=pz1,h=pz2
在第3步中,将
Figure BDA0001162668680000125
的具体方法为式(32):
Figure BDA0001162668680000126
在第4步中生成随机起始值lstart∈(0,1)具体方法为式(25):
lstart=(l0+l1+…+l9)/10 (25)
在第4步中由μ′0∈[3.57,4]和x′0∈(0,1)映射生成μ″0∈[3.57,4]和x″0∈(0,1)的具体方法为将μ′0∈[3.57,4]和x′0∈(0,1)作为式(18)和式(19)中的μ0,x0,利用式(18)和式(19)映射生成μ′0∈[3.57,4]和x′0∈(0,1):
在第4步中将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中w=m,h=n的具体方法为:将后续生成随机数记为l0,l1,l2,l3,l4,l5,l6∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中式(20)中的w=m,h=n,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6∈(0,1)直至按式(20)生成的映射值满足式(21)的条件;
在第5步中将Z恢复为Z′=(z′i,j)m×n的具体方法为式(32);
在第5步中将每个小块Z′u,v变换为Z″u,v=(z″s,t)4×4的具体方法为式(1):
Figure BDA0001162668680000131
式(1)中,cs为标准化系数,其具体取值如式(2)所示:
Figure BDA0001162668680000132
进一步,在第6步中转换为编码矩阵Bu,v=(bi,j)4×4的具体方法为式(24):
Figure BDA0001162668680000133
式(24)中,cofi,j为待编码图像块第(i,j)位置DCT系数;
在第7步中将所有Bu,v量化为2值比特位串lru,v,lcu,v,ldu,v的具体方法为式(26)、式(27)和式(28):
Figure BDA0001162668680000134
Figure BDA0001162668680000135
Figure BDA0001162668680000136
式(26)、式(27)和式(28)中,函数bin()为2值化函数,bin(v)功能如式(29)所示:
Figure BDA0001162668680000141
在第7步中由lstart和μ0产生(0,1)范围内随机数具体方法为式(5);
在第7步中将lr′u,v,lc′u,v,ld′u,v映射为6位随机比特autu,v具体方法为式(30)
Figure BDA0001162668680000142
在第12步中,将所有A′u,v=(a′s,t)4×4恢复为Au,v=(ap,q)4×4具体方法为式(35)。
进一步,在第9步中对块Z″u,v主信息A′u,v进行试探性恢复的具体方法为在于包括以下步骤:
第9.1步:将块Z″u,v中的所有元素清零,将t=S0,w=bm,h=bn代入式(32),按式(32)找到Z″u,v所对应的映射块;
第9.2步;若
Figure BDA0001162668680000143
标记状态
Figure BDA0001162668680000144
将Z″u,v所对应的DC系数置为DCu,v
第9.3步:若
Figure BDA0001162668680000145
标记状态
Figure BDA0001162668680000146
则根据
Figure BDA0001162668680000147
和Z″u,v块类型
Figure BDA0001162668680000148
Tu,v按式(33a)~(33d)将Z″u,v的交变系数AC′0,AC′1,…,AC′k-1
Figure BDA0001162668680000149
中提取出来,然后将DCu,v作为Z″u,v直流系数DC,将AC′0,AC′1,…,AC′k-1按式(34)矩阵元素对应索引位置填充到Z″u,v中的第1~第k个位置,其中k为
Figure BDA00011626686800001410
存储副信息交变系数个数;
Figure BDA00011626686800001411
Figure BDA00011626686800001412
Figure BDA00011626686800001413
Figure BDA0001162668680000151
式(33a)~(33d)中,ACi和AC′i分别为
Figure BDA0001162668680000152
存储的主信息和副信息交变系数;
Figure BDA0001162668680000153
第9.4步:将Z″u,v作为A′u,v输出并置su,v=2。
本发明同现有技术优点分析:
①传统图像加密方法通常关注的是如何有效和安全地构造加密策略,而对加密图像抗攻击能力关注较为有限,一些图像加密方法尽管具备一定抗攻击能力,但抵御攻击能力十分有限并且上述所给出的图像加密方法都不具备攻击后修复能力。同现有技术不同,本发明自恢复能力主要体现在恢复时,可利用主副信息认证关系和零水印恢复主信息并重构解密图像,通过主副信息的认证关系,可对主信息进行不同程度的恢复,在认证时,即使主信息遭受破坏,若存储于其他认证块中的副信息通过认证,也可对主信息进行近似恢复,若主副信息都遭受破坏,则依然可以通过可靠存储的零水印对主信息进行一定程度的恢复,恢复出块均值。从而相对于传统方法,提高了图像加密方法的抗攻击能力和攻击后修复能力。
②同传统图像加密方法不同,为增强所提策略抗攻击能力,本发明引入了零水印通过第3方公信方来存储待加密图像小块直流分量,认证位以及块类型编码,使得即使加密图像遭受大面积攻击,掌握正确密钥的用户则至少可以对攻击区域内图像小块的均值进行恢复,而整个提取的零水印数量仅和图像最低有效位数量相当,不会消耗太大存储空间。零水印中的直流分量,认证位以及块类型编码被充分置乱且仅能起到认证和加密图像的块均值恢复作用,使得零水印可以安全存储于第3方公信方。
③为减少对待加密图像小块量化而造成修复参考矩阵的视觉质量损失,需对待加密图像小块进行准确分类,为避免固定阈值所带来的分类偏差,本发明利用待加密图像小块的频域交变系数能量和并依据平滑模板和随机模板进行自适应分类,使得不同待加密图像小块都可准确分类,从而避免了加密图像小块量化为修复参考矩阵时带来的视觉质量损失。
④为提高认证准度,避免JPEG量化对认证准度的影响,本发明引入了基于量化阈值的编码矩阵,通过编码矩阵的行、列和对角相关性构造认证比特,通过与密钥有关的筛选策略来随机筛选认证比特,使得只有提供正确密钥的用户才能进行认证,同时又对JPEG压缩有较好的攻击容忍能力。
⑤同现有方法相比,所提方法既可对图像进行有效的加密,还可对信道中的攻击具备一定的恢复能力,因而具备更高的应用价值。
附图说明
图1是加密流程图;
图2是恢复流程图;
图3是原始图像;
图4是图3块分类情况示意图;图5是含恢复信息图像;
图6是置乱含恢复信息图像;
图7是图6经质量因子为80的JPEG压缩图像;
图8是由图7置乱恢复图像;
图9是图8对应的篡改检测图像;
图10是最终恢复秘密图像;
图11是由图3按2维双尺度矩形映射直接置乱图像;
图12是对图11经质量因子为80的JPEG压缩得到图像;
图13是由图12直接恢复图像。
具体实施方式
实验测试环境为Windows 10操作***,CPU为Inter(R)Core(TM)i5-6600,主频为3.31GHz,内存为8.00GB,,实验编码语言为Java jdk1.8.0_65,以下结合附图对本发明实施方式进行详细说明,但不局限于本实施案例,其中图1是加密流程图,图2是恢复流程图。嵌入方法的具体实施步骤如下:
第1步:记分辨率为m×n原始图像A,并且满足(m)mod4=0,(n)mod4=0,将A划分为4×4不重叠小块Au,v,u=0,1,…,(m/4)-1,v=0,1,…,(n/4)-1,记划分小块数为bm×bn,则有bm=m/4,bn=n/4,输入用户给定参数x0∈(0,1)和μ0∈[3.57,4];例如:取图3为原始图像,原始图像是分辨率为512×512的8位灰度图像Lena,其中m=512,n=512,bm=m/4=128,bn=n/4=128,输入用户给定参数x0=0.8178099125461247,μ0=3.811008696444322;
第2步:记Au,v=(ai,j)4×4,按式(1)对Au,v进行2维离散余弦变换,记变换后输出块为A′u,v=(a′s,t)4×4;例如A127,0经式(1)对应的输出块A′127,0分别为:
Figure BDA0001162668680000171
第3步:按式(3)计算A′u,v=(a′s,t)4×4交变系数能量Eu,v,按式(4)确定Au,v块类型Tu,v;例如按式(3)可得到A0,0交变系数能量为E0,0=1.7320508075688772;式(4)中λ012为分割阈值,具体生成方法如下:
第3.1步:生成平滑矩阵模板
Figure BDA0001162668680000172
第3.2步:将参数x0和μ0作为式(5)初始值和***参数,驱动式(5)产生(0,1)范围内随机数,在迭代时,为消除暂态效应,将前IT,IT>0次生成随机数删掉,将后续生成160个随机数记为xIT,xIT+1,…,xIT+159按式(6)量化为[0,255]范围内随机整数X0,X1,…,X159,按式(7)产生候选随机矩阵模板
Figure BDA0001162668680000181
例如:将x0=0.8178099125461247和μ0=3.811008696444322代入式(5),取IT=1000,则滤除前1000个随机数,将后续生成的160个随机数记为xIT=0.5267391586011982,0.9500273691943842,…,xIT+159=0.3115701697334002,按式(6)量化得到随机整数为X0=238,X1=144,…,X159=24,按式(7)产生随机矩阵模板:
Figure BDA0001162668680000182
Figure BDA0001162668680000183
第3.3步:按式(8)计算
Figure BDA0001162668680000184
均值矩阵M=(mi,j)4×4,按式(9)找出与均值矩阵M差异最大矩阵
Figure BDA0001162668680000185
与均值矩阵M差异最小的矩阵
Figure BDA0001162668680000186
Figure BDA0001162668680000187
Figure BDA0001162668680000188
从Mk中去掉,将Mk中剩余8个矩阵计算均值矩阵作为随机矩阵模板
Figure BDA0001162668680000189
num>0:例如:按式(8)可得到均值矩阵为M,按式(9)找出差异最小矩阵
Figure BDA00011626686800001810
差异最大矩阵
Figure BDA00011626686800001811
则最终得到随机矩阵模板RDnum分别为:
Figure BDA00011626686800001812
第3.4步:对
Figure BDA00011626686800001813
Figure BDA00011626686800001814
按式(10)加权,产生num-1个模板矩阵
Figure BDA00011626686800001815
然后按式(3)计算
Figure BDA00011626686800001816
对应的交变系数能量El,l=0,1,…,num;例如对RD0和RDnum按式(10)加权,取num=100产生模板矩阵为:
Figure BDA0001162668680000191
按式(3)得:E0=0,E1=1.9364916731037085,…,E100=137.07821672315407;
第3.5步:将区间[E0,Enum]按式(11)划分为L,L>1个区间并分配能量阶K,K=0,1,…,L-1,对能量阶进行统计形成能量直方图HE=(hK)L,其中hK表示能量阶为K交变系数能量发生次数,并按式(12)计算每个能量阶的发生概率PK,K=0,1,…,L-1;例如:取L=137,若总共有101个交变系数能量,若落入第0个区间有1个交变系数能量,则按式(12)有:P0=1/101.
第3.6步:按式(13)可确定划分阈值λ012,即对区间范围内λ∈[λbeginend],求解使目标式δ最大化的λ,即
Figure BDA0001162668680000192
将λbegin=0,λend=L-1代入式(13),可确定分割阈值λ1;将λbegin=0,λend=λ1-1代入式(14),可确定分割阈值λ0;将λbegin=λ1+1,λend=L-1代入式(13),可确定分割阈值λ2;例如若已经确定P0,P1,…,PL-1,且有λbegin=0,λend=136,将其分别带入式(14)、式(15)和式(16)可分别得到upart1=0.0,upart2=69.29576829310979,utotal=68.60967157733643,然后将P0,P1,…,PL-1和upart1=0.0,upart2=69.29576829310979,utotal=68.60967157733643代入式(13)可得到:δ0=47.07,δ1=92.43,…,δ67=1200.08,…,δ137=-3.1356830691664262E-12从而可得到分割点λ1=67,同理可得分割点λ0=33,λ2=103,获得了分割阈值λ012,则可按式(4)确定Au,v所对应的块类型Tu,v,例如E0,0=1.7320508075688772,则T0,0=0;
第4步:对所有A′u,v根据块类型Tu,v按式(17)保留对应位置交直流系数作为恢复系数参考矩阵Ru,v;例如A′127,0块交变系数为E127,0=69.45502141674135,根据式(4)知T127,0=2,按式(17)可得到A′127,0恢复系数参考矩阵R127,0为:
Figure BDA0001162668680000193
第5步:将用户给定的参数x0∈(0,1)和μ0∈[3.57,4]按式(18)和式(19)映射为μ′0∈[3.57,4]和x′0∈(0,1),然后驱动式(5)产生(0,1)范围内的随机数,在迭代时,为消除暂态效应,将最开始生成的IT,IT>0次的随机数删掉,记后续生成随机数为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中式(20)中的w=bm,h=bn,反复取后续随机数作为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1)直至按式(20)生成映射值满足式(21)条件;例如将x0=0.8178099125461247和μ0=3.811008696444322代入式(5),取IT=1000,则滤除前1000个随机数,按式(18)和(19)可得:x′0=0.665854370759757和μ′0=3.8659376278555553,将后续生成的满足式(21)随机数记为:
Figure BDA0001162668680000201
按式(20)可得到:a0=78,a1=55,a2=86,a3=41,a4=104,a5=41,T0=274,T1=291,T2=850,T3=38;
第6步:按式(22)将所有小块Ru,v位置置乱,将置乱后小块记为
Figure BDA0001162668680000202
式(22)中取t=T0,w=bm,h=bn,记Tu,v
Figure BDA0001162668680000203
分别为A′u,v
Figure BDA0001162668680000204
块类型,则根据Tu,v,
Figure BDA0001162668680000205
按式(23a)~式(23d)将A′u,v
Figure BDA0001162668680000206
融合在一起作为A″u,v,其中A′u,v称为A″u,v主信息,
Figure BDA0001162668680000207
称为A″u,v的副信息;例如取t=T0=274,w=128,h=128,按式(22)可将R127,0置乱为R94,89,若A′127,0对应T127,0=2,A′94,89对应T94,89=1,则按式(23c)可将A′127,0和R94,89融合在一起作为A″127,0,以下分别是:A′127,0,R94,89和A″127,0,其中A′127,0称为A″127,0主信息,R94,89是A″127,0副信息;
Figure BDA0001162668680000208
Figure BDA0001162668680000209
第7步:取式(22)中t=T1,按式(22)将所有矩阵小块Ru,v对应的DC系数DCu,v置乱为
Figure BDA00011626686800002010
取式(22)t=T2,按式(22)将所有Tu,v位置置乱,将置乱后Tu,v记为
Figure BDA00011626686800002011
式(22)中取w=bm,h=bn;例如:取参数t=T1=291,则可将R127,0对应DC系数DC127,0置乱为DC65,119,取参数t=T2=850,则可将R127,0对应块类型T127,0置乱为T62,121
第8步:设定阈值T,T≥0作为用户密钥,对所有A″u,v,将待编码图像块A″u,v中DCT系数与阈值T进行比较,按式(24)转换为编码矩阵Bu,v=(bi,j)4×4
例如:取阈值T=20,以块A″127,0为例,则按式(24)得到的编码矩阵B127,0为:
Figure BDA0001162668680000211
第9步:将l0,l1,l2,l3,l4,l5,l6,l7,l8,l9按式(25)映射为随机起始值lstart∈(0,1),对所有Bu,v按式(26)、式(27)和式(28)量化为2值比特位串lru,v,lcu,v,ldu,v,将lstart和μ0代入式(5)产生(0,1)范围内随机数,将前IT,IT>0次生成随机数剔除掉,将后续生成随机数依次作为筛选比特位串lru,v,lcu,v,ldu,v随机数种子,从lru,v,lcu,v,ldu,v分别随机筛选出6位比特位串lr′u,v,lc′u,v,ld′u,v,按式(30)映射为6位随机比特autu,v,将autu,v作为块A″u,v6位认证比特auu,v,按式(22)将所有auu,v置乱,记置乱后的auu,v
Figure BDA0001162668680000212
式(22)中取t=T3,w=bm,h=bn;例如:将l0,l1,l2,l3,l4,l5,l6,l7,l8,l9按式(25)映射得到的随机起始值为lstart=0.6029878202434327,将B127,0按式(26)、式(27)和式(28)量化为2值比特位串lr127,0=(11111111)2,lc127,0=(11111111)2,ld127,0=(11111111)2,将lstart和μ0作为初始值,代入式(5)去除前1000次之后,产生随机数为0.5922295126716617,0.9203346555945013,0.27941849792679074,依次作为从lr127,0,lc127,0,ld127,0中各筛选出6位比特位串的随机数种子,筛选后比特位串为lr′127,0=(111111)2,lc′127,0=(111111)2,ld′127,0=(111111)2,按式(30)将lr′127,0,lc′127,0,ld′127,0映射为6位随机比特位串aut127,0=(111111)2,并将aut127,0作为块A″127,06位认证比特au127,0,取式(22)中参数w=128,h=128,t=T3=38,按式(22)可将au127,0置乱为au12,43
第10步:将置乱后位于同一位置的DCu,v,Tu,v,auu,v构成三元组集合作为零水印存储在第3方公信方对应的数据库中;例如:图像块A″127,0对应置乱后的DC系数为DC65,119,将DC65,119以及与他相同位置T65,119和au65,119构成的三元组集合(DC65,119,T65,119,au65,119),由所有三元组(DCu,v,Tu,v,auu,v)可构成集合作为零水印存储在第3方公信方对应的数据库中;
第11步:将所有A″u,v按式(31)进行恢复,并重构图像A″′,记A″′4×4不重叠块为A″′u,v且A″u,v=(a″s,t)4×4,A″′u,v=(a″′p,q)4×4;例如:将A″127,0按式(31)进行恢复,可得到图像块为:
Figure BDA0001162668680000221
第12步:将μ′0∈[3.57,4]和x′0∈(0,1)作为式(18)和式(19)中的μ0,x0,利用式(18)和式(19)映射生成μ″0∈[3.57,4]和x″0∈(0,1),然后驱动式(5)产生(0,1)范围内的随机数,在迭代时,将前IT,IT>0次随机数剔除掉,记后续生成随机数为l0,l1,l2,l3,l4,l5,l6∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中式(20)中的w=m,h=n,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6∈(0,1)直至按式(20)生成映射值满足式(21)的条件;例如:将x′0=0.665854370759757和μ′0=3.8659376278555553作为式(18)和式(19)中μ0,x0,利用式(18)和式(19)映射生成μ″0=3.8611245074562137和x″0=0.5824811722021471,按式(20)映射生成满足式(21)随机数:
Figure BDA0001162668680000222
按式(20)可映射得到满足式(21)约束的7个数:a0=237,a1=148,a2=250,a3=395,a4=501,a5=102,T0=523其中式(20)参数取w=512,h=512;
第13步:由所有A″u,v重构图像A″,按式(22)将A″=(a″i,j)m×n位置置乱为A″′,将A″′输出作为加密后图像,其中t=T0,w=m,h=n。例如:若式(22)中参数取t=T0=523,w=512,h=512,则像素点a″0,0将被置乱到a″102,372,由所有置乱后像素可构成A″′。
恢复方法的具体实施步骤:
第1步:记接收到分辨率为m×n信道传输图像为Z=(zi,j)m×n并且满足(m)mod4=0,(n)mod4=0,记Z可划分4×4不重叠小块的块数为bm×bn,则有bm=m/4,bn=n/4,输入用户给定参数x0∈(0,1),μ0∈[3.57,4],阈值T以及消除暂态效应滤除迭代次数IT,IT>0;例如:以图7为接收到的图像,图7分辨率为512×512,满足(512)mod4=0,可划分为4×4不重叠小块块数为128×128,用户给定的参数x0=0.8178099125461247,μ0=3.811008696444322,阈值T=20,消除暂态效应滤除迭代次数IT=1000;
第2步:将用户给定参数x0和μ0按式(18)和式(19)映射为μ′0∈[3.57,4]和x′0∈(0,1),然后驱动式(5)产生(0,1)范围内的随机数,在迭代时,为消除暂态效应,将最开始生成的IT,IT>0次随机数剔除,记后续生成随机数为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中式(20)中w=bm,h=bn,反复取后续生成的随机数作为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1)直至按式(20)生成的映射值满足式(21)的条件;例如:用户给定参数x0=0.8178099125461247,μ0=3.811008696444322作为式(5)的初始值按式x0和μ0,IT=1000,按(18)和(19)映射产生的数分别为x′0=0.665854370759757和μ′0=3.8659376278555553,若后续生成随机数为:
Figure BDA0001162668680000231
按式(20)可得到:a0=78,a1=55,a2=86,a3=41,a4=104,a5=41,T0=274,T1=291,T2=850,T3=38,由于a0,a1,a2,a3,a4,a5满足式(21)条件,因此映射值a0,a1,a2,a3,a4,a5和T0,T1,T2,T3生成完毕;
第3步:从第3方公信方中提取出零水印对应的三元组集合,记其中的1个三元组对应为(DCu,v,Tu,v,auu,v),将t=T1代入式(32),利用式(32)将所有DCu,v恢复为
Figure BDA0001162668680000232
将t=T2代入式(32),利用式(32)将所有Tu,v恢复为
Figure BDA0001162668680000233
将t=T3代入式(32),利用式(32)将所有auu,v恢复为
Figure BDA0001162668680000234
式(32)中取w=bm,h=bn,由此可将
Figure BDA0001162668680000235
其中u=0,1,…,bm-1,v=0,1,…,bn-1;例如:对于三元组DC0,0,T0,0,au0,0,取(32)中的参数t=T1=291,将DC0,0恢复为DC80,111,取式(32)中的参数t=T2=850,将T0,0恢复为T23,73,取式(32)中的参数t=T3=38,将au0,0恢复为au117,27,式(32)中取w=128,h=128;
第4步:将l0,l1,l2,l3,l4,l5,l6,l7,l8,l9按式(25)映射为随机起始值lstart∈(0,1),将T0记为S0,然后将μ′0∈[3.57,4]和x′0∈(0,1)作为式(18)和式(19)中的μ0,x0,利用式(18)和式(19)映射生成μ″0∈[3.57,4]和x″0∈(0,1),然后驱动式(5)产生(0,1)范围内随机数,在迭代时,将前IT,IT>0次随机数剔除掉,记后续生成随机数为l0,l1,l2,l3,l4,l5,l6∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中式(20)中w=m,h=n,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6∈(0,1)直至按式(20)生成映射值满足式(21)条件;例如:将l0,l1,l2,l3,l4,l5,l6,l7,l8,l9按式(25)映射得到随机起始值为lstart=0.6029878202434327,将T0记为S0即S0=T0=274,然后将x′0=0.665854370759757和μ′0=3.8659376278555553作为式(18)和式(19)中x00映射产生的数分别为x″0=0.5824811722021471和μ″0=3.8611245074562137,若后续生成随机数为:
Figure BDA0001162668680000241
按式(20)可得到:a0=237,a1=148,a2=250,a3=395,a4=501,a5=102,T0=523,由于a0,a1,a2,a3,a4,a5满足式(21)的条件,因此a0,a1,a2,a3,a4,a5,T0生成完毕,式(20)中取w=512,h=512;
第5步:按式(32)将Z恢复为Z′=(z′i,j)m×n,其中式(32)中的参数取t=T0,w=m,h=n,将Z′划分为4×4大小的不重叠小块Z′u,v,u=0,1,…,bm-1,v=0,1,…,bn-1,对每个小块Z′u,v按式(1)变换为Z″u,v=(z″s,t)4×4
例如:式(32)中参数取t=T0=523,w=512,h=512,则按式(32)可将z102,372恢复为z′0,0,由所有恢复后像素可得到Z′,将Z′划分为4×4不重叠小块,例如其中1个小块Z′94,89和经式(1)对应输出块Z″94,89
Figure BDA0001162668680000242
第6步:对所有Z″u,v,将Z″u,v中DCT系数与阈值T进行比较,按式(24)转换为编码矩阵Bu,v=(bi,j)4×4;例如:取阈值T=20,以块Z″94,89为例,则按式(24)得到的编码矩阵B94,89为:
Figure BDA0001162668680000251
第7步:对所有Bu,v按式(26)、式(27)和式(28)量化为2值比特位串lru,v,lcu,v,ldu,v,将lstart和μ0代入式(5)产生(0,1)范围内的随机数,将前IT,IT>0次随机数删除掉,将后续生成的随机数依次作为筛选比特位串lru,v,lcu,v,ldu,v的随机数种子,从lru,v,lcu,v,ldu,v分别随机筛选出6位比特位串lr′u,v,lc′u,v,ld′u,v,按式(30)映射为6位随机比特autu,v,将autu,v作为块Z″u,v的6位认证比特au′u,v,例如:对B94,89按式(26)、式(27)和式(28)量化为2值比特位串lr94,89=(11111011)2,lc94,89=(10111111)2,ld91,89=(10111111)2,将lstart和μ0作为初始值,代入式(5)去除前1000次之后,产生随机数为0.5922295126716617,0.9203346555945013,0.27941849792679074,依次作为从lr94,89,lc94,89,ld94,89中各筛选除6位比特位串随机数种子,筛选后比特位串为lr′94,89=(011111)2,lc′94,89=(110111)2,ld′94,89=(110111)2,按式(30)将lr′94,89,lc′94,89,ld′94,89映射为6位随机比特位串aut94,89=(011111)2,并将aut94,89作为块Z″94,896位认证比特au′94,89
第8步:对所有块Z″u,v,若au′u,v=auu,v,则将Z″u,v标记为完整块,否则将Z″u,v标记为待修复块,并通过标记矩阵S=(su,v)bm×bn进行标记,当su,v=1时为完整块,su,v=0时为待修复块,su,v=2为已修复块;例如:对块Z″94,89,若au′94,89=au94,89,则将Z″94,89标记为完整块,否则将Z″94,89标记为待修复块,并通过标记矩阵S=(su,v)bm×bn进行标记,已知从第3方公信方提取的au94,89=(001000)2,第7步得出au′94,89=(011111)2,则au′94,89≠au94,89,所以将Z″94,89标记为待修复块,并记录s94,89=0;
第9步:若块Z″u,v标记状态为su,v=0,则对块Z″u,v主信息A′u,v进行试探性恢复,其具体方法为:
第9.1步:将块Z″u,v中的所有元素清零,将t=S0,w=bm,h=bn代入式(32),按式(32)找到Z″u,v所对应映射块;例如对于块Z″94,89,将t=S0=274,w=128,h=128代入式(32),按式(32)找到Z″94,89所对应映射块为Z″53,106
第9.2步;若
Figure BDA00011626686800002610
标记状态
Figure BDA00011626686800002611
将Z″u,v所对应DC系数置为DCu,v
例如若块Z″53,106标记状态为s53,106=0,将Z″94,89所对应DC系数置为DC94,89=618.7499999999999;
第9.3步:若
Figure BDA0001162668680000261
标记状态
Figure BDA0001162668680000262
则根据
Figure BDA0001162668680000263
和Z″u,v块类型
Figure BDA0001162668680000264
Tu,v按式(33a)~(33d)将Z″u,v交变系数AC′0,AC′1,…,AC′k-1
Figure BDA0001162668680000265
中提取出来,然后将DCu,v作为Z″u,v的直流系数DC,将AC′0,AC′1,…,AC′k-1按式(34)矩阵元素对应索引位置填充到Z″u,v中的第1个~第k个位置,其中k为
Figure BDA0001162668680000266
存储副信息交变系数个数;例如:若块Z″53,106的标记状态为s53,106=1,块Z″53,106和Z″94,89块类型分别为T53,106=0,T94,89=1,按式(33a)~(33d)将Z″94,89的交变系数AC′0,AC′1提取出来,由于:
Figure BDA0001162668680000267
可知AC′0=36.30753239223936,AC′1=156.3779400082328,将DC94,89=618.7499999999999作为Z″94,89的直流系数DC,按式(34)矩阵元素对应索引位置填充到Z″94,89中的第1个和第2个位置,得到修复后Z″94,89为:
Figure BDA0001162668680000268
第9.4步:将Z″u,v作为A′u,v输出并置su,v=2;例如将修复后图像块:
Figure BDA0001162668680000269
作为A′94,89输出,并置s94,89=2;
第10步:重复第9步,直至将所有标记状态为su,v=0的Z″u,v恢复为A′u,v
第11步:对所有su,v=1的Z″u,v,提取Z″u,v存储交变系数AC0,AC1,…,ACk-1,将DCu,v作为Z″u,v直流系数,其余元素清零,然后按式(34)矩阵元素对应的索引位置填充到Z″u,v中的第1个~第k个位置,并将Z″u,v作为A′u,v输出,其中k为Z″u,v主信息交变系数个数;例如图像块Z″19,28,其标记状态s19,28=1:
Figure BDA0001162668680000271
且T19,28=0,根据式(32)可知,存储的是图像块Z″76,27的恢复信息且T76,27=0,根据式(33a)~(33d)提取Z″19,28存储的交变系数AC0,AC1,…,AC14,将DC19,28=377.2499999999999作为Z″19,28的直流系数,其余元素清零,然后按式(34)矩阵元素对应的索引位置填充到Z″19,28中的第1个~第15个位置,得到修复后的Z″19,28,将其作为A′19,28输出;
Figure BDA0001162668680000272
第12步:将所有A′u,v=(a′s,t)4×4按式(35)恢复为Au,v=(ap,q)4×4并重构秘密图像A,如:
Figure BDA0001162668680000273
按式(35)恢复为
Figure BDA0001162668680000274
图4~图6是以图3为原始图像,按图1加密流程得到的实施例,图4是图3分类情况,其中黑色是最平滑,深灰是次平滑,浅灰是复杂,白色是最复杂;图5是分辨率为512×512的8位含恢复信息图像,图6是图5置乱含恢复信息图像,即加密后图像;图7实施例,是图6传输过程中经过质量因子为80的JPEG压缩攻击后图像;图8~图10是以图7为待解密图像,按图2恢复流程得到实施例,其中图8是图7初步解密图像,相对于图3的PSNR为25.56dB,图9是对图8进行篡改检测结果,黑色部分为完整块,白色部分为待修复块,图10是根据图9对图8进行修复的结果,相对于图3的PSNR为29.78dB;图11~图13是对照例,其中图11是图3直接采用2维双尺度矩形映射置乱的结果,置乱参数取a0=237,a1=148,a2=250,a3=395,a4=501,a5=102,w=512,h=512,T0=523,对应置乱和恢复公式如式(22)和式(32)所示,图12是图11经过质量因子为80的JPEG压缩后图像,图13是图12逆置乱恢复图像,图13相对于图3的PSNR为12.70dB。

Claims (10)

1.一种结合零水印和块分类融合的自恢复图像加密方法,其特征在于包括以下步骤:
第1步:记分辨率为m×n的原始图像A且满足(m)mod4=0,(n)mod4=0,将A划分为4×4不重叠小块Au,v,u=0,1,…,(m/4)-1,v=0,1,…,(n/4)-1,记划分小块数为bm×bn,则有bm=m/4,bn=n/4,输入用户给定参数x0∈(0,1)和μ0∈[3.57,4];
第2步:记Au,v=(ai,j)4×4,对Au,v进行频域变换,记变换后输出块为A′u,v=(a′s,t)4×4
第3步:计算A′u,v=(a′s,t)4×4的交变系数能量Eu,v,根据Eu,v落入的区间范围确定块Au,v的类型Tu,v
第4步:对所有A′u,v根据Tu,v保留交直流系数作为恢复系数参考矩阵Ru,v
第5步:将用户给定的参数x0和μ0映射为μ′0∈[3.57,4]和x′0∈(0,1),然后以μ′0,x′0为参数产生(0,1)范围内的随机数,在迭代时,为消除暂态效应,将最开始生成的IT,IT>0个随机数删除掉,将后续生成的随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中w=bm,h=bn,IT是消除暂态效应的滤除随机数个数;
第6步:按式(22)将所有恢复系数参考矩阵Ru,v位置置乱,将置乱后小块记为
Figure FDA0002272139710000011
将A′u,v
Figure FDA0002272139710000012
融合在一起作为A″u,v,其中A′u,v称为A″u,v主信息,
Figure FDA0002272139710000013
称为A″u,v副信息,其中式(22)中的置乱参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及t=T0,w=bm,h=bn,(u0,v0)是按式(22)置乱后恢复参考矩阵
Figure FDA0002272139710000014
所在的块坐标位置;
Figure FDA0002272139710000015
第7步:按式(22)分别将所有恢复系数参考矩阵Ru,v对应的DC系数DCu,v位置置乱,将所有Tu,v位置置乱,其中置乱DC系数DCu,v的置乱参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]与t=T1,w=bm,h=bn,置乱Tu,v的置乱参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]与t=T2,w=bm,h=bn;
第8步:设定阈值T,T≥0,对所有A″u,v,将待编码图像块A″u,v中DCT系数与阈值T进行比较,然后转换为编码矩阵Bu,v=(bi,j)4×4
第9步:生成随机起始值lstart∈(0,1),将所有Bu,v量化为2值比特位串lru,v,lcu,v,ldu,v,由lstart和μ0产生(0,1)范围内随机数,将前IT,IT>0个生成随机数剔除掉,将后续生成随机数依次作为筛选比特位串lru,v,lcu,v,ldu,v的随机数种子,从lru,v,lcu,v,ldu,v分别随机筛选出6位比特位串lr′u,v,lc′u,v,ld′u,v并将lr′u,v,lc′u,v,ld′u,v映射为6位随机比特autu,v,将autu,v作为块A″u,v的6位认证比特auu,v,按式(22)将所有auu,v置乱,其中置乱参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及t=T3,w=bm,h=bn;
第10步:将置乱后位于同一位置的DCu,v,Tu,v,auu,v构成三元组集合作为零水印存储在第3方公信方对应的数据库中;
第11步:将所有A″u,v恢复为空域块A″′u,v,进一步由所有的A″′u,v构成空域图像A″′;
第12步:将μ′0∈[3.57,4]和x′0∈(0,1)映射为μ″0∈[3.57,4]和x″0∈(0,1),然后以μ″0,x″0为参数产生(0,1)范围内的随机数,在迭代时将前IT,IT>0个随机数剔除掉,将后续生成的随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中w=m,h=n;
第13步:按式(22)将A″′位置置乱作为加密后图像,其中式(22)的置乱参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及t=T0,w=m,h=n。
2.如权利要求1所述的一种结合零水印和块分类融合的自恢复图像加密方法,其特征在于:在第2步中对Au,v进行频域变换的具体方法为式(1):
Figure FDA0002272139710000021
式(1)中,cs和ct为标准化系数,具体取值如式(2)所示:
Figure FDA0002272139710000031
在第3步中计算A′u,v=(a′s,t)4×4对应的交变系数能量Eu,v,确定Au,v所对应的类型Tu,v的具体方法为:按式(3)计算A′u,v=(a′s,t)4×4对应的交变系数能量Eu,v,然后按式(4)确定Au,v对应的块类型Tu,v
Figure FDA0002272139710000032
Figure FDA0002272139710000033
式(4)中,λ012为分割阈值;
在第4步中对所有A′u,v根据块类型Tu,v保留对应位置的交直流系数作为恢复系数参考矩阵Ru,v的具体方法为式(17):
Figure FDA0002272139710000034
式(17)中,DC为直流系数,AC为交变系数。
3.如权利要求2所述的一种结合零水印和块分类融合的自恢复图像加密方法,其特征在于:式(4)中确定分割阈值λ012的具体确定方法为:
第3.1步:生成平滑矩阵模板
Figure FDA0002272139710000035
第3.2步:将参数x0和μ0分别作为式(5)初始值和***参数,驱动式(5)产生(0,1)范围内的随机数,在迭代时,为消除暂态效应,将前IT,IT>0个生成的随机数删掉,将后续生成的160个随机数记为xIT,xIT+1,…,xIT+159按式(6)量化为[0,255]范围内整数X0,X1,…,X159,按式(7)产生候选随机矩阵模板
Figure FDA0002272139710000036
xn+1=μxn(1-xn) (5)
式(5)中,xn∈(0,1)为迭代起始值,μ为变换参数,当μ∈[3.57,4]时,式(5)处于混沌状态具有初值敏感性;
Figure FDA0002272139710000041
Figure FDA0002272139710000042
第3.3步:按式(8)计算
Figure FDA0002272139710000043
的均值矩阵M=(mi,j)4×4,按式(9)找出与均值矩阵M差异最大矩阵
Figure FDA0002272139710000044
与均值矩阵M差异最小的矩阵
Figure FDA0002272139710000045
并将
Figure FDA0002272139710000046
Figure FDA0002272139710000047
从Mk中去掉,将Mk中剩余的8个矩阵计算得到均值矩阵作为随机矩阵模板
Figure FDA0002272139710000048
Figure FDA0002272139710000049
Figure FDA00022721397100000410
第3.4步:对
Figure FDA00022721397100000411
Figure FDA00022721397100000413
按式(10)加权,产生num-1个模板矩阵
Figure FDA00022721397100000414
然后按式(3)计算交变系数能量El,l=0,1,…,num;
Figure FDA00022721397100000415
第3.5步:将区间[E0,Enum]按式(11)划分为L,L>1个区间并分配能量阶K,K=0,1,…,L-1,对能量阶进行统计形成能量直方图HE=(hK)L,其中hK表示能量阶为K的交变系数能量发生次数,并按式(12)计算每个能量阶发生概率PK,K=0,1,…,L-1;
Figure FDA00022721397100000416
Figure FDA00022721397100000417
第3.6步:按式(13)可确定划分阈值λ012,即对区间范围内的λ∈[λbeginend],求解使目标式δ最大化的λ,即
Figure FDA00022721397100000418
Figure FDA0002272139710000051
式(13)中upart1,upart2,utotal分别按式(14)、式(15)和式(16)计算:
Figure FDA0002272139710000052
Figure FDA0002272139710000053
Figure FDA0002272139710000054
将λbegin=0,λend=L-1代入式(13),可确定分割阈值λ1;将λbegin=0,λend=λ1-1代入式(14),可确定分割阈值λ0;将λbegin=λ1+1,λend=L-1代入式(13),可确定阈值λ2
4.如权利要求1所述的一种结合零水印和块分类融合的自恢复图像加密方法,其特征在于:在第5步中将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中w=bm,h=bn的具体方法为:记后续生成随机数为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中式(20)中取w=bm,h=bn,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1)直至按式(20)生成的映射值满足式(21)的条件;
Figure FDA0002272139710000055
Figure FDA0002272139710000056
Figure FDA0002272139710000057
Figure FDA0002272139710000058
式(21)中“|”表示或,p=gcd(w,h)为w,h的最大公因子且w=pz1,h=pz2
在第12步中将后续生成的随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中取w=m,h=n的具体方法为:记后续生成随机数为l0,l1,l2,l3,l4,l5,l6∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中式(20)中w=m,h=n,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6∈(0,1)直至按式(20)生成映射值满足式(21)条件。
5.如权利要求1所述的一种结合零水印和块分类融合的自恢复图像加密方法,其特征在于:
在第6步中将A′u,v
Figure FDA00022721397100000610
融合在一起作为A″u,v的具体方法为:
记Tu,v
Figure FDA0002272139710000061
分别对应为A′u,v
Figure FDA0002272139710000062
的块类型,将A′u,v
Figure FDA0002272139710000063
融合的具体方法如式(23a)~式(23d)所示,式中ACi和AC′i分别对应为A′u,v
Figure FDA0002272139710000064
的交变系数:
Figure FDA0002272139710000065
Figure FDA0002272139710000066
Figure FDA0002272139710000067
Figure FDA0002272139710000068
式(23a)~式(23d)中,当
Figure FDA0002272139710000069
时,此时直接将A′u,v作为A″u,v,即A″u,v=A′u,v
6.如权利要求1所述的一种结合零水印和块分类融合的自恢复图像加密方法,其特征在于:在第8步中将待编码图像块A″u,v中的DCT系数与阈值T进行比较,然后转换为编码矩阵Bu,v=(bi,j)4×4的具体方法为式(24):
Figure FDA0002272139710000071
式(24)中,cofi,j为待编码图像块第(i,j)位置的DCT系数;
在第9步中生成随机起始值lstart∈(0,1)的具体方法为式(25):
lstart=(l0+l1+…+l9)/10 (25)
在第9步中,将所有Bu,v量化为2值比特位串lru,v,lcu,v,ldu,v的具体方法为式(26)、式(27)和式(28):
Figure FDA0002272139710000072
Figure FDA0002272139710000073
Figure FDA0002272139710000074
式(26)、式(27)和式(28)中,函数bin()为2值化函数,bin(vv)执行的功能如式(29)所示:
Figure FDA0002272139710000075
在第6步中,将lr′u,v,lc′u,v,ld′u,v映射为6位随机比特autu,v的具体方法为式(30):
Figure FDA0002272139710000076
式(30)中,
Figure FDA0002272139710000077
为异或运算符。
7.一种结合零水印和块分类融合的自恢复图像解密方法,其特征在于包括以下步骤:
第1步:记接收到分辨率为m×n的信道传输图像为Z=(zi,j)m×n且满足(m)mod4=0,(n)mod4=0,记Z可划分4×4不重叠小块的块数为bm×bn,则有bm=m/4,bn=n/4,输入用户给定的参数x0∈(0,1),μ0∈[3.57,4],阈值T以及消除暂态效应的滤除迭代次数IT,IT>0;
第2步:将用户给定参数x0和μ0映射为μ′0∈[3.57,4]和x′0∈(0,1),然后驱动μ′0,x′0产生(0,1)范围内随机数,在迭代时,为消除暂态效应,将最开始生成的IT,IT>0个随机数剔除,将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中w=bm,h=bn,IT是消除暂态效应的滤除随机数个数;
第3步:从第3方公信方提取出零水印对应的三元组集合,记其中1个三元组对应为(DCu,v,Tu,v,auu,v),以a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T1,T2,T3∈[0,IT-1]为参数,取w=bm,h=bn,按式(32)将
Figure FDA0002272139710000081
其中u=0,1,…,bm-1,v=0,1,…,bn-1,“→”表示坐标位置映射,即将DCu,v由(u,v)下标位置映射到(u1,v1)位置,对应的置乱参数为a0,a1,a2∈[0,w-1],a3,a4,a5∈[0,h-1]和T1;将Tu,v由(u,v)下标位置映射到(u2,v2)位置,对应的置乱参数为a0,a1,a2∈[0,w-1],a3,a4,a5∈[0,h-1]和T2;将auu,v由(u,v)位置映射到映射到(u3,v3)位置,对应的置乱参数为a0,a1,a2∈[0,w-1],a3,a4,a5∈[0,h-1]和T3
第4步:生成随机起始值lstart∈(0,1),将T0记为S0,由μ′0∈[3.57,4]和x′0∈(0,1)映射生成μ″0∈[3.57,4]和x″0∈(0,1),然后驱动μ″0,x″0产生(0,1)范围内随机数,在迭代时,将前IT,IT>0个随机数剔除掉,将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中w=m,h=n;
第5步:按式(32)将Z恢复为Z′=(z′i,j)m×n,其中参数取a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及t=T0,w=m,h=n,将Z′划分为4×4不重叠小块Z′u,v,u=0,1,…,bm-1,v=0,1,…,bn-1,将每个小块Z′u,v变换为Z″u,v=(z″s,t)4×4
Figure FDA0002272139710000082
第6步:对所有Z″u,v,将Z″u,v中DCT系数与阈值T进行比较,转换为编码矩阵Bu,v=(bi,j)4×4
第7步:将所有Bu,v量化为2值比特位串lru,v,lcu,v,ldu,v,由lstart和μ0产生(0,1)范围内随机数,将前IT,IT>0个随机数删除掉,将后续生成随机数依次作为筛选比特位串lru,v,lcu,v,ldu,v的随机数种子,从lru,v,lcu,v,ldu,v中随机筛选出6位比特位串lr′u,v,lc′u,v,ld′u,v,将lr′u,v,lc′u,v,ld′u,v映射为6位随机比特autu,v,将autu,v作为块Z″u,v的6位认证比特au′u,v
第8步:对所有块Z″u,v,若au′u,v=auu,v,则将Z″u,v标记为完整块,否则将Z″u,v标记为待修复块,并通过标记矩阵S=(su,v)bm×bn进行标记,当su,v=1时为完整块,su,v=0为待修复块,su,v=2为已修复块;
第9步:若块Z″u,v标记状态为su,v=0,则对块Z″u,v主信息A′u,v进行试探性恢复;
第10步:重复第9步,直至将所有标记状态为su,v=0的Z″u,v恢复为A′u,v
第11步:对所有su,v=1的Z″u,v,提取Z″u,v存储的交变系数AC0,AC1,…,ACk-1,将DCu,v作为Z″u,v的直流系数,其余元素清零,然后填充到Z″u,v中的第1~k个位置,并将Z″u,v作为A′u,v输出,其中k为Z″u,v主信息交变系数个数;
第12步:将所有A′u,v=(a′s,t)4×4恢复为空域图像块Au,v=(ap,q)4×4,然后由所有的Au,v=(ap,q)4×4重构秘密图像A。
8.如权利要求7所述的一种结合零水印和块分类融合的自恢复图像解密方法,其特征在于:在第2步中将用户给定参数x0和μ0映射为μ′0∈[3.57,4]和x′0∈(0,1)的具体方法为:
Figure FDA0002272139710000091
Figure FDA0002272139710000092
在第2步中驱动μ′0,x′0产生(0,1)范围内随机数的具体方法为式(5):
xn+1=μxn(1-xn) (5);
在2步中将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中w=bm,h=bn的具体方法为:记后续生成随机数为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0,T1,T2,T3∈[0,IT-1],其中式(20)中的w=bm,h=bn,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6,l7,l8,l9∈(0,1)直至按式(20)生成映射值满足式(21)的条件;
Figure FDA0002272139710000093
Figure FDA0002272139710000101
式(21)中“|”表示或,p=gcd(w,h)为w,h的最大公因子且w=pz1,h=pz2
在第4步中生成随机起始值lstart∈(0,1)具体方法为式(25):
lstart=(l0+l1+…+l9)/10 (25)
在第4步中由μ′0∈[3.57,4]和x′0∈(0,1)映射生成μ″0∈[3.57,4]和x″0∈(0,1)的具体方法为将μ′0∈[3.57,4]和x′0∈(0,1)作为式(18)和式(19)中的μ0,x0,利用式(18)和式(19)映射生成μ″0∈[3.57,4]和x″0∈(0,1):
在第4步中将后续生成随机数映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中w=m,h=n的具体方法为:将后续生成随机数记为l0,l1,l2,l3,l4,l5,l6∈(0,1),将其按式(20)映射为a0,a1,a2∈[0,w-1]和a3,a4,a5∈[0,h-1]以及T0∈[0,IT-1],其中式(20)中的w=m,h=n,反复取后续生成随机数作为l0,l1,l2,l3,l4,l5,l6∈(0,1)直至按式(20)生成的映射值满足式(21)的条件;
在第5步中将每个小块Z′u,v变换为Z″u,v=(z″s,t)4×4的具体方法为式(1):
Figure FDA0002272139710000102
式(1)中,cs和ct为标准化系数,具体取值如式(2)所示:
Figure FDA0002272139710000103
9.如权利要求7所述的一种结合零水印和块分类融合的自恢复图像解密方法,其特征在于:在第6步中转换为编码矩阵Bu,v=(bi,j)4×4的具体方法为式(24):
Figure FDA0002272139710000104
式(24)中,cofi,j为待编码图像块第(i,j)位置DCT系数;
在第7步中将所有Bu,v量化为2值比特位串lru,v,lcu,v,ldu,v的具体方法为式(26)、式(27)和式(28):
Figure FDA0002272139710000111
Figure FDA0002272139710000112
Figure FDA0002272139710000113
式(26)、式(27)和式(28)中,函数bin()为2值化函数,bin(vv)功能如式(29)所示:
Figure FDA0002272139710000114
在第7步中由lstart和μ0产生(0,1)范围内随机数具体方法为式(5);
在第7步中将lr′u,v,lc′u,v,ld′u,v映射为6位随机比特autu,v具体方法为式(30)
Figure FDA0002272139710000115
在第12步中,将所有A′u,v=(a′s,t)4×4恢复为Au,v=(ap,q)4×4具体方法为式(35)。
10.如权利要求7所述的一种结合零水印和块分类融合的自恢复图像解密方法,其特征在于:在第9步中对块Z″u,v主信息A′u,v进行试探性恢复的具体方法为在于包括以下步骤:
第9.1步:将块Z″u,v中的所有元素清零,将t=S0,w=bm,h=bn代入式(32),按式(32)找到Z″u,v所对应的映射块;
第9.2步;若
Figure FDA0002272139710000116
标记状态
Figure FDA0002272139710000117
将Z″u,v所对应的DC系数置为DCu,v
第9.3步:若
Figure FDA0002272139710000118
标记状态
Figure FDA0002272139710000119
则根据
Figure FDA00022721397100001110
和Z″u,v块类型
Figure FDA00022721397100001111
Tu,v按式(33a)~(33d)将Z″u,v的交变系数AC′0,AC′1,…,AC′k-1
Figure FDA00022721397100001112
中提取出来,然后将DCu,v作为Z″u,v直流系数DC,将AC′0,AC′1,…,AC′k-1按式(34)矩阵元素对应索引位置填充到Z″u,v中的第1~第k个位置,其中k为
Figure FDA00022721397100001113
存储副信息交变系数个数;
Figure FDA00022721397100001114
Figure FDA0002272139710000121
Figure FDA0002272139710000122
Figure FDA0002272139710000123
式(33a)~(33d)中,ACi和AC′i分别为Z″u0,v0存储的主信息和副信息交变系数;
Figure FDA0002272139710000124
第9.4步:将Z″u,v作为A′u,v输出并置su,v=2。
CN201611056502.1A 2016-11-25 2016-11-25 一种结合零水印和块分类融合的自恢复图像加密和解密方法 Active CN106780278B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611056502.1A CN106780278B (zh) 2016-11-25 2016-11-25 一种结合零水印和块分类融合的自恢复图像加密和解密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611056502.1A CN106780278B (zh) 2016-11-25 2016-11-25 一种结合零水印和块分类融合的自恢复图像加密和解密方法

Publications (2)

Publication Number Publication Date
CN106780278A CN106780278A (zh) 2017-05-31
CN106780278B true CN106780278B (zh) 2020-08-04

Family

ID=58913079

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611056502.1A Active CN106780278B (zh) 2016-11-25 2016-11-25 一种结合零水印和块分类融合的自恢复图像加密和解密方法

Country Status (1)

Country Link
CN (1) CN106780278B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388959B (zh) * 2018-09-30 2021-08-27 陕西师范大学 结合差异聚类和最小误差纹理合成的生成式信息隐藏方法
CN110879894B (zh) * 2019-11-11 2023-04-07 陕西师范大学 一种懒尺度变换和随机分层融合的图像加密解密方法
CN111583086B (zh) * 2020-04-27 2023-05-26 绍兴聚量数据技术有限公司 基于ambtc的自适应数字图像水印及修复方法
CN112800395B (zh) * 2021-01-27 2023-04-14 南京信息工程大学 一种基于零水印技术的多幅图像版权认证和验证方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1372334A3 (en) * 1995-05-08 2004-03-31 Digimarc Corporation Method of embedding a machine readable steganographic code
JP2004221715A (ja) * 2003-01-10 2004-08-05 Sanyo Electric Co Ltd 電子透かし埋め込み方法およびその方法を利用可能な符号化装置と復号装置
CN104867100A (zh) * 2015-06-18 2015-08-26 海南大学 云环境下一种加密医学图像鲁棒多水印实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1372334A3 (en) * 1995-05-08 2004-03-31 Digimarc Corporation Method of embedding a machine readable steganographic code
JP2004221715A (ja) * 2003-01-10 2004-08-05 Sanyo Electric Co Ltd 電子透かし埋め込み方法およびその方法を利用可能な符号化装置と復号装置
CN104867100A (zh) * 2015-06-18 2015-08-26 海南大学 云环境下一种加密医学图像鲁棒多水印实现方法

Also Published As

Publication number Publication date
CN106780278A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
Wahab et al. Hiding data using efficient combination of RSA cryptography, and compression steganography techniques
Cao et al. High capacity reversible data hiding in encrypted images by patch-level sparse representation
Qin et al. Reversible data hiding in encrypted image with separable capability and high embedding capacity
Qin et al. Flexible lossy compression for selective encrypted image with image inpainting
CN106780278B (zh) 一种结合零水印和块分类融合的自恢复图像加密和解密方法
CN105975866B (zh) 基于同类系数置乱的jpeg图像加密方法
Qiu et al. Reversible data hiding in encrypted images using adaptive reversible integer transformation
CN106162195B (zh) 一种基于单深度帧内模式的3d‑hevc深度视频信息隐藏方法
Alavianmehr et al. A lossless data hiding scheme on video raw data robust against H. 264/AVC compression
CN104732474B (zh) 基于多级小波系数加权和量化的数字水印嵌入及提取方法
Ashwin et al. Novel and secure encoding and hiding techniques using image steganography: A survey
CN106791882B (zh) 一种图像的编码加密方法及装置
EP1518348B1 (en) Information processing method, information processing apparatus, program, and storage medium
CN114745475B (zh) 一种鲁棒的加密图像可逆信息隐藏方法
Rezaei et al. Digital image self-recovery using CNN networks
CN103116871A (zh) 具有鲁棒性的双重脆弱数字水印的嵌入方法及其提取方法
CN101409830B (zh) Dct系数块相似性判断、图像加解密方法及装置
Panchikkil et al. A pseudo-random pixel mapping with weighted mesh graph approach for reversible data hiding in encrypted image
Kumar et al. A novel encryption scheme for securing biometric templates based on 2D discrete wavelet transform and 3D Lorenz-chaotic system
Singh et al. A recent survey on data hiding techniques
Lee et al. Information hiding based on block match coding for vector quantization-compressed images
CN115190216B (zh) 基于预测误差图的加密图像可逆数据隐藏及解密方法
Wang et al. A lossy compression scheme for encrypted images exploiting Cauchy distribution and weighted rate distortion optimization
Yasin et al. An enhanced steganographic model based on DWT combined with encryption and error correction techniques
Khan et al. A joint watermarking and encryption scheme for DCT based codecs

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