CN109388959B - 结合差异聚类和最小误差纹理合成的生成式信息隐藏方法 - Google Patents
结合差异聚类和最小误差纹理合成的生成式信息隐藏方法 Download PDFInfo
- Publication number
- CN109388959B CN109388959B CN201811159629.5A CN201811159629A CN109388959B CN 109388959 B CN109388959 B CN 109388959B CN 201811159629 A CN201811159629 A CN 201811159629A CN 109388959 B CN109388959 B CN 109388959B
- Authority
- CN
- China
- Prior art keywords
- boundary
- block
- sample
- formula
- equation
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
Abstract
本发明提出了一种结合差异聚类和最小误差纹理合成的生成式信息隐藏方法,首先通过样本小块与随机密钥模板的差异均值聚类来获取聚类中心并建立起秘密信息分段和聚类中心样本小块之间的多重映射关系。然后结合随机放置位置,从样本小块聚类中心中选择合适的样本小块作为秘密信息分段的编码表示来对秘密信息进行编码并放置在空白图像的指定位置上。最后从所有的样本小块中按最小误差纹理合成策略来选择最接近的样本小块来对秘密信息进行掩盖并生成纹理图像。同现有方法相比,所提方法可通过生成高质量的纹理图像来对秘密信息进行有效掩盖,秘密信息分段和聚类中心的样本小块不一一对应,且恢复过程完全依赖于密钥并具有较强的抗攻击恢复能力。
Description
技术领域
本发明属于图像信息安全和数字图像信号处理交叉领域,涉及一种信息隐藏方法,特别涉及一种结合差异聚类和最小误差纹理合成的生成式信息隐藏方法。
背景技术
当前伴随着深度学习的不断深入和人工智能的继续发展以及量子计算机的初现端倪,使得传统以图像音频为主要传输介质的多媒体信息安全形势变得更为严峻。一方面,基于机器学习的隐写分类器维数不断提高,使得传统修改式信息隐藏隐匿信息不被发现的可能性越来越小,而另一方面,压缩技术的持续发展,也使得传统修改式信息隐藏可供利用的冗余空间越来越小,由此使得传统基于修改式嵌入的信息隐藏技术发展陷入了瓶颈。
如何有效地进行下一代信息隐藏技术研究,来自北京和上海的专家于2014年5月召开的全国信息隐藏与多媒体安全专家研讨会首次提出了“无载体信息隐藏”。2015年3月武汉召开的第12届全国信息隐藏大会将无载体信息隐藏技术列入了未来信息隐藏的前沿阵地;2016年10月合肥召开的第13届全国信息隐藏大会将无载体信息隐藏正式定位为第2代信息隐藏技术;2018年3月广州召开的第14届全国信息隐藏大会对无载体信息隐藏进行了专门分组交流。
目前关于无载体信息隐藏主要有2类典型的方法,其中:
第1类是通过检索数据库中包含指定秘密矢量的载体文本或图像来传递秘密信息。例如针对文本的基于中文字符编码(Chen X Y,Chen S,Wu Y L,Coverlessinformation hiding based on the Chinese character encoding[J].Journal ofInternet Technology,2017,18(2):313-320.)、中文数学表达式(Chen X Y,Sun H Y,TobeY,et al.Coverless information hiding method based on the Chinese mathematicalexpression[C]//International Conference on Cloud Computing andSecurity.Springer International Publishing,2015:133-143.)和多关键字隐藏的无嵌入无载体文本信息隐藏(Zhou Z L,Yan M,Yang C N,et al.Coverless multi-keywordsinformation hiding method based on text[J].International Journal of Securityand Its Application,2016,10(9):309-320.);例如针对图像的,基于块均值比较(Zhou ZL,Sun H Y,Harit R,et al.Coverless image steganography without embedding[C]//International Conference on Cloud Computing and Security.SpringerInternational Publishing,2015:123-132.)、基于SIFT(Scale Invariant FeatureTransform)和BOF(Bag of Features)鲁棒哈希特征(Yuan C S,Xia Z H,Sun XM.Coverless image steganography based on SIFT and BOF[J].Journal of InternetTechnology,2017,18(2):435-442.)以及基于图像视觉词汇BOW(Bag of Words)局部分词匹配和全局有序的无嵌入无载体图像信息隐藏(周志立,曹燚,孙星明.基于图像Bag-of-Words模型的无载体信息隐藏方法[J].应用科学学报,2016,34(5):527-536.)。
但这类方法存在的问题是:①正常文本和图像对与之不相关的秘密信息表现能力十分有限,若需要数据库中文本和图像具有足够的表达能力,则需收集足够多的样本;②随着数据库文本和图像信息表达能力的增强,需要搜索的数据量也呈几何级数增加,即使借助倒排索引,对于大数据量的搜索、存储和维护也将是一个沉重的负担,但与此同时,嵌密容量极低,涉及大量文本和图像集合在公有信道中密集传输;③尽管这类方法孤立文本或图像都是正常文本或图像,因未修改而无法检测出异常,但大量文本和图像集合密集传输也必然会引起怀疑。从而难以抵抗密写分析的攻击。
第2类是基于纹理生成式的信息隐藏方法,主要又分为纹理构造和纹理合成式的信息隐藏2种,其中:
第1种是主要是通过人工生成纹理的方式来对秘密信息进行掩盖。例如:Xu J,2015.(Xu J,Mao X,Jin X,et al.Hidden message in a deformation-based texture[J].Visual Computer International Journal of Computer Graphics,2015,31(12):1653-1669.)在空白图像上书写秘密信息,然后添加掩盖图案,最后通过marbling形变来产生含密纹理;潘琳,2016.(潘琳,钱振兴,张新鹏.基于构造纹理图像的数字隐写[J].应用科学学报,2016,34(5):625-632.)将秘密信息借助图形化的码元进行表达,然后添加遮盖元素和通过可逆形变操作来形成含密纹理;Qian Z X,2018.(Qian Z X,Pan L,Li S,Zhang XP.Steganography by Constructing Marbling Texture[C]//第14届全国信息隐藏暨多媒体信息安全学术会议(CIHW2018)[C],广州,2018.)通过随机点的奇偶坐标来表达秘密信息,将邻近点连成闭合的几何曲线并着色,然后引入形变操作来产生含密纹理。
但这种方法所产生的纹理都是人工纹理而非自然界真实存在的纹理,从而依然不能对秘密信息进行有效的纹理掩盖。
第2种是基于纹理合成式的信息隐藏方法,这类方法主要是以给定的纹理图像为载体,重新生成与之相似的纹理图像,在生成的过程中嵌入秘密信息。例如Wu K C,2015.(Wu K C,Wang C M,Steganography Using Reversible Texture Synthesis[J].Transactions on Image Processing,2015,24(1):130-139)将输入纹理图像分块,通过镜像操作生成纹理小块边界区域,根据索引表中小块编号将纹理小块放置在空白图像中。将输入纹理图像按照光栅扫描顺序再分块,根据候选小块MSE值划分成若干等级,不同等级的候选小块代表不同的秘密信息,根据秘密信息从特定等级中随机选择纹理小块将其放置在空白区域中,同时完成边界区域纹理小块的拼接;Qin Z C,2017.(Qin Z C,Li M,WuB.Robust Steganography via Patch-Based Texture Synthesis[C]//InternationalConference on Internet Multimedia Computing and Service.Springer,Singapore,2017:429-439.)将输入纹理图像分块,对纹理分块的核心区域再分块,通过核心区域分块像素均值大小比较来代表秘密信息,然后通过纹理小块拼接来隐藏秘密信息;Qian Z X,2017(Qian Z X,Zhou H,Zhang W M,Zhang X P.Robust Steganography Using TextureSynthesis[M]//Advances in Intelligent Information Hiding and MultimediaSignal Processing.Springer International Publishing,2017.)首先将样本图像分块进行分类,将不同类别的纹理小块代表不同的秘密信息,然后根据秘密信息从特定类别中随机选择纹理小块将其放置在空白图像上,最后完成空白区域的纹理小块拼接。
以上Wu K C,2015、Qin Z C,2017和Qian Z X,2017尽管相对于第1种方法,可以合成和自然纹理相类似的纹理图像,从而可以对秘密信息掩盖,但同时也存在以下问题:
①同一个样本块在不同位置通常代表同一个秘密信息,从而特定样本小块直接关联着特定的秘密信息分段,导致秘密信息泄露;
②部分方法尽管引入了分类,通过样本小块所在的类别来对秘密信息分段来进行一对一的编码表示,从而导致秘密信息分段和样本小块类别之间依然存在着固定的一一对应关系,安全性较低;
③将样本小块划分为不同的类别,从同一类别中随机筛选样本小块,未考虑样本小块本身之间存在的差异度以及偏离分类中心样本小块在遭受攻击时可能导致类别提取错误,从而抵抗攻击的能力十分有限。
另外第2种方法Wu K C,2015、Qin Z C,2017和Qian Z X,2017均涉及到小块拼接,现有的基于纹理合成的生成式无载体信息隐藏方案通常采用基于误差线的相邻小块重叠区域缝合策略来合成纹理并对嵌入的秘密信息进行掩盖。基于误差线的相邻小块重叠区域缝合策略本质是寻找由特定起始位置出发,按照固定的搜索方向来寻找连接重叠区域差异最小的紧邻像素来构造误差线,依据误差来对重叠区域进行纹理合成。但特定起始位置出发的误差线并不意味着是经历重叠区域所有最小差异像素的最小误差线,同时当存在多个相邻重叠块时,若选择不相邻块重叠区域拼接顺序不恰当,将容易产生拼接的痕迹,从而不能对秘密信息进行掩盖。
发明内容
本发明的目的在于克服现有技术缺陷,提供一种结合差异聚类和最小误差纹理合成的生成式信息隐藏方法,首先通过样本小块与随机密钥模板的差异均值聚类来获取聚类中心并建立起秘密信息分段和聚类中心样本小块之间的多重映射关系。然后结合随机放置位置,从样本小块聚类中心中选择合适的样本小块作为秘密信息分段的编码表示来对秘密信息进行编码并放置在空白图像的指定位置上。最后从所有的样本小块中按最小误差纹理合成策略来选择最接近的样本小块来对秘密信息进行掩盖并生成纹理图像。相对于传统的纹理合成信息隐藏方法,所提方法可通过生成高质量的纹理图像来对秘密信息进行有效掩盖,秘密信息分段和聚类中心的样本小块不一一对应,且恢复过程完全依赖于密钥并具有较强的抗攻击恢复能力。
为实现上述目的,本发明采用以下技术方案:
一种结合差异聚类和误差最小纹理合成的生成式信息隐藏方法,包括以下步骤:
第1步:输入分辨率为m×n的P阶灰度样本图像S=(si,j)m×n,si,j∈{0,1,…,2P-1},由第一密钥R1在S上伪随机截取K个分辨率均为fh×fv的样本小块P0,P1,…,PK-1;分别选取P0,P1,…,PK-1中心分辨率为ah×av的区域作为核心区域按式(1)确定边界距PK-1边界的最小垂直距离为eh,最小水平距离为ev;其中,设fv为样本小块的水平边界长度,fh为样本小块的垂直边界长度,av为核心区域的水平边界长度,ah为核心区域的垂直边界长度;eh为核心区域水平边界与样本小块水平边界之间的间距,ev为核心区域垂直边界与样本小块垂直边界之间的间距;
第2步:由第二密钥R2伪随机生成随机模板将M中心分辨率为ah×av的区域作为核心区域MCore,依据相对于MCore的差异进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别离聚类中心位置最近的样本小块作为编码样本小块其中n0≤K,n0为2的幂次且均值聚类的初始聚类中心由第三密钥R3伪随机指定,均值聚类的迭代次数由第四密钥R4伪随机指定;
第3步:输入长度为l的2进制比特位串B,将其划分为L个包含log2n0个比特位编码单元,得到L个10进制数依次为B0,B1,…,BL-1;
初始化分辨率为gh×gv的空白图像作为含密样本图像Q,以大小为ah×av的网格为单元划分Q,且水平方向上相邻两个网格之间的间距为ev,垂直方向上相邻两个网格之间的间距为eh;同时最外层网格单元水平边界与Q的水平边界之间的间距为eh,最外层网格单元的垂直边界与Q的垂直边界之间的间距为ev,即gh,gv满足的约束如式(2)所示,其中lh,lv分别是垂直方向和水平方向放置的ah×av大小网格的数量;初始化状态标记矩阵R中元素ri,j状态用于标记Q上第(i,j)位置ah×av网格的占用状态,不失一般性,ri,j=0表示未占用,ri,j=1表示占用;
第4步:由第五密钥R5在Q上伪随机生成L个坐标(pk′,qk′),k=0,1,…,L-1且满足式(3)和式(4)的约束;
第5步:由B的哈希值确定编码单元Bk对应的编码样本块编号然后从中选取对应的编码样本块将其放置在Q上坐标起始位置为(p′k,q′k)且大小为fh×fv的矩形小块上,按式(5)计算(xc,yc),将R中的元素标记为1,其中k=0,1,…,L-1;
第6步:顺序扫描R,对于根据(x,y)四周领域(x-1,y),(x,y+1),(x+1,y),(x,y-1)各元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态,从P0,P1,…,PK-1中选择样本块作为将放置在Q上起始坐标为(x(eh+ah),y(ev+av))的fh×fv矩阵小块上;
第7步:根据和Q周围((x-1)(eh+ah),y(ev+av)),(x(eh+ah),(y+1)(ev+av)),((x+1)(eh+ah),y(ev+av)),(x(eh+ah),(y-1)(ev+av))相邻位置已放置小块的重叠区域差异最小确定拼接优先级顺序,并按拼接优先级顺序和周围已放置小块的重叠边界块进行最小误差纹理合成;
式(7)中,|Ci|是类别Ci中的均方误差总数;
第2.5步:反复执行第2.3步~第2.4步,直至IT≥rr,其中rr是由第四密钥R4产生的大于预设正整数ttt的随机整数;
进一步,第3步输入长度为l的2进制比特位串B,将其划分为L个log2n0个比特位编码单元,得到L个10进制数依次为B0,B1,…,BL-1的具体方法在于包括以下步骤:
第3.1步:将长度为l的2进制比特位串B,以log2n0个比特为1组,划分为L组,如式(9)所示,L和l之间满足的约束如式(10)所示:
B=b0||b1||…||bL-1 (9)
式(9)中,符号“||”为比特位串联符号;
第3.2步:将b0,b1,…,bL-1转换为10进制数,从而可得到10进制数B0,B1,…,BL-1;
第5.1步:将B的MD5值对应的2进制位串序列为BMD5=(bi)128的奇数和偶数比特分别按式(11)映射为初始值x0∈(0,1)和系统参数μ∈(3.57,4];
第5.2步:将x0,μ代入式(12)迭代产生(0,1)范围内的随机数r0,r1,…,rL-1,为消除暂态效应,将前ITT,ITT≥0个随机数滤除;
xt+1=μxt(1-xt) (12)
第5.3步:将rk,k=0,1,…,L-1按式(13)量化为[0,n0-1]范围内的随机整数rk′,k=0,1,…,L-1;
进一步,第6步顺序扫描R的具体方法是按光栅扫描顺序扫描R;
第6步根据(x,y)四周领域(x-1,y),(x,y+1),(x+1,y),(x,y-1)各元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态,从P0,P1,…,PK-1中选择最合适的样本块的具体方法在于包括以下步骤:
第6.1步:根据(x,y)其四周领域(x-1,y),(x,y+1),(x+1,y),(x,y-1)各元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态按式(15)确定其类型T,并将T映射为(t3t2t1t0)2,其中t0,t1,t2,t3=1|0依次对应(x,y)的顶部(x-1,y),右侧(x,y+1),底部(x+1,y)和左侧(x,y-1)是否存在已经放置好的样本块,为1表示存在,为0表示不存在;
T=type(rx,y) (15)
式(15)中,类型函数的具体处理功能如式(16)所示:
第6.2步:记位置所要放置的样本块为Pcur∈{P0,P1,…,PK-1},(x,y)的顶部(x-1,y),右侧(x,y+1),底部(x+1,y)和左侧(x,y-1)可能存在的已经放置好的样本块依次记为P0,P1,P2,P3∈{P0,P1,…,PK-1,PΦ},其中PΦ表示放置的样本块不存在,则可按式(17)从P0,P1,…,PK-1中选择合适的样本块
式(17)中,|| ||2为矩阵2范数,为Pcur在i方向的边界区域,为Pi在方向的边界区域,若所有的ti=0,则式(17)等价于从P0,P1,…,PK-1中随机选择一个样本块作为Pcur;对于分辨率fh×fv的样本块Pcur,i和之间的关系按式(18)确定,其中,0边界块和2边界块的大小均为eh×(2ev+av),1边界块和3边界块的大小均为(2eh+ah)×ev;其中,0边界块为样本小块核心区域上边界与样本小块上边界之间的区域;1边界块为样本小块核心区域右边界与样本小块右边界之间的区域,2边界块为样本小块核心区域下边界与样本小块下边界之间的区域,3边界块为样本小块核心区域左边界与样本小块左边界之间的区域。
进一步,记为在tt方向的边界块,Ptt为在tt方向的相邻样本块,为Ptt在方向的边界区域,其中tt∈{0,1,2,3},ttt=1,则第7步将和Ptt的边界块进行最小误差纹理合成的具体方法在于包括以下步骤:
式(22)中,rerrmin(),cerrmin()分别是行最小误差线计算函数和列最小误差线计算函数,其中第1个参数为差异矩阵,第2个参数对应为行索引或列索引;
第a2)步:i=i-1,按式(26)计算元素di,tc-1,di,tc,di,tc+1的最小值tm,将tm所对应的列坐标赋值给tc并更新tbi=tc;
tm=min(di,tc-1,di,tc,di,tc+1) (26)
式(26)中,若di,tc-1,di,tc,di,tc+1中存在坐标越界元素,则按式(26)计算最小值时,不参与最小值运算;
第a3)步:反复执行第a2)步,直至i=-1,更新i=tr,tc=tbi;
第a4)步:i=i+1,按式(26)计算di,tc-1,di,tc,di,tc+1的最小值tm,将tm所对应的列坐标赋值给tc并更新tbi=tc;
第b1)步:初始标记序列Tb=(tbj=0)cn,初始化当前行坐标tr=0,初始列坐标tc=j按式(27)计算Dc j的最小元素tm,将tm所对应的行坐标赋值给tr并更新tbj=tr;
第b2)步:j=j-1,按式(28)计算dtr-1,j,dtr,j,dtr+1,j的最小值tm,将tm所对应的行坐标赋值给tr并更新tbj=tr;
tm=min(dtr-1,j,dtr,j,dtr+1,j) (28)
式(28)中,若dtr-1,j,dtr,j,dtr+1,j中存在坐标越界元素,则按式(28)计算最小值时,不参与最小值运算;
第b3)步:反复执行第b2)步,直至j=-1,更新j=tc,tr=tbj;
第b4)步:j=j+1,按式(28)计算dtr-1,j,dtr,j,dtr+1,j的最小值tm,将tm所对应的行坐标赋值给tr并更新tbj=tr;
一种结合差异聚类和误差最小纹理合成的生成式信息提取方法,包括以下步骤:
第1步:输入分辨率为m×n的P阶灰度样本图像S=(si,j)m×n,si,j∈{0,1,…,2P-1},由第一密钥R1在S上伪随机截取K个分辨率为fh×fv大小的样本小块P0,P1,…,PK-1;选取P0,P1,…,PK-1中心分辨率为ah×av的区域作为核心区域按式(1)确定边界距PK-1边界的最小垂直距离为eh,最小水平距离为ev;
第2步:由第二密钥R2伪随机生成随机模板将M中心分辨率为ah×av的区域作为核心区域MCore,依据相对于MCore的差异,进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别离聚类中心位置最近的样本小块作为编码样本小块其中n0≤K且均值聚类的初始聚类中心由第三密钥R3伪随机指定,均值聚类的迭代次数由第四密钥R4伪随机指定;
第3步:输入分辨率为gh×gv的含密样本图像Q,由第五密钥R5在Q上伪随机生成L个坐标(p′k,q′k),k=0,1,…,L-1且满足式(3)和式(4)的约束,然后以(p′k,q′k),k=0,1,…,L-1为坐标起点从Q上提取出分辨率为fh×fv的纹理小块U0,U1,…,UL-1;
第2.5步:反复执行第2.3步~第2.4步,直至IT≥rr,其中rr是由第四密钥R4产生的大于预设正整数ttt的随机整数;
第5.1步:将B的MD5值对应的2进制位串序列为BMD5=(bi)128的奇数和偶数比特分别按式(11)映射为初始值x0∈(0,1)和系统参数μ∈(3.57,4];
第5.2步:将x0,μ代入式(12)迭代产生(0,1)范围内的随机数r0,r1,…,rL-1,为消除暂态效应,将前ITT,ITT≥0个随机数滤除;
第5.3步:将rk,k=0,1,…,L-1按式(13)量化为[0,n0-1]范围内的随机整数rk′,k=0,1,…,L-1;
第5.5步:将B0,B1,…,BL-1转换为长度为log2n0比特的2进制位串,从而可得到2进制数b0,b1,…,bL-1,然后按式(31)截取前l个比特作为最终提取出的秘密信息B,其中式(31)中,trunc()函数是2值比特位串截取函数,其中第1个参数是要截取的2值比特位串,第2个参数是截取的长度,trunc(b0||b1||…||bL-1,l)表示截取的是b0||b1||…||bL-1的前l个2值比特:
B=trunc(b0||b1||…||bL-1,l) (31)
与现有技术相比,本发明的有益效果是:
(1)现有的基于纹理合成的生成式无载体信息隐藏通常是计算样本小块核心区域的复杂度,通过小块核心区域复杂度来对样本小块进行分类,将样本小块划分为不同的类别,从同一类别中随机筛选样本小块,未考虑样本小块本身之间存在的差异度以及偏离聚类中心样本小块在遭受攻击时可能导致类别提取错误,从而抵抗攻击的能力十分有限。
而本发明则是将样本小块与用户密钥绑定的随机模板的差异进行K均值聚类,并从中选择差异聚类中心的样本小块来对秘密信息分段进行编码表示;同传统方法不同,本发明选择的编码样本小块位于K均值差异聚类的聚类中心,具有最大的类间差异,在遭受攻击时不宜产生偏差,从而具备较强的抗攻击能力。
(2)现有的基于纹理合成的生成式无载体信息隐藏通常是利用样本小块所在的类别来对秘密信息分段来进行一对一的编码表示,从而导致秘密信息分段和样本小块类别之间存在着固定的一一对应关系,安全性较低;
而本发明则是建立秘密信息分段和编码样本小块之间的多重映射关系,使得不同的秘密信息分段依据放置的位置不同而选择不同的编码样本小块,从而不存在固定的一一对应关系,这样有效地提高了秘密信息的安全性。并且本发明进行K均值差异聚类的前提是获得与用户密钥绑定的随机模板,而没有用户密钥将无法获取随机模板,从而不能进行差异聚类,因此本发明的策略完全依赖于密钥,具有较高的安全性。
(3)现有的基于纹理合成的生成式无载体信息隐藏通常是同一个样本块在不同位置代表同一个秘密信息,从而特定样本小块直接关联着特定的秘密信息分段,导致信息泄露;
而本发明中编码样本小块和秘密信息分段之间关系并不是简单固定的依赖关系,从而同一个样本小块放置在不同位置可表示不同的秘密信息分段,而放置在不同位置的不同编码小块也可能对应于同样的秘密信息分段;并且全部样本小块都参与对秘密信息的掩盖,从而可对编码样本小块进行很好的掩盖。
在信道传输过程中,即使攻击者对秘密信息的掩盖纹理图像产生怀疑,在未知用户密钥的前提下,将无法对非编码样本小块和编码样本小块进行有效地区分,并进一步确定编码样本小块和秘密信息分段之间的映射关系,从而不会导致嵌入的秘密信息发生泄漏。
(4)现有的基于纹理合成的生成式无载体信息隐藏方案通常采用基于误差线的相邻小块重叠区域缝合策略来合成纹理并对嵌入的秘密信息进行掩盖。基于误差线的相邻小块重叠区域缝合策略本质是寻找由特定起始位置出发,按照固定的搜索方向来寻找连接重叠区域差异最小的紧邻像素来构造误差线,依据误差来对重叠区域进行纹理合成。但特定起始位置出发的误差线并不意味着是经历重叠区域所有最小差异像素的最小误差线,同时当存在多个相邻重叠块时,若选择不相邻块重叠区域拼接顺序不恰当,将容易产生拼接的痕迹,从而不能对秘密信息进行掩盖;
同现有方法不同,本发明采用基于最小误差线的相邻小块重叠区域缝合策略来合成纹理并对嵌入的秘密信息进行掩盖;对于每个重叠区域,首先计算每一行(列)重叠区域差异最小的像素,然后将每一行(列)作为起始位置出发,按照固定的搜索方向来寻找连接重叠区域差异最小的紧邻像素来构造误差线,最后从得到的多条误差线中选择一条代价最小的,依据该误差来对重叠区域进行纹理合成;当同时当存在多个相邻重叠块时,按照拼接代价从小到大进行依次拼接,从而可产生较好地拼接效果,对秘密信息进行高质量地掩盖。
生成的含密纹理图像拼接效果好,在信道传输过程中,不容易引起攻击者的怀疑,因而不会导致嵌入的秘密信息发生泄漏。
附图说明
图1是秘密信息嵌入流程图;
图2是秘密信息提取流程图;
图3是实施例,长度为128的2值秘密信息,对应为“陕师大计算机学院”;
图4是实施例,分辨率为800×800的8位灰度样本图像;
图5是实施例,根据密钥R1=15对图4随机选取的64个分辨率为32×32的样本小块;
图6是实施例,根据密钥R2=20,随机产生的分辨率为32×32的随机模板;
图7是实施例,经均值聚类得到的16个32×32的编码样本块,其中IT=15,R3=10,R4=20;
图8是实施例,通过密钥R5=49,在分辨率为512×512空白图像中随机放置代表秘密信息的编码样本块;
图9是实施例,在图8的基础上进行纹理拼接的局部区域;
图10是实施例,图9所示局部区域进行纹理拼接后的局部区域;
图11是实施例,最终生成的分辨率为512×512的含密纹理图像;
图12是实施例,由图11提取出的秘密信息,相对于图3对应的秘密信息误码率EBR=0;
图13是实施例,对图11进行强度为0.05的随机噪声攻击的含密纹理图像,相对于图11的PSNR为11.757467272195436dB;
图14是实施例,对图11进行强度为0.15的随机噪声攻击的含密纹理图像,相对于图11的PSNR为10.350578735377153dB;
图15是实施例,对图11进行质量因子为50的JPEG压缩攻击的含密纹理图像,相对于图11的PSNR为27.920004021129472dB;
图16是实施例,对图11进行质量因子为80的JPEG压缩攻击对应的含密纹理图像,相对于图11的PSNR为32.36927168386757dBdB;
图17是从图13中恢复的秘密信息,相对于图3秘密信息误码率EBR=0;
图18是从图14中恢复的秘密信息,相对于图3秘密信息误码率EBR=0.015625;
图19是从图15中恢复的秘密信息,相对与图3误码率EBR=0;
图20是从图16中恢复的秘密信息,相对与图3误码率EBR=0;
图21是实施例,将纹理小块划分为核心区域和边界区域示意图;
图22是实施例,含密样本图像Q的划分示意图;
图23是实施例,0边界块,1边界块,2边界块,3边界块的位置示意图。
具体实施方式
以下以JAVA jdk1.7.0_09为案例实施环境,结合附图对本发明实施方式进行详细说明,其中图1是嵌入流程图,图2是提取流程图。由于所给出的方法涉及大量的复杂运算,为简化描述,明确每一步的计算实施过程,在不同的步骤中采用不同的例子来解释对应的运算过程,其中信息隐藏过程具体的实施步骤举例如下:
第1步:输入分辨率为m×n的P阶灰度样本图像S=(si,j)m×n,si,j∈{0,1,…,2P-1},由第一密钥R1在S上伪随机截取K个分辨率为fh×fv大小的样本小块P0,P1,…,PK-1;分别选取P0,P1,…,PK-1中心分辨率为ah×av的区域作为核心区域按式(1)确定边界距PK-1边界的最小垂直距离为eh,最小水平距离为ev;
例如:图4是输入分辨率为800×800的8阶灰度样本图像S=(si,j)800×800,si,j∈{0,1,…,28-1},图5是由第一密钥R1=15在S上伪随机截取64个分辨率为32×32的样本小块P0,P1,…,P63,所以fv=32,fh=32;分别选取P0,P1,…,P63中心分辨率为16×16的区域作为核心区域所以av=16,ah=16,图21给出了划分样本小块核心区域的具体示意,因此按式(1)可确定eh=8,ev=8;
第2步:由第二密钥R2伪随机生成随机模板将M中心分辨率为ah×av的区域作为核心区域MCore,依据相对于MCore的差异进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别离聚类中心位置最近的样本小块作为编码样本小块其中n0≤K,n0为2的幂次且均值聚类的初始聚类中心由第三密钥R3伪随机指定,均值聚类的迭代次数由第四密钥R4伪随机指定;其中,第2步依据相对于MCore的差异进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别离聚类中心位置最近的样本小块作为编码样本小块具体方法在于包括以下步骤:
式(7)中,|Ci|是类别Ci中的均方误差总数;
第2.5步:反复执行第2.3步~第2.4步,直至IT≥rr,其中rr是由第四密钥R4产生的大于预设正整数ttt的随机整数;
为简化计算过程描述,假设R2=50,R3=10,R4=20,这里取fv=4,fh=4,av=2,ah=2,并假设只有K=4个样本块P0,P1,P2,P3,取n0=2,并将其划分为n0=2个类别C0,C1,其中:
则产生编码样本块P0′,P1′的具体过程为:
第2.3步:将MSE0=18,MSE1=12,MSE2=8,MSE3=28.5与逐一做差: 选取绝对值差异最小的聚类中心所在类别作为该均方误差对应的类别,所以MSE0=18和MSE3=28.5在第一个类别C0中,MSE1=12和MSE2=8在第二个类别C1中;
第2.4步:若C0中包含2个MSE值MSE0=18,MSE3=28.5,则|C0|=2,代入式(7)得由此可将C0的聚类中心更新为23.25,同理可得C1的聚类中心,假设C1=10,然后IT=IT+1;
第2.5步:反复执行第2.3步~第2.4步,取ttt=8,假设R4产生的大于ttt=8的迭代次数rr=10,则IT≥10;
第2.6步:假设最终得到的C0中的均方误差为MSE1=12,MSE2=8,假设迭代10次之后的将MSE1=12,MSE2=8和代入式(8),可知MSE2与聚类中心的差异最小,所以选择MSE2对应的样本小块作为第0个编码样本块P0′,同理可得P1′。
第3步:输入长度为l的2进制比特位串B,将其划分为L个包含log2n0个比特位编码单元,得到L个10进制数依次为B0,B1,…,BL-1;初始化分辨率为gh×gv的空白图像作为含密样本图像Q,以大小为ah×av的网格为单元划分Q,且水平方向上相邻两个网格之间的间距为ev,垂直方向上相邻两个网格之间的间距为eh;同时最外层网格单元水平边界与Q的水平边界之间的间距为eh,最外层网格单元的垂直边界与Q的垂直边界之间的间距为ev,即gh,gv满足的约束如式(2)所示,其中lh,lv分别是垂直方向和水平方向放置的ah×av大小网格的数量;初始化状态标记矩阵R中元素ri,j状态用于标记Q上第(i,j)位置ah×av网格的占用状态,不失一般性,ri,j=0表示未占用,ri,j=1表示占用;
其中,第3步输入长度为l的2进制比特位串B,将其划分为L个log2n0个比特位编码单元,得到L个10进制数依次为B0,B1,…,BL-1的具体方法为:
第3.1步:将长度为l的2进制比特位串B,以log2n0个比特为1组,划分为L组,如式(9)所示,L和l之间满足的约束如式(10)所示:
B=b0||b1||…||bL-1 (9)
式(9)中,符号“||”为比特位串联符号;
第3.2步:将b0,b1,…,bL-1转换为10进制数,从而可得到10进制数B0,B1,…,BL-1;
例如:假设输入长度为l=12的2进制比特位串B=010100101001,若取n0=16,则可按式(10)将B划分为个包含log2n0=log216=4个比特位编码单元b0=0101,b1=0010,b2=1001,如式(9)所示,则将b0=0101,b1=0010,b2=1001转换为10进制数,可得:B0=(0101)2=5,B1=(0010)2=2,B2=(1001)2=9;
初始化分辨率为gh×gv的空白图像Q,Q的实际结构如图22所示,假设ah=av=2,eh=ev=1,则网格大小为ah×av=2×2且以eh和ev为分隔边界,假设垂直方向和水平方向放置的2×2大小网格的数量lh=5,lv=5,代入式(2)可得,gh=lh·ah+(lh+1)·eh=5·2+(5+1)·1=16;gv=lv·av+(lv+1)·ev=5·2+(5+1)·1=16;由于lh=5,lv=5,则应初始化R=(ri,j=0)5×5,R中元素ri,j状态用于标记Q上第(i,j)位置2×2网格的占用状态,这里可通过ri,j=0表示未占用,ri,j=1表示占用;
第4步:由第五密钥R5在Q上伪随机生成L个坐标(p′k,q′k),k=0,1,…,L-1且满足式(3)和式(4)的约束;
例如:取gh=16,gv=16,ah=av=2,eh=ev=1,取L=2,则由R5=45可在Q上伪随机生成2个满足式(3)和(4)约束的坐标(p0′,q0′)=(3,6),(p1′,q1′)=(9,12);
第5步:由B的哈希值确定编码单元Bk对应的编码样本块编号然后从中选取对应的编码样本块将其放置在Q上坐标起始位置为(p′k,q′k)且大小为fh×fv的矩形小块上,按式(5)计算(xc,yc),将R中的元素标记为1,其中k=0,1,…,L-1;
第5.1步:将B的MD5值对应的2进制位串序列为BMD5=(bi)128的奇数和偶数比特分别按式(11)映射为初始值x0∈(0,1)和系统参数μ∈(3.57,4];
第5.2步:将x0,μ代入式(12)迭代产生(0,1)范围内的随机数r0,r1,…,rL-1,为消除暂态效应,将前ITT,ITT≥0个随机数滤除;
xt+1=μxt(1-xt) (12)
第5.3步:将rk,k=0,1,…,L-1按式(13)量化为[0,n0-1]范围内的随机整数rk′,k=0,1,…,L-1;
例如:
第5.1步:假设取B的哈希值为B的MD5值,其对应的2进制位串序列0011 0011 00111011 1010 1010 1101 0110 0011 0001 0101 1001 1101 0100 1011 0111 0011 00101011 1111 0101 0100 1101 1010 0011 0110 0111 0010 0101 0000 0000 1011的奇数和偶数比特代入式(11)可得:x0=0.7125018052204509和μ=3.7435072428580813;
第5.2步:假设取ITT=0,将x0=0.7125018052204509,μ=3.7435072428580813代入式(12)迭代产生(0,1)范围内的随机数为:
r1=x2=μx1(1-x1)=0.6693432735814863,r2=0.8285237132956784;
第5.3步:假设n0=16,将rk,k=0,1,2按式(13)量化为[0,15]范围内的随机整数
然后从P0′,P1′,…,P1′5(由于n0=16,只有16个编码样本块)中选取对应的编码样本块将其放置在Q上坐标起始位置为(p′k,q′k)=(p0′,q′0)且大小为4×4(这里假设fh=fv=4)的矩形小块上,取ah=av=2,eh=ev=1,则按式(5)可计算得到(xc,yc)=(1,2),将R中的元素rxc,yc=r1,2标记为1,对于其他k取值也一样。
第6步:顺序扫描R,对于根据(x,y)四周领域(x-1,y),(x,y+1),(x+1,y),(x,y-1)各元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态,从P0,P1,…,PK-1中选择最合适的样本块将放置在Q上起始坐标为(x(eh+ah),y(ev+av))的fh×fv矩阵小块上;
第6.1步:根据(x,y)其四周领域(x-1,y),(x,y+1),(x+1,y),(x,y-1)各元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态按式(15)确定其类型T,并将T映射为(t3t2t1t0)2,其中t0,t1,t2,t3=1|0依次对应(x,y)的顶部(x-1,y),右侧(x,y+1),底部(x+1,y)和左侧(x,y-1)是否存在已经放置好的样本块,为1表示存在,为0表示不存在;
T=type(rx,y) (15)
式(16)中,类型函数的具体处理功能如式(16)所示:
第6.2步:记位置所要放置的样本块为Pcur∈{P0,P1,…,PK-1},(x,y)的顶部(x-1,y),右侧(x,y+1),底部(x+1,y)和左侧(x,y-1)可能存在的已经放置好的样本块依次记为P0,P1,P2,P3∈{P0,P1,…,PK-1,PΦ},其中PΦ表示放置的样本块不存在,则可按式(17)从P0,P1,…,PK-1中选择最合适的样本块
式(17)中,|| ||2为矩阵2范数,为Pcur在i方向的边界区域,为Pi在方向的边界区域,若所有的ti=0,则式(17)等价于从P0,P1,…,PK-1中随机选择一个样本块作为Pcur;对于分辨率fh×fv的样本块Pcur,i和之间的关系按式(18)确定,其中,0边界块和2边界块的大小为eh×(2ev+av),1边界块和3边界块的大小为(2eh+ah)×ev,0边界块、1边界块、2边界块和3边界块的具体示意如图23所示。
例如:顺序扫描R,对于若取(x,y)=(1,1),则需根据(1,1)其四周领域(0,1),(1,2),(2,1),(1,0)各元素r0,1,r1,2,r2,1,r1,0的状态,从P0,P1,P2,P3(若K=4,则只有4个样本块)中选择最合适的样本块将放置在Q上起始坐标为(x(eh+ah),y(ev+av))=(3,3)(这里假设eh+ah=1+2=3,ev+av=1+2=3)的4×4矩阵小块上;其中根据(1,1)其周围4邻域(0,1),(1,2),(2,1),(1,0)元素r0,1,r1,2,r2,1,r1,0的状态,从P0,P1,P2,P3(以K=4为例)中选择最合适的样本块的具体方法为:
第6.1步:根据(1,1)其周围4邻域(0,1),(1,2),(2,1),(1,0)元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态按式(15)确定其类型T,并将T映射为(t3t2t1t0)2,其中t0,t1,t2,t3=1|0依次对应(1,1)的顶部(0,1),右侧(1,2),底部(2,1)和左侧(1,0)是否存在已经放置好的样本块,为1表示存在,为0表示不存在,假设t0=1,t1=0,t2=0,t3=1,则按式(15)可计算T=type(rx,y)=(1001)2=9;
第6.2步:(1,1)的顶部(0,1),右侧(1,2),底部(2,1)和左侧(1,0)可能存在的已经放置好的样本块依次记为P0,P1,P2,P3∈{P0,P1,P2,P3,PΦ},其中PΦ表示放置的样本块不存在,由于t0=1,t1=0,t2=0,t3=1,则P1,P2不存在已经放置的样本块,即P1=P2=PΦ,而P0和P3对应为Pcur在0方向和3方向上放置的样本块;
按式(17)从P0,P1,P2,P3中选择最合适的样本块假设 P0放置样本块P0,P3放置样本块P3;若Pcur=P0时,则由图23可确定Pcur在0方向的边界区域 为P0在方向的边界区域,代入式(18)得,Pcur在3方向的边界区域 为P3在方向的边界区域,代入式(18)得,代入式(17),当i=0时,当i=3时,当i=0或i=3时,ti=1,当i=1或i=2时,ti=0,则若Pcur=P1时,按图23确定Pcur在0方向的边界区域 为P0在方向的边界区域,代入式(18)得,Pcur在3方向的边界区域 为P3在方向的边界区域,代入式(18)得,代入式(17),当i=0时,当i=3时,当i=0或i=3时,ti=1,当i=1或i=2时,ti=0,则同理,当Pcur=P2时,当Pcur=P3时,得min(92,144,205,98)=92,所以
第7步:根据和Q周围((x-1)(eh+ah),y(ev+av)),(x(eh+ah),(y+1)(ev+av)),((x+1)(eh+ah),y(ev+av)),(x(eh+ah),(y-1)(ev+av))相邻位置已放置小块的重叠区域差异最小确定拼接优先级顺序,并按拼接优先级顺序和周围已放置小块的重叠边界块进行最小误差纹理合成;
其中确定优先级并进行最小误差纹理合成的方法是:对于按式(19)确定与和的拼接优先级顺序然后按拼接优先级顺序和周围已放置小块的重叠边界块进行最小误差纹理合成,若t0=t1=t2=t3=0,则无需进行最小误差纹理合成;
例如:假设将放置在Q上坐标(x(ev+av),y(eh+ah))=(3,3)位置,并根据和Q周围((x-1)(eh+ah),y(ev+av))=(0,3),(x(eh+ah),(y+1)(ev+av))=(3,6),((x+1)(eh+ah),y(ev+av))=(6,3),(x(eh+ah),(y-1)(ev+av))=(3,0)相邻位置已放置小块的重叠区域差异最小确定拼接优先级顺序的具体方法是:
例如:假设eh=1,ev=1,av,ah=2,故fh=2·eh+ah=4,fv=2·ev+av=4,即样本
块的大小为4×4,假设样本块与Pcur顶部相邻的样本块若取tt=0,由式(21)可确定rn=eh=1,cn=2·ev+av=2·1+2=4,则Pcur的0边界区域其大小刚好为rn×cn=1×4,按式(18)知:因此P0在方向的边界块为代入式(20)可得到和的边界差异矩阵
式(22)中,rerrmin(),cerrmin()分别是行最小误差线计算函数和列最小误差线计算函数,其中第1个参数为差异矩阵,第2个参数对应为行索引或列索引;
第a2)步:i=i-1,按式(26)计算di,tc-1,di,tc,di,tc+1的最小值tm,将tm所对应的列坐标赋值给tc并更新tbi=tc;
tm=min(di,tc-1,di,tc,di,tc+1) (26)
式(26)中,若di,tc-1,di,tc,di,tc+1中存在坐标越界元素,则按式(26)计算最小值时,不参与最小值运算;
第a3)步:反复执行第a2)步,直至i=-1,更新i=tr,tc=tbi;
第a4)步:i=i+1,按式(26)计算di,tc-1,di,tc,di,tc+1的最小值tm,将tm所对应的列坐标赋值给tc并更新tbi=tc;
第a5)步:反复执行第a4)步,直至i=rn,将Tb输出作为Li r;
第b2)步:j=j-1,按式(28)计算dtr-1,j,dtr,j,dtr+1,j的最小值tm,将tm所对应的行坐标赋值给tr并更新tbj=tr;
tm=min(dtr-1,j,dtr,j,dtr+1,j) (28)
式(28)中,若dtr-1,j,dtr,j,dtr+1,j中存在坐标越界元素,则按式(28)计算最小值时,不参与最小值运算;
第b3)步:反复执行第b2)步,直至j=-1,更新j=tc,tr=tbj;
第b4)步:j=j+1,按式(28)计算dtr-1,j,dtr,j,dtr+1,j的最小值tm,将tm所对应的行坐标赋值给tr并更新tbj=tr;
第a1)步:初始标记序列Tb=(tbi=0)4,初始化当前列坐标tc=0,初始行坐标tr=1,将代入式(25)得tm=min((1,9,0,3))=0,将tm所对应的列坐标赋值给tc并更新tb1=tc=2;
第a2)步:i=i-1=0,将d0,1=1,d0,2=8,d0,3=4代入式(26)得tm=min(1,8,4)=1,将tm所对应的列坐标赋值给tc并更新tb0=tc=1;
第a3)步:反复执行第a2)步,直至i=-1,更新i=tr=1,tc=tb1=2;
第a4)步:i=i+1=2,将d2,1=6,d2,2=7,d2,3=5代入式(26)得tm=min(6,7,5)=5,将tm所对应的列坐标赋值给tc并更新tb2=tc=3;
第b1)步:初始标记序列Tb=(tbj=0)4,初始化当前行坐标tr=0,初始列坐标tc=1,将代入式(27)得tm=min((1,9,6,0)T),因此最小元素tm=0,将tm所对应的行坐标赋值给tr并更新tb1=tr=3;
第b2)步:j=j-1=0,由于d4,0不存在,将d2,0=9,d3,0=2代入式(28)得tm=min(9,2)=2,将tm所对应的行坐标赋值给tr并更新tb0=tr=3;
第b3)步:反复执行第b2)步,直至j=-1,更新j=tc=1,tr=tb1=3;
第b4)步:j=j+1=2,由于d4,2不存在,将d2,2=7,d3,2=1代入式(28)得tm=min(7,1)=1,将tm所对应的行坐标赋值给tr并更新tb2=tr=3;
其中信息提取过程具体实施步骤举例如下:
第1步:输入分辨率为m×n的P阶灰度样本图像S=(si,j)m×n,si,j∈{0,1,…,2P-1},由第一密钥R1在S上伪随机截取K个分辨率为fh×fv大小的样本小块P0,P1,…,PK-1;选取P0,P1,…,PK-1中心分辨率为ah×av的区域作为核心区域按式(1)确定边界距PK-1边界的最小垂直距离为eh,最小水平距离为ev;
例如:图4为输入分辨率为800×800的8阶灰度样本图像S=(si,j)800×800,si,j∈{0,1,…,28-1},图5是由第一密钥R1=15在S上伪随机截取64个分辨率为32×32的样本小块P0,P1,…,P63,所以fv=32,fh=32;分别选取P0,P1,…,P63中心分辨率为16×16的区域作为核心区域所以av=16,ah=16,图21给出了划分样本小块核心区域的具体示意,因此按式(1)可确定eh=8,ev=8;
第2步:由第二密钥R2伪随机生成随机模板将M中心分辨率为ah×av的区域作为核心区域MCore,依据相对于MCore的差异进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别离聚类中心位置的最近样本小块作为编码样本小块其中n0≤K且均值聚类的初始聚类中心由第三密钥R3伪随机指定,均值聚类的迭代次数由第四密钥R4伪随机指定;
第2.5步:反复执行第2.3步~第2.4步,直至IT≥rr,其中rr是由第四密钥R4产生的大于预设正整数ttt的随机整数;
为简化具体计算过程描述,假设R2=50,R3=10,R4=20,这里取fv=4,fh=4,av=2,ah=2,并假设只有K=4个样本块P0,P1,P2,P3;取n0=2,并将划其分为n0=2个类别C0,C1,其中:
则产生编码样本块P0′,P1′的具体过程为:
第2.5步:反复执行第2.3步~第2.4步,假设由R4产生的大于ttt=8的迭代次数rr=10,则IT≥10;
第2.6步:假设最终得到的第一个类别C0中的均方误差MSE为MSE1=12,MSE2=8,假设迭代10次之后的将MSE1=12,MSE2=8,代入式(8),可知MSE2与聚类中心的差异最小,所以选择MSE2对应的样本小块作为第0个编码样本块P0′,同理可得P1′。
第3步:输入分辨率为gh×gv的含密样本图像Q,由第五密钥R5在Q上伪随机生成L个坐标(p′k,q′k),k=0,1,…,L-1且满足式(3)和式(4)的约束,然后以(p′k,q′k),k=0,1,…,L-1为坐标起点从Q上提取出分辨率为fh×fv的纹理小块U0,U1,…,UL-1;例如:假设fh×fv=4×4,输入分辨率为16×16的8位灰度秘密图像Q,由密钥R5=45在Q上伪随机生成L=2个满足式(3)和(4)约束的坐标(p0′,q0′)=(3,6),(p1′,q1′)=(9,12),然后以(p′k,q′k),k=0,1为坐标起点从Q上提取出指定大小的纹理小块U0,U1;
第5.1步:将B的MD5值对应的2进制位串序列为BMD5=(bi)128的奇数和偶数比特分别按式(11)映射为初始值x0∈(0,1)和系统参数μ∈(3.57,4];
第5.2步:将x0,μ代入式(12)迭代产生(0,1)范围内的随机数r0,r1,…,rL-1,为消除暂态效应,将前ITT,ITT≥0个随机数滤除;
第5.3步:将rk,k=0,1,…,L-1按式(13)量化为[0,n0-1]范围内的随机整数rk′,k=0,1,…,L-1;
第5.5步:将B0,B1,…,BL-1转换为长度为log2n0比特的2进制位串,从而可得到2进制数b0,b1,…,bL-1,然后按式(31)截取前l个比特作为最终提取出的秘密信息B。
B=trunc(b0||b1||…||bL-1,l) (31)
例如:输入待提取秘密信息的哈希值,并结合Uk对应的编号提取出对应10进制秘密信息Bk,k=0,1,2,然后将Bk,k=0,1,2转换为长度为12的2进制比特位串B并输出。其中输入待提取秘密信息的哈希值,并结合Uk对应的编号提取出对应10进制秘密信息Bk,k=0,1,2的具体方法其特征在于包括以下步骤:
第5.1步:将B的MD5值对应的2进制位串序列0011 0011 0011 1011 1010 10101101 0110 0011 0001 0101 1001 1101 0100 1011 0111 0011 0010 1011 1111 01010100 1101 1010 0011 0110 0111 0010 0101 0000 0000 1011的奇数和偶数比特代入式(11)映射为初始值x0=0.7125018052204509和系统参数μ=3.7435072428580813;
第5.2步:假设取ITT=0,将x0=0.7125018052204509,μ=3.7435072428580813代入式(12)迭代产生(0,1)范围内的随机数可得:
r1=x2=μx1(1-x1)=0.6693432735814863,r2=0.8285237132956784;
第5.4步:取k=0,并假设第k=0个随机坐标位置为(3,6),即p0′=3,q0′=6,编码样本块编号取r0′=8,n0=16,代入式(30)得到编码样本块编号所对应的十进制秘密信息B0=(6+(16-1)(3·6·8+3+6+8))mod16=5;
第5.5步:将B0转换为长度为4比特的2进制位串B0=5=(0101)2,同理可计算出B1转换为长度为4比特的2进制位串B1=2=(0010)2,B2转换为长度为4比特的2进制位串B2=9=(1001)2,对应的2进制数b0=0101,b1=0010,b2=1001,则按式(31)取l=12可提取出秘密信息B=010100101001。
图3~图16、图21~图23是实施例,其中:
图3是长度为128的2值秘密信息,对应为“陕师大计算机学院”;图4是分辨率为800×800的8位灰度样本图像;图5是根据密钥R1=15对图4随机选取的64个分辨率为32×32的样本小块;图6是根据密钥R2=20,随机产生的分辨率为32×32的随机模板;图7是经均值聚类得到的16个32×32的编码样本块,其中IT=15,R3=10,R4=20;图8是通过密钥R5=49,在分辨率为512×512空白图像中随机放置代表秘密信息的编码样本块;图9是在图8的基础上进行纹理拼接的局部区域;图10是在图9所示局部区域进行纹理拼接后的局部区域;图11是最终生成的分辨率为512×512的含密纹理图像;图12是由图11提取出的秘密信息,相对于图3对应的秘密信息误码率EBR=0;图13是对图11进行强度为0.05的随机噪声攻击的含密纹理图像,相对于图11的PSNR为11.757467272195436dB;图14是对图11进行强度为0.15的随机噪声攻击的含密纹理图像,相对于图11的PSNR为10.350578735377153dB;图15是对图11进行质量因子为50的JPEG压缩攻击的含密纹理图像,相对于图11的PSNR为27.920004021129472dB;图16是对图11进行质量因子为80的JPEG压缩攻击对应的含密纹理图像,相对于图11的PSNR为32.36927168386757dBdB;图17是从图13中恢复的秘密信息,相对于图3秘密信息误码率EBR=0;图18是从图14中恢复的秘密信息,相对于图3秘密信息误码率EBR=0.015625;图19是从图15中恢复的秘密信息,相对与图3误码率EBR=0;图20是从图16中恢复的秘密信息,相对与图3误码率EBR=0;图21是将纹理小块划分为核心区域和边界区域示意图;图22是含密样本图像Q的划分示意图;图23是0边界块,1边界块,2边界块,3边界块的位置示意图。
Claims (10)
1.一种结合差异聚类和误差最小纹理合成的生成式信息隐藏方法,其特征在于包括以下步骤:
第1步:输入分辨率为m×n的P阶灰度样本图像S=(si,j)m×n,si,j∈{0,1,…,2P-1},由第一密钥R1在S上伪随机截取K个分辨率均为fh×fv的样本小块P0,P1,…,PK-1;分别选取P0,P1,…,PK-1中心分辨率为ah×av的区域作为核心区域按式(1)确定边界距PK-1边界的最小垂直距离为eh,最小水平距离为ev;其中,设fv为样本小块的水平边界长度,fh为样本小块的垂直边界长度,av为核心区域的水平边界长度,ah为核心区域的垂直边界长度;eh为核心区域水平边界与样本小块水平边界之间的间距,ev为核心区域垂直边界与样本小块垂直边界之间的间距;
第2步:由第二密钥R2伪随机生成随机模板将M中心分辨率为ah×av的区域作为核心区域MCore,依据相对于MCore的差异进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别离聚类中心位置最近的样本小块作为编码样本小块其中n0≤K,n0为2的幂次且均值聚类的初始聚类中心由第三密钥R3伪随机指定,均值聚类的迭代次数由第四密钥R4伪随机指定;
第3步:输入长度为l的2进制比特位串B,将其划分为L个包含log2n0个比特位编码单元,得到L个10进制数依次为B0,B1,…,BL-1;
初始化分辨率为gh×gv的空白图像作为含密样本图像Q,以大小为ah×av的网格为单元划分Q,且水平方向上相邻两个网格之间的间距为ev,垂直方向上相邻两个网格之间的间距为eh;同时最外层网格单元水平边界与Q的水平边界之间的间距为eh,最外层网格单元的垂直边界与Q的垂直边界之间的间距为ev,即gh,gv满足的约束如式(2)所示,其中lh,lv分别是垂直方向和水平方向放置的ah×av大小网格的数量;初始化状态标记矩阵R中元素ri,j状态用于标记Q上第(i,j)位置ah×av网格的占用状态,不失一般性,ri,j=0表示未占用,ri,j=1表示占用;
第4步:由第五密钥R5在Q上伪随机生成L个坐标(p′k,q′k),k=0,1,…,L-1且满足式(3)和式(4)的约束;
第5步:由B的哈希值确定编码单元Bk对应的编码样本块编号然后从中选取对应的编码样本块将其放置在Q上坐标起始位置为(pk′,q′k)且大小为fh×fv的矩形小块上,按式(5)计算(xc,yc),将R中的元素标记为1,其中k=0,1,…,L-1;
第6步:顺序扫描R,对于rx,y=0,根据(x,y)四周领域(x-1,y),(x,y+1),(x+1,y),(x,y-1)各元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态,从P0,P1,…,PK-1中选择样本块作为将放置在Q上起始坐标为(x(eh+ah),y(ev+av))的fh×fv矩阵小块上;
第7步:根据和Q周围((x-1)(eh+ah),y(ev+av)),(x(eh+ah),(y+1)(ev+av)),((x+1)(eh+ah),y(ev+av)),(x(eh+ah),(y-1)(ev+av))相邻位置已放置小块的重叠区域差异最小确定拼接优先级顺序,并按拼接优先级顺序和周围已放置小块的重叠边界块进行最小误差纹理合成;
2.如权利要求1所述的一种结合差异聚类和误差最小纹理合成的生成式信息隐藏方法,其特征在于,第2步依据相对于MCore的差异进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别离聚类中心位置最近的样本小块作为编码样本小块具体方法在于包括以下步骤:
式(7)中,|Ci|是类别Ci中的均方误差总数;
第2.5步:反复执行第2.3步~第2.4步,直至ITvrr,其中rr是由第四密钥R4产生的大于预设正整数ttt的随机整数;
3.如权利要求1所述的一种结合差异聚类和误差最小纹理合成的生成式信息隐藏方法,其特征在于第3步输入长度为l的2进制比特位串B,将其划分为L个log2n0个比特位编码单元,得到L个10进制数依次为B0,B1,…,BL-1的具体方法在于包括以下步骤:
第3.1步:将长度为l的2进制比特位串B,以log2n0个比特为1组,划分为L组,如式(9)所示,L和l之间满足的约束如式(10)所示:
B=b0||b1||…||bL-1 (9)
式(9)中,符号“||”为比特位串联符号;
第3.2步:将b0,b1,…,bL-1转换为10进制数,从而可得到10进制数B0,B1,…,BL-1;
第5.1步:将B的MD5值对应的2进制位串序列为BMD5=(bi)128的奇数和偶数比特分别按式(11)映射为初始值x0∈(0,1)和系统参数μ∈(3.57,4];
第5.2步:将x0,μ代入式(12)迭代产生(0,1)范围内的随机数r0,r1,…,rL-1,为消除暂态效应,将前ITT,ITT≥0个随机数滤除;
xt+1=μxt(1-xt) (12)
第5.3步:将rk,k=0,1,…,L-1按式(13)量化为[0,n0-1]范围内的随机整数r′k,k=0,1,…,L-1;
4.如权利要求1所述的一种结合差异聚类和误差最小纹理合成的生成式信息隐藏方法,其特征在于第6步顺序扫描R的具体方法是按光栅扫描顺序扫描R;
第6步根据(x,y)四周领域(x-1,y),(x,y+1),(x+1,y),(x,y-1)各元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态,从P0,P1,…,PK-1中选择最合适的样本块的具体方法在于包括以下步骤:
第6.1步:根据(x,y)其四周领域(x-1,y),(x,y+1),(x+1,y),(x,y-1)各元素rx-1,y,rx,y+1,rx+1,y,rx,y-1的状态按式(15)确定其类型T,并将T映射为(t3t2t1t0)2,其中t0,t1,t2,t3=1|0依次对应(x,y)的顶部(x-1,y),右侧(x,y+1),底部(x+1,y)和左侧(x,y-1)是否存在已经放置好的样本块,为1表示存在,为0表示不存在;
T=type(rx,y) (15)
式(15)中,类型函数的具体处理功能如式(16)所示:
第6.2步:记rx,y=0位置所要放置的样本块为Pcur∈{P0,P1,…,PK-1},(x,y)的顶部(x-1,y),右侧(x,y+1),底部(x+1,y)和左侧(x,y-1)可能存在的已经放置好的样本块依次记为P0,P1,P2,P3∈{P0,P1,…,PK-1,PΦ},其中PΦ表示放置的样本块不存在,则可按式(17)从P0,P1,…,PK-1中选择合适的样本块
式(17)中,|| ||2为矩阵2范数,为Pcur在i方向的边界区域,为Pi在方向的边界区域,若所有的ti=0,则式(17)等价于从P0,P1,…,PK-1中随机选择一个样本块作为Pcur;对于分辨率fh×fv的样本块Pcur,i和之间的关系按式(18)确定,其中,0边界块和2边界块的大小均为eh×(2ev+av),1边界块和3边界块的大小均为(2eh+ah)×ev;其中,0边界块为样本小块核心区域上边界与样本小块上边界之间的区域;1边界块为样本小块核心区域右边界与样本小块右边界之间的区域,2边界块为样本小块核心区域下边界与样本小块下边界之间的区域,3边界块为样本小块核心区域左边界与样本小块左边界之间的区域:
6.如权利要求5所述的一种结合差异聚类和误差最小纹理合成的生成式信息隐藏方法,其特征在于:记为在tt方向的边界块,Ptt为在tt方向的相邻样本块,为Ptt在方向的边界区域,其中tt∈{0,1,2,3},ttt=1,则第7步将和Ptt的边界块进行最小误差纹理合成的具体方法在于包括以下步骤:
式(22)中,rerrmin(),cerrmin()分别是行最小误差线计算函数和列最小误差线计算函数,其中第1个参数为差异矩阵,第2个参数对应为行索引或列索引;
第a2)步:i=i-1,按式(26)计算di,tc-1,di,tc,di,tc+1的最小值tm,将tm所对应的列坐标赋值给tc并更新tbi=tc;
tm=min(di,tc-1,di,tc,di,tc+1) (26)
式(26)中,若di,tc-1,di,tc,di,tc+1中存在坐标越界元素,则按式(26)计算最小值时,不参与最小值运算;
第a3)步:反复执行第a2)步,直至i=-1,更新i=tr,tc=tbi;
第a4)步:i=i+1,按式(26)计算di,tc-1,di,tc,di,tc+1的最小值tm,将tm所对应的列坐标赋值给tc并更新tbi=tc;
第b2)步:j=j-1,按式(28)计算dtr-1,j,dtr,j,dtr+1,j的最小值tm,将tm所对应的行坐标赋值给tr并更新tbj=tr;
tm=min(dtr-1,j,dtr,j,dtr+1,j) (28)
式(28)中,若dtr-1,j,dtr,j,dtr+1,j中存在坐标越界元素,则按式(28)计算最小值时,不参与最小值运算;
第b3)步:反复执行第b2)步,直至j=-1,更新j=tc,tr=tbj;
第b4)步:j=j+1,按式(28)计算dtr-1,j,dtr,j,dtr+1,j的最小值tm,将tm所对应的行坐标赋值给tr并更新tbj=tr;
8.一种结合差异聚类和误差最小纹理合成的生成式信息提取方法,其特征在于包括以下步骤:
第1步:输入分辨率为m×n的P阶灰度样本图像S=(si,j)m×n,si,j∈{0,1,…,2P-1},由第一密钥R1在S上伪随机截取K个分辨率为fh×fv大小的样本小块P0,P1,…,PK-1;选取P0,P1,…,PK-1中心分辨率为ah×av的区域作为核心区域按式(1)确定边界距PK-1边界的最小垂直距离为eh,最小水平距离为ev;
第2步:由第二密钥R2伪随机生成随机模板将M中心分辨率为ah×av的区域作为核心区域MCore,依据相对于MCore的差异,进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别离聚类中心位置最近的样本小块作为编码样本小块其中n0≤K且均值聚类的初始聚类中心由第三密钥R3伪随机指定,均值聚类的迭代次数由第四密钥R4伪随机指定;
第3步:输入分辨率为gh×gv的含密样本图像Q,由第五密钥R5在Q上伪随机生成L个坐标(p′k,q′k),k=0,1,…,L-1且满足式(3)和式(4)的约束,然后以(p′k,q′k),k=0,1,…,L-1为坐标起点从Q上提取出分辨率为fh×fv的纹理小块U0,U1,…,UL-1;
9.如权利要求8所述的一种结合差异聚类和误差最小纹理合成的生成式信息提取方法,其特征在于:第2步依据相对于MCore的差异进行均值聚类,将P0,P1,…,PK-1划分为n0个类别将每个类别聚类中心位置的样本小块作为编码样本小块具体方法在于包括以下步骤:
第2.5步:反复执行第2.3步~第2.4步,直至IT≥rr,其中rr是由第四密钥R4产生的大于预设正整数ttt的随机整数;
第5.1步:将B的MD5值对应的2进制位串序列为BMD5=(bi)128的奇数和偶数比特分别按式(11)映射为初始值x0∈(0,1)和系统参数μ∈(3.57,4];
第5.2步:将x0,μ代入式(12)迭代产生(0,1)范围内的随机数r0,r1,…,rL-1,为消除暂态效应,将前ITT,ITT≥0个随机数滤除;
第5.3步:将rk,k=0,1,…,L-1按式(13)量化为[0,n0-1]范围内的随机整数r′k,k=0,1,…,L-1;
第5.5步:将B0,B1,…,BL-1转换为长度为log2n0比特的2进制位串,从而可得到2进制数b0,b1,…,bL-1,然后按式(31)截取前l个比特作为最终提取出的秘密信息B,其中式(31)中,trunc()函数是2值比特位串截取函数,其中第1个参数是要截取的2值比特位串,第2个参数是截取的长度,trunc(b0||b1||…||bL-1,l)表示截取的是b0||b1||…||bL-1的前l个2值比特:
B=trunc(b0||b1||…||bL-1,l) (31)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811159629.5A CN109388959B (zh) | 2018-09-30 | 2018-09-30 | 结合差异聚类和最小误差纹理合成的生成式信息隐藏方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811159629.5A CN109388959B (zh) | 2018-09-30 | 2018-09-30 | 结合差异聚类和最小误差纹理合成的生成式信息隐藏方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109388959A CN109388959A (zh) | 2019-02-26 |
CN109388959B true CN109388959B (zh) | 2021-08-27 |
Family
ID=65419117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811159629.5A Active CN109388959B (zh) | 2018-09-30 | 2018-09-30 | 结合差异聚类和最小误差纹理合成的生成式信息隐藏方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109388959B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110430336B (zh) * | 2019-08-02 | 2021-05-11 | 陕西师范大学 | 图像隐藏和恢复的方法、设备和存储介质 |
CN112235291B (zh) * | 2020-10-13 | 2023-04-07 | 陕西师范大学 | 逐像素纹理生成式信息隐藏及恢复方法、设备及介质 |
CN113392381A (zh) * | 2021-06-29 | 2021-09-14 | 合肥高维数据技术有限公司 | 水印生成、解码方法以及存储介质、电子设备 |
CN114299409B (zh) * | 2022-03-07 | 2022-07-01 | 中煤科工开采研究院有限公司 | 一种基于图像识别和深度信息的井下人员定位方法与装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780278A (zh) * | 2016-11-25 | 2017-05-31 | 陕西师范大学 | 一种结合零水印和块分类融合的自恢复图像加密和解密方法 |
CN107273916A (zh) * | 2017-05-22 | 2017-10-20 | 上海大学 | 隐写算法未知的信息隐藏检测方法 |
CN107610711A (zh) * | 2017-08-29 | 2018-01-19 | 中国民航大学 | 基于量化索引调制qim的g.723.1语音信息隐写分析方法 |
-
2018
- 2018-09-30 CN CN201811159629.5A patent/CN109388959B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780278A (zh) * | 2016-11-25 | 2017-05-31 | 陕西师范大学 | 一种结合零水印和块分类融合的自恢复图像加密和解密方法 |
CN107273916A (zh) * | 2017-05-22 | 2017-10-20 | 上海大学 | 隐写算法未知的信息隐藏检测方法 |
CN107610711A (zh) * | 2017-08-29 | 2018-01-19 | 中国民航大学 | 基于量化索引调制qim的g.723.1语音信息隐写分析方法 |
Non-Patent Citations (1)
Title |
---|
信息隐藏研究展望;张新鹏 等;《应用科学学报》;20160531;第475-489页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109388959A (zh) | 2019-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109388959B (zh) | 结合差异聚类和最小误差纹理合成的生成式信息隐藏方法 | |
Cao et al. | High capacity reversible data hiding in encrypted images by patch-level sparse representation | |
CN112396607B (zh) | 一种可变形卷积融合增强的街景图像语义分割方法 | |
CN106204503B (zh) | 基于改进置信度更新函数及匹配准则的图像修复算法 | |
CN108648133B (zh) | 一种结合块旋转和马赛克的无嵌入伪装方法 | |
CN110430336B (zh) | 图像隐藏和恢复的方法、设备和存储介质 | |
Sun et al. | Encoding spectral and spatial context information for hyperspectral image classification | |
Zhou et al. | Steganography Using Reversible Texture Synthesis Based on Seeded Region Growing and LSB. | |
CN110503591A (zh) | 基于特征轮廓二维码水印的有效智能的图像提取和认证比较的方法 | |
CN110263610A (zh) | 一种基于深度学习的退化文档图像二值化方法及系统 | |
CN114140309A (zh) | 一种基于nice模型的新型图像隐写方法及系统 | |
Zhang et al. | Reversible data hiding for 3D mesh models with hybrid prediction and multilayer strategy | |
CN115424059A (zh) | 一种基于像素级对比学习的遥感土地利用分类方法 | |
CN116363489A (zh) | 一种复制粘贴篡改图像数据检测方法、装置、计算机及计算机可读存储介质 | |
Tang et al. | Color image reversible data hiding with double-layer embedding | |
Li et al. | Steganography of steganographic networks | |
CN110417551B (zh) | 一种结合误差扩散的字符画生成式伪装及恢复方法 | |
CN103226818B (zh) | 基于流形正则稀疏支撑回归的单帧图像超分辨率重建方法 | |
CN113160028B (zh) | 基于彩色字符画的信息隐藏及恢复方法、设备及存储介质 | |
CN112184841A (zh) | 块替换生成式信息隐藏及恢复方法、设备及介质 | |
Zhang et al. | Adaptive robust blind watermarking scheme improved by entropy-based SVM and optimized quantum genetic algorithm | |
CN115482463A (zh) | 一种生成对抗网络矿区土地覆盖识别方法及系统 | |
CN113850284B (zh) | 一种基于多尺度特征融合和多分支预测的多操作检测方法 | |
CN113283299A (zh) | 基于cgan网络增强局部放电信号prpd图谱数据的方法 | |
Qiu et al. | Rich-information watermarking scheme for 3D models of oblique photography |
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 |