0引言随着深度学习的不断深入、人工智能的继续发展以及量子计算机的初现端倪,传统修改式信息隐藏的研究形势变得十分严峻。一方面,压缩技术的持续发展使得可供利用的冗余空间越来越小;另一方面,基于机器学习的隐写分类器维数不断提高(Adeli和Broumandnia,2018;Holub和Fridrich,2015;Song等,2017)导致修改隐匿信息不被发现的可能性越来越小。针对此问题,2014年全国信息隐藏与多媒体安全专家研讨会首次提出了无载体信息隐藏;2015年第12届全国信息隐藏大会将无载体信息隐藏技术列入未来信息隐藏的前沿阵地;2016年第13届全国信息隐藏大会将无载体信息隐藏正式定位为第2代信息隐藏技术;2018年第14届全国信息隐藏大会为无载体信息隐藏组织了专场讨论。目前关于无载体信息隐藏,比较典型的方法是基于搜索的无载体信息隐藏,主要通过检索数据库中包含指定秘密矢量的自然无修改载体来传递秘密信息。例如,Yuan等人(2017)和Zhou等人(2015)通过检索数据库中哈希值与秘密比特小段相等的图像作为含密载体。Zhang等人(2018)和Zhou等人(2017)则进一步利用标识来确定秘密信息所在的载体小块位置以提升安全性。Zheng等人(2017)将图像划分为9个小块作为叶子节点,通过选取9个叶子节点的256种排列使得单幅载体图像最多可表示256种18 bit秘密信息。Zhou等人(2018)将密图小块映射为哈希值,通过选取载体图像同哈希值小块来对密图进行近似马赛克图像重构。但这类方法存在的问题是:1)图像或文本等自然未修改载体对与之不相关的秘密信息表达能力十分有限,若需足够表现能力,则需收集足够多的样本。2)随着数据库文本和图像信息表达能力的增强,需要搜索的数据量也呈几何级数增加,即使借助倒排索引,对于大数据量的搜索、存储和维护也将是沉重负担。3)由于这类方法单载体嵌密容量极低,涉及大量载体在信道中密集传输,从而容易诱发攻击,导致传输的秘密信息遭受破坏。基于纹理合成的生成式无载体信息隐藏方法也是一类典型的无载体信息隐藏方法,其主要思想是将给定的样例纹理划分为纹理小块,并建立纹理小块与秘密信息之间的映射关系,通过样例纹理合成来生成与之相似的含密纹理。例如,Xu等人(2015)在空白图像上书写秘密信息,然后添加掩盖图案,最后通过类水影画形变来产生含密纹理。Wu和Wang(2015)将秘密信息与图像纹理小块的MSE(mean sqacre ernor)等级相对应,从中选择合适的纹理小块来形成嵌密掩体。Qin等人(2017)根据纹理小块核心区域的复杂度将纹理小块分类用于代表秘密信息并将所选小块随机放置在掩体图像中,然后利用其他小块对其进行拼接来对秘密信息进行掩盖。Qian等人(2016)用不同类别的纹理小块代表不同的秘密信息来形成含密掩体。但这类方法只能生成简单质地的纹理图像,不能生成复杂的有意义图像。传统基于马赛克拼图的信息隐藏方法可产生有意义图像。例如,Lai和Tsai(2011)通过选取与密图特征相似的公开图像,以密图小块为字典来替换与之相似的公开图像小块,从而将密图伪装成公开图像。Zhai等人(2015)和张梦等人(2016)采用相似块替换,将秘密图像分成$n$个分支分别嵌入$n$幅掩体图像中。为避免Lai和Tsai(2011)选取与密图特征相似的公开图像,Lee和Tsai(2014)根据密图小块和掩体图像小块的均值和标准差分别排序,建立一一映射关系来嵌入秘密信息。为减少参数嵌入,Hou等人(2016)在Lee和Tsai(2014)基础上引入均值聚类对密图小块和掩体小块进行分类和匹配。刘小凯等人(2018)引入了分类阈值优化算法来改进Hou等人(2016)的方法,使匹配密图小块与掩体小块的均方误差更小。除了基于图像划分小块拼接的马赛克拼图以外,还存在一种将有意义图像直接作为马赛克图像的图像马赛克拼图方法。这种拼图方法可将不同的图像作为马赛克,用以产生具有任意表现力的其他图像。结合图像马赛克拼图,Lin和Tsai(2004)将多个等大矩形图像拼接为掩体图像,通过加噪调整每个矩形图像左右上下4条边的方差来表达2 bit秘密信息并依据大于设定阈值的最小边方差来提取秘密信息。相对于纹理合成的生成式无载体信息隐藏方法,Hou等人(2016),Lai和Tsai(2011),Lee和Tsai(2014),Lin和Tsai(2004),刘小凯等人(2018),Zhai等人(2015)和张梦等人(2016)的方法尽管可生成有意义图像,但都需要借助修改载体的方式嵌入秘密信息。例如,Hou等人(2016),Lai和Tsai(2011),Lee和Tsai(2014)和刘小凯等人(2018)通过基于LSB(least significant bit)的可逆嵌入方法(Coltuc和Jean-Marc,2007)嵌入和提取秘密信息。Zhai等人(2015)通过简单LSB方法将相关参数嵌入在掩体图像中。张梦等人(2016)通过差值扩展嵌入相关参数并提取秘密信息。Lin和Tsai(2004)通过修改马赛克图像边界信息的方式嵌入秘密信息。因此这些方法的本质都是传统基于修改式的信息隐藏方法,无法抵抗密写分析算法的检测。同时这些方法均涉及LSB嵌入,鲁棒性差,在遭受攻击时,容易导致嵌入的参数丢失。除此之外,这些方法都不具备对提取信息的认证能力,从而无法对提取信息的真实性进行检验。传统搜索式无载体信息隐藏(Yuan等,2017;Zhang等,2018;Zheng等,2017;Zhou等,2015, 2017, 2018)隐藏容量低且涉及大量载体密集传输;基于纹理合成的无载体信息隐藏(Qian等,2016;Qin等,2017;Wu和Wang,2015;Xu等,2015)无法生成有意义图像;基于马赛克拼图的信息隐藏(Hou等,2016;Lai和Tsai,2011;Lee和Tsai,2014;Lin和Tsai,2004;刘小凯等,2018;Zhai等,2015;张梦等,2016)尽管能产生有意义图像,但需采用修改式嵌密的方法嵌入变换参数。针对这些问题,所提方法结合马赛克拼图,首先将多个灰度图像转换为具有伪随机转角的圆形图像来构建马赛克,通过生成随机整数坐标序列来决定二值秘密信息比特位串在掩体上的隐藏位置。其次对于隐藏位置,放置与密钥和位置关联的圆形图像来表达二值秘密比特串,并对含密圆形图像施加与密钥和位置关联的随机转角以进行认证,对于非隐藏位置则放置与对应像素最接近的圆形图像以掩盖隐藏的秘密信息。最后将放置过程产生的偏差利用误差扩散传递给掩体周围未处理像素从而产生马赛克图像,在提取阶段根据密钥结合质心旋转匹配从马赛克图像中提取秘密比特串并对其进行认证。与基于纹理合成的无载体信息隐藏相比,所提方法采用马赛克拼图的方法来生成有意义含密掩体;与基于搜索的无载体信息隐藏相比,所提方法避免了搜索无载体信息隐藏容量低和大量载体在信道中密集传输;与传统基于马赛克拼图的信息隐藏相比,所提方法采用质心旋转匹配来对隐藏的二值秘密信息比特进行识别和提取,并可通过随机转角认证来验证提取信息的准确性,具有良好的认证精度,避免了对比方法不具备相应认证能力的问题,且所提方法的提取过程完全依赖于密钥,原始掩体不在信道中传输且无法获取,生成的含密掩体为非自然图像载体,可抵抗传统基于自然图像统计的密写分析方法的检测;与修改式嵌入方法相比,所提方法利用圆形马赛克图像来表达秘密信息,具有较强的抗攻击鲁棒性,可容忍高强度噪声攻击和低质量JPEG压缩,且对随机剪切擦除攻击具有一定的抗攻击容忍能力。1本文方法本文提出的结合块旋转和马赛克拼图的生成式伪装方法处理流程如图 1所示,其中虚线框代表输入或输出处理集合,实线框为处理环节,三角箭头表示信息流动的方向,圆形箭头表示处理环节满足的约束条件。具体步骤为:1)通过圆形及随机转角初始化策略将分辨率为$\left({2r - 1} \right)\left({2r - 1} \right)$像素的正方形图像${\mathit{\boldsymbol{H}}_0}, {\mathit{\boldsymbol{H}}_1}, \cdots, {\mathit{\boldsymbol{H}}_{l - 1}}$转换为添加随机初始转角且半径为$r$的圆形图像${{\mathit{\boldsymbol{H'}}}_0}, {{\mathit{\boldsymbol{H'}}}_1}, \cdots, {{\mathit{\boldsymbol{H'}}}_{l - 1}}$;2)从${{\mathit{\boldsymbol{H'}}}_0}, {{\mathit{\boldsymbol{H'}}}_1}, \cdots, {{\mathit{\boldsymbol{H'}}}_{l - 1}}$中选取${{\mathit{\boldsymbol{H'}}}_{\hat k}}$,用于对二值秘密信息序列$\mathit{\boldsymbol{B}}$截取的${\log _2}l$比特秘密信息${X_{{\rm{cu}}}}$进行表达,并通过${{\mathit{\boldsymbol{H'}}}_{\hat k}}$的二次随机转角来构造${X_{{\rm{cu}}}}$的认证信息;3)结合误差扩散来生成与给定掩体图像$\mathit{\boldsymbol{T}}$外观相似的马赛克图像$\mathit{\boldsymbol{M}}$,用以对$\mathit{\boldsymbol{B}}$进行掩盖;4)通过质心旋转匹配和随机转角认证的秘密信息恢复策略,从信道接收的马赛克图像${\mathit{\boldsymbol{M'}}}$中提取出秘密信息序列${\mathit{\boldsymbol{B'}}}$和秘密信息认证图$\mathit{\boldsymbol{A}}$,并对${\mathit{\boldsymbol{B'}}}$的正确性进行认证。图 1给出的策略主要包括3个关键处理环节:1)圆形及随机转角初始化策略,主要对样本图像进行圆形和随机转角初始化,用以构造秘密信息的表达样本;2)结合参数映射和误差扩散的马赛克图像生成策略,主要用于秘密信息的嵌入并进一步生成秘密信息的掩盖;3)结合质心旋转匹配和随机转角认证的秘密信息恢复策略,用于秘密信息的重构并对恢复出的秘密信息正确性进行认证。 图1 结合块旋转和马赛克拼图的生成式伪装方法框图 The diagram of generative camouflage method combined with block rotation and mosaicFig 11.1圆形及随机转角初始化策略记${\mathit{\boldsymbol{H}}_k} = {\left({h_{i, j}^k} \right)_{(2r - 1) \times (2r - 1)}}$, $k = 0, 1, \cdots, l - 1$是$l$个分辨率为$\left({2r - 1} \right)\left({2r - 1} \right)$像素的灰度样本图像,将其转换为具有初始转角${\alpha _{{\rm{in}}}}$且半径为$r$的圆形图像${{\mathit{\boldsymbol{H'}}}_k} = {\left({h_{i, j}^{'k}} \right)_{(2r - 1) \times (2r - 1)}}$,得 1 ${{\mathit{\boldsymbol{H'}}}_k} = Rot\left( {{\mathit{\boldsymbol{H}}_k},r,\alpha _{{\rm{in}}}^k} \right)$ 式中,$Rot\left(\cdot \right)$是逆时针旋转函数,$r$为圆形图像半径,$\alpha _{{\rm{in}}}^k \in [0, 2{\rm{ \mathsf{ π} }})$是逆时针旋转角度。之所以按式(1)将${\mathit{\boldsymbol{H}}_k}$转换为${{\mathit{\boldsymbol{H'}}}_k}$,是为了让${{\mathit{\boldsymbol{H'}}}_k}$不仅可通过灰度均值来表示掩体图像像素,还可任意角度的摆放来进行转角认证;若$\alpha _{{\rm{in}}}^k$由密钥生成,则可对${{\mathit{\boldsymbol{H'}}}_k}$的摆放角度添加随机扰动,从而仅有掌握密钥的用户才能滤除$\alpha _{{\rm{in}}}^k$的影响并提取认证信息。在本文中,$\alpha _{{\rm{in}}}^k \in [0, 2{\rm{ \mathsf{ π} }})$是由密钥${k_0}$产生的随机整数$i{n_k} \in \left[ {0, n - 1} \right]$按式(2)映射得到,其中$k = 0, 1, \cdots, l - 1$。 2 $\alpha _{{\rm{in}}}^k = i{n_k} \cdot 2{\rm{ \mathsf{ π} }}/n$ 将${\mathit{\boldsymbol{H}}_k}$转换为半径为$r$的圆形图像${{\mathit{\boldsymbol{H'}}}_k}$,即 3 $h{'}_{i,j}^k = \left\{ {\begin{array}{*{20}{l}}{ - 1}&{{{\left( {i - r + 1} \right)}^2} + {{\left( {j - r + 1} \right)}^2} \le {r^2}}\\0&{其他}\end{array}} \right.$ 将${{\mathit{\boldsymbol{H'}}}_k}$进行初始化,用于保留${\mathit{\boldsymbol{H}}_k}$半径$r$范围内的像素$h_{i, j}^k, (i, j) \in \left\{ {{{(i - r + 1)}^2} + {{(j - r + 1)}^2} \le {r^2}} \right\}$。为使${{\mathit{\boldsymbol{H'}}}_k}$具有随机初始转角$\alpha _{{\rm{in}}}^k$,这里需将${\mathit{\boldsymbol{H}}_k}$上的像素由平面直角坐标转换为极坐标,记$h_{i, j}^k, (i, j) \in \left\{ {{{(i - r + 1)}^2} + {{(j - r + 1)}^2} \le {r^2}} \right\}$对应的极坐标为$h_{i, j}^{k, \rho, \theta }$,按 4 $\left( {\rho ,\theta } \right) = \left\{ \begin{array}{l}\rho = \sqrt {{{\left( {i - r + 1} \right)}^2} + {{\left( {j - r + 1} \right)}^2}} \\\theta = \left( {j - r + 1} \right)/\left( {i - r + 1} \right)\end{array} \right.$ 进行转换,按 5 $\left( {{i_1},{j_1}} \right) = \left\{ \begin{array}{l}{i_1} = \left[ {\rho \cdot \cos \left( {\theta + {\alpha _{{\rm{ind}}}}} \right)} \right]\\{j_1} = \left[ {\rho \cdot \sin \left( {\theta + {\alpha _{{\rm{ind}}}}} \right)} \right]\end{array} \right.$ 添加随机转角$\alpha _{{\rm{in}}}^k$(式(5)中“[]”为四舍五入操作符)。然后将$h_{i, j}^k$赋值给${{\mathit{\boldsymbol{H'}}}_k}$中元素$h_{{i_1}, {j_1}}^{'k}$,其中当$i = r, {\rm{ }}j = r$时,则直接将$h_{i, j}^k$作为$h_{{i_1}, {j_1}}^{'k}$。由于极坐标和平面直角坐标在转换过程中不完全匹配,因此${{\mathit{\boldsymbol{H'}}}_k}$会存在缺失像素点$h_{i, j}^{'k} = - 1$,$(i, j) \in \left\{ {{{(i - r + 1)}^2} + {{(j - r + 1)}^2} \le {r^2}} \right\}$,这里可通过插值拟合来对缺失像素进行补全,具体为 6 $h{'}_{{i_1},{j_1}}^k = \sum\limits_{k = 0}^{co - 1} {\frac{{{P_k}}}{{{d_k}}}} /\sum\limits_{k = 0}^{co - 1} {\frac{1}{{{d_k}}}} $ 式中,${P_0}, {P_1}, \ldots, {P_{co - 1}}$是位于圆形图像内且以$h_{i, j}^{'k} = - 1$为中心的5×5邻域内的非缺失像素,${d_0}, {d_1}, \ldots, {d_{co - 1}}$是与之对应的二次距离。式(2)—式(6)构成了本文的圆形及随机转角初始化策略,即式(1)。通过式(1),可将方形图像转换为圆形图像并添加初始随机转角。与传统基于马赛克的信息隐藏方法修改式嵌入变换参数的方法不同,本文将圆形图像直接作为秘密信息的编码表示单元,只涉及圆形图像的放置角度而不涉及对圆形图像的任意修改嵌入,因此可避免传统基于马赛克拼图的信息隐藏由于修改引发的密写异常问题,同时添加的随机转角也为特定用户提取秘密信息和进行角度认证提供安全保证,使得掌握特定密钥的用户才能滤除随机转角的影响并提取对应的认证信息。图 2是对选取的8位灰度样本图像进行圆形及随机转角初始化策略后得到的圆形图像。 图2 样本图像圆形及随机转角初始化验证图 The sample images and their corresponding initialized circle images ((a) sample images; (b) circle images)Fig 21.2结合参数映射和误差扩散的马赛克图像生成策略记$\mathit{\boldsymbol{T}} = {\left({{t_{i, j}}} \right)_{{m_0} \times {n_0}}}$为灰度掩体图像,初始化全0的灰度半色调图像$\mathit{\boldsymbol{M = }}{\left({{m_{i, j}} = 0} \right)_{{m_2} \times {n_2}}}$,且${{m_2} \times {n_2}}$满足的约束为 7 ${m_2} = {m_0}\left( {2r - 1} \right),{n_2} = {n_0}\left( {2r - 1} \right)$ 即$\mathit{\boldsymbol{M}}$最多可划分为${{m_0}{n_0}}$个$\left({2r - 1} \right)\left({2r - 1} \right)$像素的正方形网格用于放置${{m_0}{n_0}}$个半径为$r$的圆形图像。若将第1.1节圆形图像${{\mathit{\boldsymbol{H'}}}_k}, K = 0, 1, \cdots, l - 1$全部用于二值秘密比特表达,则每个${{\mathit{\boldsymbol{H'}}}_k}$所能表达的二值秘密比特数为$\left\lfloor {{{\log }_2}l} \right\rfloor $,若将二值秘密比特序列$\mathit{\boldsymbol{B = }}{\left({{b_i}} \right)_{{l_{\rm{B}}}}}, {b_i} \in \left\{ {0, 1} \right\}$放置在$\mathit{\boldsymbol{M}}$划分的$\left({2r - 1} \right) \times \left({2r - 1} \right)$正方形网格上,则所需要的正方形网格数${l_0}$需满足 8 ${l_0} = \left\lceil {{l_{\rm{B}}}/\left\lfloor {{{\log }_2}l} \right\rfloor } \right\rceil ,{l_0} {m_0}{n_0}$ 的约束。这里可通过密钥${k_{1}}$随机产生${l_{0}}$个两两不等的${m_0} \times {n_0}$范围内的坐标,来决定代表秘密信息的圆形图像在$\mathit{\boldsymbol{M}}$中的网格放置位置,从而只有提供正确的${k_1}$才能找到表示秘密信息的圆形图像。记由${k_1}$随机产生的用于隐藏秘密信息的坐标位置序列为${\mathit{\boldsymbol{T}}_0} = {\left({p_i^0} \right)_{{l_0}}}, p_i^0 = \left({{x_i}, {y_i}} \right)$,按 9 ${\mathit{\boldsymbol{B}}_{{\rm{cu}}}} = trim\left( {\mathit{\boldsymbol{B}},cu \cdot \left\lfloor {{{\log }_2}l} \right\rfloor ,\left\lfloor {{{\log }_2}l} \right\rfloor } \right)$ 可从$\mathit{\boldsymbol{B}}$中截取长度为$\left\lfloor {{{\log }_2}l} \right\rfloor $的二值秘密比特${\mathit{\boldsymbol{B}}_{{\rm{cu}}}}$,其中$cu = 0, 1, \cdots, {l_0} - 1$。式(9)中,$trim$(·)是截断函数,其中第1个参数为输入的二值比特序列,第2个参数为截取的起始索引位置,第3个参数为截取长度,在截取过程中,若剩余二值比特不足,则截取剩余全部比特。为避免${\mathit{\boldsymbol{B}}_{{\rm{cu}}}}$和圆形图像${{\mathit{\boldsymbol{H'}}}_k}$, $k = 0, 1, \cdots, l - 1$存在固定的一对一关系导致的安全隐患,按 10 $\hat k = \left( {{X_{{\rm{cu}}}} + {x_i} + {y_i} + {r_{{x_i},{y_i}}} + {x_i} \cdot {y_i} \cdot {r_{{x_i},{y_i}}}} \right)\bmod l$ 将${\mathit{\boldsymbol{B}}_{{\rm{cu}}}}$和网格坐标${p_0} = \left({{x_i}, {y_i}} \right)$与用户密钥${k_2}$绑定,来共同决定代表秘密信息的圆形图像${{\mathit{\boldsymbol{H'}}}_{\hat k}}$, $\hat k = \left\{ {0, 1, \cdots, l - 1} \right\}$。式(10)中,${X_{{\rm{cu}}}}$是${\mathit{\boldsymbol{B}}_{{\rm{cu}}}}$对应的10进制数,${r_{{x_i}, {y_i}}}$是${k_2}$生成的整数随机矩阵$\mathit{\boldsymbol{R}} = {\left({{r_{i, j}}} \right)_{{m_0} \times {n_0}}}$, ${r_{i, j}} = \left\{ {0, 1, \cdots, l - 1} \right\}$在$\left({{x_i}, {y_i}} \right)$位置的元素。由式(10)可决定网格位置$\left({{x_i}, {y_i}} \right) \in {\mathit{\boldsymbol{T}}_0}$所放置的代表秘密信息的圆形图像。若$\left({{x_i}, {y_i}} \right) \notin {\mathit{\boldsymbol{T}}_0}$,这里依然需从${{\mathit{\boldsymbol{H'}}}_k}, k = 0, 1, \cdots, l - 1$中选取最合适的圆形图像,用于对代表秘密信息的圆形图像进行掩盖,具体为 11 $\hat k = \arg \mathop {\min }\limits_{k \in \left\{ {0,1, \cdots ,l - 1} \right\}} \left| {{\rm{mean}}\left( {{{\mathit{\boldsymbol{H'}}}_k}} \right) - {t_{{x_i},{y_i}}}} \right|$ 式中,mean(${{\mathit{\boldsymbol{H'}}}_k}$)用于计算${{\mathit{\boldsymbol{H'}}}_k}$的均值,${t_{{x_i}, {y_i}}}$为灰度掩体图像$\mathit{\boldsymbol{T}}$的$\left({{x_i}, {y_i}} \right)$位置的像素。式(10)和式(11)选取的圆形图像在放置过程中都会产生偏差,为保证最终输出的$\mathit{\boldsymbol{M}}$与$\mathit{\boldsymbol{T}}$外观相似,需将放置过程中的偏差${\Delta _{{x_i}, {y_i}}}$向$\left({{x_i}, {y_i}} \right)$周围未处理的以$(u, v) \in \left({{x_i}, {y_i} + 1} \right)$,$\left({{x_i} + 1, {y_i} - 1} \right)$, $\left({{x_i} + 1, {y_i}} \right), \left({{x_i} + 1, {y_i} + 1} \right)$为起点,分辨率为$\left({2r - 1} \right)\left({2r - 1} \right)$的网格扩散。偏差${\Delta _{{x_i}, {y_i}}}$的计算式为 12 ${\Delta _{{x_i},{y_i}}} = \mathop {{\rm{mean}}}\limits_{{{\left( {i - r + 1} \right)}^2} + {{\left( {j - r + 1} \right)}^2} \le {r^2}} \left( {{{\mathit{\boldsymbol{H'}}}_{\hat k}}} \right) - {t_{{x_i},{y_i}}}$ 式中,mean为块均值函数,$\begin{array}{*{20}{c}}{{\rm{ mean }}}\\{{{(i - r + 1)}^2} + {{(j - r + 1)}^2} \le {r^2}}\end{array}$计算的是${{\mathit{\boldsymbol{H'}}}_{\hat k}}$落入${{{(i - r + 1)}^2} + {{(j - r + 1)}^2} \le {r^2}}$范围的全部像素均值。扩散的方法为 13 $\left\{ \begin{array}{l}{t_{{x_i},{y_i} + 1}} = {t_{{x_i},{y_i} + 1}} - \frac{7}{{16}}{\Delta _{{x_i},{y_i}}}\\{t_{{x_i} + 1,{y_i} - 1}} = {t_{{x_i} + 1,{y_i} - 1}} - \frac{3}{{16}}{\Delta _{{x_i},{y_i}}}\\{t_{{x_i} + 1,{y_i}}} = {t_{{x_i} + 1,{y_i}}} - \frac{5}{{16}}{\Delta _{{x_i},{y_i}}}\\{t_{{x_i} + 1,{y_i} + 1}} = {t_{{x_i} + 1,{y_i} + 1}} - \frac{1}{{16}}{\Delta _{{x_i},{y_i}}}\end{array} \right.$ 式(12)使得含密掩体$\mathit{\boldsymbol{M}}$的视觉质量与掩体图像$\mathit{\boldsymbol{T}}$相接近,而式(13)进一步将放置过程中产生的偏差向周围扩散以减少视觉损失。对圆形图像添加随机转角,原则上不会对圆形图像均值产生影响,但由于平面直角坐标和极坐标不能完全对齐,从而存在缺失像素。本文通过式(6)插值拟合,使得缺失像素与圆形图像均值趋于一致,从而使得随机添加的转角不会对圆形图像均值产生较大影响。由于转角对圆形图像均值影响较小,因此可在圆形图像初始随机转角的基础上进行二次转角,用于对提取秘密信息的正确性进行检验。采用的方法如下:1) 对索引为${\hat k}$的圆形样本图像计算$\left[ {0, n - 1} \right]$范围内的整数$i{n_{\hat k}}$,具体计算为 14 $i{n_{\hat k}} = \left( {{X_{{\rm{cu}}}} + {x_i} \cdot {y_i} + {y_i} \cdot {r_{{x_i},{y_i}}} + {x_i} \cdot {r_{{x_i},{y_i}}}} \right)\bmod n$ 式中,若$\left({{x_i}, {y_i}} \right) \notin {\mathit{\boldsymbol{T}}_0}\;$,则取${X_{{\rm{cu}}}} = 0$。2)按式(2)计算随机转角${\alpha _{i{n_{\hat k}}}}$,将${{\mathit{\boldsymbol{H'}}}_{\hat k}}$按式(1)逆时针旋转${\alpha _{i{n_{\hat k}}}}$作为${{\mathit{\boldsymbol{H''}}}_{\hat k}}$。3) 将${{\mathit{\boldsymbol{H''}}}_{\hat k}}$放置在$\mathit{\boldsymbol{M}}$上以$\left({{x_i} \cdot (2r - 1), {y_i} \cdot (2r - 1)} \right)$为起点,大小为$\left({2r - 1} \right) {\rm{ \times }} \left({2r - 1} \right)$像素的矩阵小块上。由式(14)可知,$i{n_{\hat k}}$不仅与放置的秘密信息${X_{{\rm{cu}}}}$有关,还与放置的网格坐标位置$\left({{x_i}, {y_i}} \right)$以及${k_2}$生成的随机矩阵元素${r_{{x_i}, {y_i}}}$密切相关,从而${X_{{\rm{cu}}}}$与$i{n_{\hat k}}$不存在简单固定的一对一映射关系而完全依赖于密钥。通过式(14)和式(1)可对$\mathit{\boldsymbol{M}}$上放置的每个圆形样本图像添加一个二次随机转角,而只有掌握密钥的合法用户才能获取二次随机转角并将其用于对秘密信息的正确性认证。以上策略构成了本文结合参数映射和误差扩散的马赛克图像生成策略,该策略可生成有意义的马赛克拼图,并能通过放置在不同位置的圆形图像来表达秘密信息。避免了只能生成简单质地的纹理图像;同时,本策略可以将所有含密圆形图像隐藏在一张马赛克拼图中,避免了Yuan等人(2017),Zhang等人(2018),Zheng等人(2017)和Zhou等人(2015, 2017, 2018)的方法中涉及的大量嵌密载体密集传输问题;此外,对应的含密位置由密钥产生,含密圆形图像在放置过程中无需任何参数的修改式嵌入,避免了使用修改式嵌入导致的密写异常问题,同时所提策略是由圆形图像纹理直接表达秘密信息,因此相对Hou等人(2016),Lai和Tsai(2011),Lee和Tsai(2014),刘小凯等人(2018),Zhai等人(2015)和张梦等人(2016)不耐攻击的LSB嵌入,具备较强的抗攻击鲁棒性。1.3结合质心旋转匹配和随机角度认证的秘密信息提取与认证策略将信道接收到的可能遭受攻击的马赛克图像记为${\mathit{\boldsymbol{M'}}}$。在提取秘密信息时,需定位秘密信息在马赛克图像上的隐藏位置,从中找到代表秘密信息的圆形图像,并通过圆形图像的随机转角来对提取的秘密信息进行认证。因此为提取秘密信息和对秘密信息进行认证,需准确识别代表秘密信息的圆形图像索引和圆形图像的旋转放置角度索引,即二次转角索引。对于代表秘密信息的圆形图像索引,由于代表秘密信息的圆形图像不仅添加了与用户密钥${k_0}$相关的随机初始转角,而且添加了与放置位置、秘密信息和用户密钥${k_2}$有关的二次认证转角,从而导致结合用户密钥${k_1}$提取的圆形图像与接收方实际用于比对的圆形图像存在不同的随机转角。为快速准确地识别提取到的圆形图像对应的索引,可通过质心旋转匹配将待识别的圆形图像和与之比对的圆形图像的质心统一到圆形图像圆心右侧的正半轴上,然后通过二次差异距离最小匹配找到与之对应的圆形图像索引。具体的质心旋转匹配策略为:接收方按发送方同样的方式由灰度图像${\mathit{\boldsymbol{H}}_k}$得到圆形图像${{\mathit{\boldsymbol{H'}}}_k} = {\left({h_{i, j}^{'k}} \right)_{(2r - 1) \times (2r - 1)}}$,其中,$k = 0, 1, \cdots, l - 1$。对于每个圆形图像${{\mathit{\boldsymbol{H'}}}_k}$按 15 $\begin{array}{*{20}{c}}{x_{{\rm{ma}}}^k = \left( {\sum\limits_{{{\left( {i - r + 1} \right)}^2} + {{\left( {j - r + 1} \right)}^2} \le {r^2}} {\left( {j - r} \right)} \cdot h{'}_{i,j}^k} \right)/{m_{{\rm{to}}}}}\\{y_{{\rm{ma}}}^k = \left( {\sum\limits_{{{\left( {i - r + 1} \right)}^2} + {{\left( {j - r + 1} \right)}^2} \le {r^2}} {\left( {r - i} \right)} \cdot h{'}_{i,j}^k} \right)/{m_{{\rm{to}}}}}\\{{m_{{\rm{to}}}} = \left( {\sum\limits_{{{\left( {i - r + 1} \right)}^2} + {{\left( {j - r + 1} \right)}^2} \le {r^2}} {h{'}_{i,j}^k} } \right)}\end{array}$ 计算其质心$\left({x_{{\rm{ma}}}^k, y_{{\rm{ma}}}^k} \right)$,并按 16 $\alpha _{{\rm{ma}}}^k = \arctan \left( {y_{{\rm{ma}}}^k/x_{{\rm{ma}}}^k} \right)$ 计算其几何倾角$\alpha _{{\rm{ma}}}^k \in \left({ - \frac{{\rm{ \mathsf{ π} }}}{2}, \frac{{\rm{ \mathsf{ π} }}}{2}} \right)$。其中,arctan(·)是反正切函数,用于计算$y_{{\rm{ma}}}^k/x_{{\rm{ma}}}^k$的几何倾角。式(15)采用$j - r$和$r-i$来计算$\left({x_{{\rm{ma}}}^k, y_{{\rm{ma}}}^k} \right)$,而非$j-r$和$i-r$,原因是计算机图像采用的默认坐标系是以图像左上角为坐标原点,采用向左和向下的方向为对应坐标轴的正半轴,而质心计算默认的平面直角坐标系则以向左和向上为坐标轴正半轴。因此,为保持计算结果的一致性,采用$j-r$和$r-i$来计算$\left({x_{{\rm{ma}}}^k, y_{{\rm{ma}}}^k} \right)$。将${{\mathit{\boldsymbol{H'}}}_k}$, $r$, $2{\rm{ \mathsf{ π} - }}\alpha _{{\rm{ma}}}^k$代入式(1),可将${{\mathit{\boldsymbol{H'}}}_k}$的质心统一到圆心右侧的正半轴上。记对应的圆形图像为${{\mathit{\boldsymbol{H'''}}}_k}$,可将式(15)、(16)和式(1)对应的质心旋转策略简记为 17 ${{\mathit{\boldsymbol{H'''}}}_k} = Ro{t_{{\rm{ma}}}}\left( {{{\mathit{\boldsymbol{H'}}}_k}} \right)$ 记${\mathit{\boldsymbol{M'}}}$中截取的分辨率为$\left({2r - 1} \right){\rm{ \times }}\left({2r - 1} \right)$像素的含密圆形图像为${\mathit{\boldsymbol{M}}_t}$,将其代入式(17),并将其质心统一到圆心右侧的正半轴上,记为${{\mathit{\boldsymbol{M'}}}_t}$。通过计算${{\mathit{\boldsymbol{M'}}}_t}$和${{\mathit{\boldsymbol{H'''}}}_k}, k = 0, 1, \cdots, l - 1$的最小二次差异距离可找到${\mathit{\boldsymbol{M}}_t}$对应的索引${\hat k}$,具体为 18 $\hat k = \arg \mathop {\min }\limits_{k = 0,1, \cdots ,l - 1} \left\| {{{\mathit{\boldsymbol{M'}}}_t} - {{\mathit{\boldsymbol{H'''}}}_k}} \right\|_2^2$ 对于${\mathit{\boldsymbol{M}}_t}$,可通过下面方式获取, 即由密钥${k_1}$生成代表秘密信息的圆形图像在掩体图像${\mathit{\boldsymbol{M'}}}$中的嵌入位置${\mathit{\boldsymbol{T}}_0}$,对于每个位置$\left({x, y} \right) \in {\mathit{\boldsymbol{T}}_0}$,按 19 $\begin{array}{*{20}{c}}{u = x \cdot \left( {2r - 1} \right)}\\{v = y \cdot \left( {2r - 1} \right)}\end{array}$ 计算$\left({x, y} \right)$在${\mathit{\boldsymbol{M'}}}$中的坐标位置$\left({u, v} \right)$,然后以$\left({u, v} \right)$为起点,从${\mathit{\boldsymbol{M'}}}$中截取$\left({2r - 1} \right){\rm{ \times }} \left({2r - 1} \right)$像素的含密圆形图像作为${\mathit{\boldsymbol{M}}_t}$。对于代表秘密信息的圆形图像的旋转放置角度索引,由于代表秘密信息的圆形图像在放置过程中,仅涉及$n$个转角${\alpha _k} = k{\rm{ \times }}2{\rm{ \mathsf{ π} /}}n, k = 0, 1, \cdots, n - 1$,这里可按与式(18)类似的方法,将${\mathit{\boldsymbol{M}}_t}$依次旋转$n$个转角,记为$\mathit{\boldsymbol{M}}_t^k, k = 0, 1, \cdots, n - 1$,然后从中找到与${{\mathit{\boldsymbol{H'}}}_{\hat k}}$二次差异距离最小的,从而得到其对应的旋转放置角度索引,即${\mathit{\boldsymbol{M}}_t}$的二次转角索引$i{n_{{\rm{re}}}}$,具体为 20 $i{n_{{\rm{re}}}} = \arg \mathop {\min }\limits_{k = 0,1, \cdots ,l - 1} \left\| {\mathit{\boldsymbol{M}}_t^k - {{\mathit{\boldsymbol{H'}}}_{\hat k}}} \right\|_2^2$ 式中,准确获取$i{n_{{\rm{re}}}}$的前提是获取准确的${{\mathit{\boldsymbol{H'}}}_{\hat k}}$,而${{\mathit{\boldsymbol{H'}}}_{\hat k}}$不仅涉及${\mathit{\boldsymbol{H}}_{\hat k}}$,还涉及${\mathit{\boldsymbol{H}}_{\hat k}}$的初始转角,这个初始转角与用户密钥${k_0}$有关,从而只有掌握用户密钥${k_0}$的合法用户才能滤除初始转角的影响。得到了代表秘密信息的圆形图像${\mathit{\boldsymbol{M}}_t}$的索引${\hat k}$和${\mathit{\boldsymbol{M}}_t}$的二次转角索引$i{n_{{\rm{re}}}}$,可按 21 $\begin{array}{*{20}{c}}{{X_{{\rm{cu}}}} = \left( {\hat k + \left( {l - 1} \right) \cdot } \right.}\\{\left. {\left( {x + y + {r_{x,y}} + x \cdot y \cdot {r_{x,y}}} \right)} \right)\bmod l}\end{array}$ 提取出秘密信息${X_{{\rm{cu}}}}$,然后利用式(14)生成的$i{n_{\hat k}}$和$i{n_{{\rm{re}}}}$是否一致来判断提取的${X_{{\rm{cu}}}}$是否准确。可分别通过0和1来表示认证是否准确,将其记为 22 $a = {\rm{Authen}}\left( {i{n_{{\rm{re}}}},{X_{{\rm{cu}}}},\left( {{x_i},{y_i}} \right),{r_{{x_i}{y_i}}}} \right),a \in \left\{ {0,1} \right\}$ 式(21)和式(14)均涉及随机扰动${r_{x, y}}$,该随机扰动是由用户密钥${k_2}$生成,而对应的坐标位置由用户密钥${k_1}$生成,从而保证只有掌握合法密钥${k_1}$和${k_2}$的用户才能提取秘密信息和参与认证,而认证时只有掌握用户密钥${k_0}$的合法用户才能滤除初始转角的影响。将所有的${X_{{\rm{cu}}}}$转化为$\left\lfloor {{{\log }_2}l} \right\rfloor $位2进制序列${\mathit{\boldsymbol{B}}_{{\rm{cu}}}}$并进行连接,可获得对应的秘密信息序列${\mathit{\boldsymbol{B'}}}$,将所有的$a$构成序列,可得到秘密信息的认证序列$\mathit{\boldsymbol{A}}$。以上策略即构成了本文质心旋转匹配和随机角度认证的秘密信息提取与认证策略。其中,质心旋转匹配用于含密圆形图像与样本图像的快速匹配,以及确定样本图像索引,并通过用户密钥提取秘密信息;含密圆形图像的随机转角认证用于对提取秘密信息的准确性进行检验,同时与用户密钥绑定的认证策略保证了只有由掌握密钥的用户才能进行认证,从而保证了认证策略的安全性。与Hou等人(2016),Lai和Tsai(2011),Lee和Tsai(2014),Lin和Tsai(2004),刘小凯等人(2018),Zhai等人(2015)和张梦等人(2016)的方法缺少认证策略相比,本文方法不仅具备良好的认证能力且能有效地保证认证策略的安全性。本文生成的含密掩体为非自然载体,原始掩体不在信道中传输,因而可抵抗传统基于自然图像统计的密写分析方法。2完整算法结合第1节完成的工作,可给出如下完整的算法1和算法2。算法1结合块旋转和马赛克拼图的生成式伪装算法。1) 输入密钥${k_{0}}$, ${k_{1}}$, ${k_{2}}$,分辨率为${m_0} \times {n_0}$像素,灰度掩体图像$\;\mathit{\boldsymbol{T}} = {\left({{t_{i, j}}} \right)_{{m_0} \times {n_0}}}, {t_{i, j}} \in \{ 0, 1, \cdots, 255\} $,秘密比特序列$\mathit{\boldsymbol{B = }}\left({{b_i}} \right){l_{\rm{B}}}$,两两不等分辨率为$\left({2r - 1} \right){\rm{ \times }}\left({2r - 1} \right)$像素的灰度图像${\mathit{\boldsymbol{H}}_k}, k = 0, 1, \cdots, n - 1$,其中${m_0}{n_0} {l_0}, {l_0} = \left\lceil {{l_{\rm{B}}}/{{\log }_2}l} \right\rceil $。2) 由${k_0}$产生随机整数$i{n_k}, k = 0, 1, \cdots, l - 1$,按式(2)将其映射为$\alpha _{{\rm{in}}}^k, k = 0, 1, \cdots, l - 1$,并按式(1)将${\mathit{\boldsymbol{H}}_k}$转化为${{\mathit{\boldsymbol{H'}}}_k}, k = 0, 1, \cdots, l - 1$。3) 由${k_1}$生成随机整数坐标序列${\mathit{\boldsymbol{T}}_0}$,${k_2}$生成随机整数矩阵$\mathit{\boldsymbol{R}} = \left({{r_{i, j}}} \right){m_0}{\rm{ \times }}{n_0}$,初始化掩体图像$\mathit{\boldsymbol{M}} = {\left(0 \right)_{{m_2}{\rm{ \times }}{n_2}}}$。循环执行步骤4)~6),直至枚举完${m_0} \times {n_0}$范围内的全部坐标$\left({x, y} \right)$。4) 若$\left({x, y} \right) \in {\mathit{\boldsymbol{T}}_0}$,按式(9)截取${\mathit{\boldsymbol{B}}_{{\rm{cu}}}}$作为${X_{{\rm{cu}}}}$,将${X_{{\rm{cu}}}}$, $\left({x, y} \right)$, ${r_{x, y}}$代入式(10)生成${\hat k}$,通过式(14)计算$i{n_{\hat k}}$,通过式(2)计算${\alpha _{{\rm{i}}{{\rm{n}}_{\hat k}}}}$,将${{\mathit{\boldsymbol{H'}}}_{\hat k}}$按式(1)旋转${\alpha _{{\rm{i}}{{\rm{n}}_{\hat k}}}}$后,放入$\mathit{\boldsymbol{M}}$中对应为$\left({x, y} \right)$的网格位置上。5) 若$\left({x, y} \right) \notin {\mathit{\boldsymbol{T}}_0}$,按式(11)选取${{\mathit{\boldsymbol{H'}}}_{\hat k}}$,通过式(14)计算$i{n_{\hat k}}$,通过式(2)计算${\alpha _{i{n_{\hat k}}}}$,然后按式(1)对${{\mathit{\boldsymbol{H'}}}_{\hat k}}$赋予随机转角${\alpha _{i{n_{\hat k}}}}$,并将${{\mathit{\boldsymbol{H'}}}_{\hat k}}$放置在$\mathit{\boldsymbol{M}}$中对应为$\left({x, y} \right)$的网格位置上。6) 按式(12)计算${{\mathit{\boldsymbol{H'}}}_{\hat k}}$放入后的偏差${\Delta _{{x_i}, {y_i}}}$,按式(13)扩散。7) 输出$\mathit{\boldsymbol{M}}$。与算法1对应的恢复算法记为算法2。算法2结合块旋转和马赛克拼图的秘密信息恢复算法1) 输入密钥${k_{0}}$, ${k_{1}}$, ${k_{2}}$,含密马赛克图像${\mathit{\boldsymbol{M'}}}$,两两不等分辨率为$\left({2r - 1} \right){\rm{ \times }}\left({2r - 1} \right)$像素的灰度图像${\mathit{\boldsymbol{H}}_k}, k = 0, 1, \cdots, l - 1$和秘密信息占用的网格数量${l_0}$。2) 由${k_0}$产生随机整数$i{n_k}, k = 0, 1, \cdots, l - 1$,按式(2)将其映射为$\alpha _{{\rm{in}}}^k, k = 0, 1, \cdots, l - 1$,由式(1)将${\mathit{\boldsymbol{H}}_k}$转化为${{\mathit{\boldsymbol{H'}}}_k}$,并按式(17)得到${\mathit{\boldsymbol{H'''}}}$,其中$k = 0, 1, \cdots, l - 1$。3) 由${k_1}$生成${\mathit{\boldsymbol{T}}_0} = {\left({p_i^0} \right)_{{l_0}}}$,利用${k_2}$生成$\mathit{\boldsymbol{R}} = {\left({{r_{i, j}}} \right)_{{m_0}{\rm{ \times }}{n_0}}}$,初始化恢复信息序列$\mathit{\boldsymbol{B'}} = \phi $和认证序列$\mathit{\boldsymbol{A}} = \phi $。4) 依次枚举$p_i^0 = \left({{x_i}, {y_i}} \right) \in {\mathit{\boldsymbol{T}}_0}$,执行步骤5)~7)。5) 按式(19)截取含密圆形图像${\mathit{\boldsymbol{M}}_t}$,并通过式(17)将${\mathit{\boldsymbol{M}}_t}$旋转为${{\mathit{\boldsymbol{M'}}}_t}$。6) 按式(18)获取${{\mathit{\boldsymbol{M'}}}_t}$对应的索引${\hat k}$,按式(20)提取二次转角索引$i{n_{{\rm{re}}}}$,按式(21)提取${X_{{\rm{cu}}}}$,将其转化为${\mathit{\boldsymbol{B}}_{{\rm{cu}}}}$并添加至${\mathit{\boldsymbol{B'}}}$中。7) 将${\mathit{\boldsymbol{M}}_t}$,${{\mathit{\boldsymbol{H'}}}_{\hat k}}$,${X_{{\rm{cu}}}}$,$\left({{x_i}, {y_i}} \right)$,${r_{{x_i}, {y_i}}}$代入式(22)中生成认证信息$a$并添加至$\mathit{\boldsymbol{A}}$中。8) 输出${\mathit{\boldsymbol{B'}}}$,$\mathit{\boldsymbol{A}}$。与现有的基于搜索的无载体信息隐藏算法相比,以上方法可将构成图像马赛克的基本组成单元圆形图像作为编码单元来表达秘密信息,通过生成单幅马赛克图像来传递秘密信息,避免了搜索式无载体信息隐藏存在的单载体隐藏容量低和涉及大量载体的信道密集传输等问题。与生成简单质地纹理图像的纹理合成式无载体信息隐藏相比,以上方法可直接生成与给定掩体图像外观相似的有意义马赛克图像。与传统修改式嵌入的马赛克拼图信息隐藏方法相比,以上方法仅涉及圆形图像的放置角度而不涉及任何以嵌入为目的的修改,因此可避免传统马赛克信息隐藏由于修改引发的密写异常问题。所添加的随机转角认证也为特定用户提取秘密信息和进行角度认证提供了必要的安全保证,避免了Hou等人(2016),Lai和Tsai(2011),Lee和Tsai(2014),刘小凯等人(2018),Zhai等人(2015)和张梦等人(2016)的方法因不具备提取信息的认证能力,从而无法对秘密信息的真实性进行检验的缺陷。由于所提方法构造的认证策略是基于圆形图像的放置角度,并且是通过有意义的圆形图像纹理结合用户密钥和放置位置来表达秘密信息,而非Hou等人(2016),Lai和Tsai(2011),Lee和Tsai(2014),刘小凯等人(2018),Zhai等人(2015)和张梦等人(2016)采用的基于LSB的嵌入策略,从而在遭受攻击时,所表达的秘密信息和放置角度可容易地通过质心旋转匹配和基于密钥的随机转角策略来提取和识别,从而不仅具备较强的抗攻击鲁棒性,也具备较好的认证精度;同时所提策略完全依赖于用户密钥,原始掩体不在信道中传输且无法获取,生成的含密掩体为非自然图像载体,可抵抗传统基于自然图像统计特性的密写分析方法,具有较高的安全性。3实验实验测试环境为Windows 10系统,CPU为Intel(R) Core(TM) i5-6600,主频为3.31 GHz,内存为8.00 GB,实验编程语言为JAVA jdk 1.8.0_65。实验选取4幅128×128像素的灰度图像man、woman、cameraman和Lena作为掩体图像,1幅分辨率为300×60像素的二值秘密信息图像(如图 3所示),以及32幅分辨率为65×65像素的灰度样本图像(如图 4所示),这些灰度样本图像将进一步转换为圆形图像,用于秘密信息的表达和形成含密马赛克图像。 图3 实验测试图像 The experimental images ((a) man; (b) woman; (c) cameraman; (d) Lena; (e) secret bit information)Fig 3 图4 实验用到的样本图像 The experimental sample imagesFig 4实验采用峰值信噪比(PSNR)来验证含密马赛克图像与攻击后马赛克图像之间的差异度,其具体计算为 23 $PSNR = 10\log \frac{{{{255}^2}}}{{MSE}}$ 式中,$MSE$为攻击前后含密马赛克图像上的圆形图像均值的均方误差(mean square error),其具体计算为 24 $MSE = \frac{{\sum\limits_{i = 0}^{m - 1} {\sum\limits_{j = 0}^{n - 1} {{{\left( {{p_{i,j}} - {{p'}_{i,j}}} \right)}^2}} } }}{{m \times n}}$ 式中,${p_{i, j}}, {{p'}_{i, j}}$为待比较2个圆形图像像素均值,$m{\rm{ \times }}n$为对应马赛克图像中的圆形图像个数。由于在实验中,每个圆形图像可隐藏1个5 bit秘密信息,即32进制数,因此所提方法使用误码率(ER)衡量恢复的32进制序列与原32进制序列之间的差异,其具体计算为 25 $E = \frac{{{l_{{\rm{er}}}}}}{{{l_{{\rm{to}}}}}} \times 100\% $ 式中,$E$是误码率,${l_{{\rm{er}}}}$是发生错误的32进制数的个数,${l_{{\rm{to}}}}$是总32进制数的个数。使用认证成功率(ASR)衡量所提策略的认证成功概率,其具体计算为 26 $A = \frac{{{l_{{\rm{su}}}}}}{{{l_{{\rm{TO}}}}}} \times 100\% $ 式中,$A$是认证成功率,${l_{{\rm{su}}}}$为认证成功的数量,${l_{{\rm{TO}}}}$是总认证数量。使用攻击占比(AR)来标记遭受攻击的圆形图像占比,其具体计算为 27 $a = \frac{{l_{{\rm{at}}}^{\rm{C}}}}{{l_{{\rm{to}}}^{\rm{C}}}} \times 100\% $ 式中,$a$是攻击占比,$l_{{\rm{to}}}^{\rm{C}}$为马赛克图像中含密圆形图像的总数,$l_{{\rm{at}}}^{\rm{C}}$为遭受攻击的含密圆形图像数量。3.1正确性实验为验证所提策略的正确性,以图 3(e)为秘密信息,图 3(a)—(d)为掩体图像,选取图 4作为样本图像,按不同密钥参数(线性同余映射的随机数种子)由算法1生成含密马赛克图像,然后按算法2从含密马赛克图像中提取秘密信息。其中,图 5是含密马赛克图像,图 6是提取的二值秘密信息和与之对应的认证图,表 1给出了实验参数。由于图 5(a)—(d)对应的含密马赛克图像分辨率高达8 320×8 320像素,无法显示局部细节,通过图 5(e)—(h)给出5(a)—(d)的局部细节。对于图 6的认证图,约定黑和白分别表示认证通过和失败,认证图的分辨率为60×60像素。 图5 正确性实验的含密马赛克图像和局部细节图像 The generated stego mosaic images and their parts in the correctness verification experiment ((a)—(d) stego mosaic images 1~4; (e)—(h) stego mosaic image parts 1~4)Fig 5 图6 正确性实验恢复信息以及认证图 The recovered information and their authentication images in the correctness verification experiment ((a)—(d) recovered secret 1~4; (e)—(h) authentication images 1~4)Fig 6 表1正确性验证实验参数掩体图像密钥马赛克图像恢复信息认证图测试结果 参数值$E$/%$A$/% 图 3(a)$k$14图 5(a)图 6(a)图 6(e)0100$k$27$k$32图 3(b)$k$19图 5(b)图 6(b)图 6(f)0100$k$25$k$33图 3(c)$k$15图 5(c)图 6(c)图 6(g)0100$k$21$k$36图 3(d)$k$111图 5(d)图 6(d)图 6(h)0100$k$215$k$314Correctness verification experiment variablesTable 1由表 1、图 5和图 6可以看出,所提方法可生成有意义含密马赛克图像,并能通过正确密钥提取秘密信息,且提取秘密信息相对于原秘密信息的$ER$为0%,秘密信息完整恢复,正确性得以验证。3.2密钥依赖性实验为验证所提策略对密钥的依赖性,对表 1的密钥参数进行修改,然后按算法2从含密马赛克图像图 5(a)—(d)中恢复出秘密信息。表 2给出了密钥依赖性实验数据,对应的恢复信息和认证图如图 7所示。表2密钥依赖性实验参数马赛克图像密钥原值密钥修改值重构密图认证图测试结果 $k$0$k$1$k$2$k$0$k$1$k$2$E$/%$A$/% 图 5(a)47225--图 7(a)图 7(i)047.28图 5(a)4723--图 7(b)图 7(j)045.46图 5(b)953-15-图 7(c)图 7(k)96.9084.60图 5(b)953-4-图 7(d)图 7(l)96.9784.56图 5(c)516--13图 7(e)图 7(m)83.0083.59图 5(c)516--4图 7(f)图 7(n)84.5583.92图 5(d)11151410189图 7(g)图 7(o)97.1986.76图 5(d)111514351图 7(h)图 7(p)97.2986.65Key dependency verification experiment variablesTable 2 “-”表示未修改。 图7 密钥依赖性实验恢复信息及认证图 The recovered secrets and their authentication images in the key dependency verification experiment ((a)—(h) recovered secret 1~8; (i)—(p) authentication images 1~8)Fig 7表 2中前两组数据误码率为0,ASR低于50%,原因是:${k_0}$是通过旋转转角对放置的圆形图像所表达的秘密信息进行角度认证,因此当${k_0}$发生错误时,会导致认证策略失效,从而影响认证的准确度。${k_0}$和圆形图像所表示的秘密信息无关,从而不会对秘密信息的提取产生任何影响。从表 2和图 7实验结果可看出,只有提供正确的密钥才能获取正确的秘密信息和认证信息,而错误的密钥参数将无法提取秘密信息或对其进行正确认证。3.3抗攻击与认证实验为验证本文方法的抗攻击性能和认证精度,分别对正确性实验中生成的含密马赛克图像进行下列攻击:1)JPEG压缩:对选中的含密马赛克图像进行不同质量因子的JPEG压缩;2)加噪攻击:对选中的马赛克图像添加不同强度的随机噪声;3)剪切攻击:对选中的马赛克图像进行不同占比的剪切;4)替换攻击:将选中的马赛克图像中的部分含密圆形图像替换为其他圆形图像;5)转角攻击:将选中的马赛克图像中的部分含密圆形图像施加随机转角扰动。3.3.1抗JPEG压缩实验为验证本文方法抗JPEG的压缩性能,对图 5(b)和图 5(c)进行不同质量因子的JPEG压缩,并利用正确密钥按算法2提取秘密信息,表 3给出了抗JPEG压缩的实验参数,图 8为对应的压缩后含密马赛克图像,对应的恢复信息和认证图如图 9所示。表3抗JPEG压缩实验参数马赛克图像质量因子压缩后图像重构密图认证图测试结果 $PSNR$/dB$E$/%$A$/% 图 5(b)50图 8(a)图 9(a)图 9(e)27.3910100图 5(b)80图 8(b)图 9(b)图 9(f)32.6880100图 5(c)50图 8(c)图 9(c)图 9(g)28.2470100图 5(c)80图 8(d)图 9(d)图 9(h)33.1840100Anti-JPEG verification experiment variablesTable 3 图8 JPEG压缩攻击后的含密马赛克图像 Mosaic images with JPEG compressed ((a)—(d) JPEG compressed images 1~4)Fig 8 图9 JPEG压缩实验恢复信息及认证图 The recovered secrets and their authentication images in anti-JPEG verification experiment ((a)—(d) recovered secret 1~4; (e)—(h) authentication images 1~4)Fig 9由表 3、图 8和图 9可看出,尽管经历较大质量因子的JPEG压缩攻击,按算法2提取出的恢复信息与原秘密信息的ER依然为0%,ASR为100%,表明所提方法具备良好的抗JPEG压缩性能并能对恢复的秘密信息进行正确性认证。3.3.2抗加噪攻击实验为验证本文方法抵抗随机噪声的性能,对图 5(c)和图 5(d)添加不同强度的随机噪声,并利用正确密钥按算法2提取秘密信息。表 4给出了加噪攻击的实验参数,对应的攻击后含密马赛克图像如图 10所示,图 11是对应的恢复信息和认证图。表4抗加噪攻击实验参数马赛克图像噪声强度/%加噪后图像重构密图认证图测试结果 $PSNR$/dB$E$/%$A$/% 图 5(c)8图 10(a)图 11(a)图 11(e)15.2770.30100图 5(c)20图 10(b)图 11(b)图 11(f)11.5633.57100图 5(d)8图 10(c)图 11(c)图 11(g)15.3840.28100图 5(d)20图 10(d)图 11(d)图 11(h)12.0153.96100Anti-noise verification experiment variablesTable 4 图10 加噪攻击后的含密马赛克图像 Mosaic images with noise ((a)—(d) noise attacked images 1~4)Fig 10 图11 加噪攻击实验恢复信息及认证图 The recovered secrets and their authentication images in anti-noise verification experiment ((a)—(d) recovered secret 1~4; (e)—(h) authentication images 1~4)Fig 11 从表 4、图 10和图 11的实验结果可看出,尽管遭受到不同比例的噪声攻击,本文方法提取的秘密信息与原信息的ER低于5%,表明本文方法可抵抗噪声攻击;由ASR为100%知,本文方法依然可对恢复的秘密信息进行高效认证。3.3.3抗剪切攻击实验为验证本文方法抵抗剪切攻击的性能,对图 5(a)和图 5(b)进行不同占比的剪切攻击,并利用正确密钥按算法2进行秘密信息提取。表 5给出了抗剪切攻击的实验数据,与之对应的剪切攻击后的马赛克图像如图 12所示,对应的恢复信息和认证图如图 13所示。表5抗剪切攻击实验参数马赛克图像剪切占比/%剪切后图像重构密图认证图测试结果 $PSNR$/dB$E$/%$A$/%图 5(a)20图 12(a)图 13(a)图 13(e)13.59518.2990.39图 5(a)40图 12(b)图 13(b)图 13(f)10.44838.9790.16图 5(b)20图 12(c)图 13(c)图 13(g)13.24919.7891.11图 5(b)40图 12(d)图 13(d)图 13(h)10.44439.4090.83Anti-cut verification experiment variablesTable 5 图12 剪切攻击后含密马赛克图像 Mosaic images with cropping ((a)—(d) cropping attacked images 1~4)Fig 12 图13 剪切攻击实验恢复信息及认证图 The recovered secrets and their authentication images in anti-cut verification experiment ((a)—(d) recovered secret 1~4; (e)—(h) authentication images 1~4)Fig 13由表 5、图 12和图 13的实验数据可看出,对含密马赛克图像进行剪切攻击尽管会降低秘密信息的恢复质量,但本文方法的ER和剪切占比趋于一致,ASR始终高于90%,说明本文方法对剪切攻击具有较高的认证准度。3.3.4抗替换攻击实验为验证本文方法抵抗替换攻击的性能,将图 5(c)和图 5(d)中不同数量的圆形图像替换为其他圆形图像并赋予随机角度。然后由正确密钥按算法2提取秘密信息。表 6给出了替换攻击的实验数据,图 14是经替换攻击的马赛克图像,与之对应的恢复信息和认证图如图 15所示。表6抗替换攻击实验参数马赛克图像替换占比/%替换后图像重构密图认证图测试结果 $PSNR$/dB$E$/%$A$/% 图 5(c)20图 14(a)图 15(a)图 15(e)16.17819.9790.60图 5(c)40图 14(b)图 15(b)图 15(f)13.14938.7590.86图 5(d)20图 14(c)图 15(c)图 15(g)16.08819.2492.39图 5(d)40图 14(d)图 15(d)图 15(h)13.19738.5392.59Anti-replace verification experiment variablesTable 6 图14 替换攻击后的含密马赛克图像 Mosaic images with replace attack ((a)—(d)replacing attacked images 1~4)Fig 14 图15 替换攻击实验恢复信息及认证图 The recovered secrets and their authentication images in anti-replacement verification experiment ((a)—(d) recovered secret 1~4; (e)—(h) authentication images 1~4)Fig 15由表 6、图 14和图 15的实验数据可看出,尽管替换攻击会导致秘密信息遭到破坏,但本文方法的ER和替换占比趋于一致,ASR始终高于90%,说明所提方法可识别替换攻击,同时具备较高的认证准度。3.3.5抗转角攻击实验为验证本文方法抵抗转角攻击的性能,对图 5(a)和图 5(b)中的部分含密圆形图像施加攻击参数相同的随机转角扰动,然后由正确密钥按算法2提取秘密信息。表 7给出了转角攻击的实验数据,图 16是经转角攻击的马赛克图像,对应的恢复信息和认证图如图 17所示。表7抗转角攻击实验参数马赛克图像转角占比/%转角后图像重构密图认证图测试结果 $PSNR$/dB$E$/%$A$/%图 5(a)20图 16(a)图 17(a)图 17(e)26.4760100图 5(a)40图 16(b)图 17(b)图 17(f)22.4990100图 5(b)20图 16(c)图 17(c)图 17(g)26.4460100图 5(b)40图 16(d)图 17(d)图 17(h)23.4920100Anti-rotation verification experiment variablesTable 7 图16 转角度攻击后的含密马赛克图像 Mosaic images with rotation attack ((a)—(d)rotation attacked images 1~4)Fig 16 图17 转角攻击实验恢复信息及认证图 The recovered secrets and their authentication images in anti-rotation verification experiment ((a)—(d) recovered secret 1~4; (e)—(h) authentication images 1~4)Fig 17由表 7、图 16和图 17可以看出,本文方法可以很好地抵抗转角攻击。尽管施加了不同转角占比的攻击,提取秘密信息的ER始终为0,ASR始终为100%,说明借助圆形图像所表达的秘密信息可准确提取,并且任何转角攻击所导致的随机转角变化均可被本文的认证策略准确识别,从而具有非常高的认证精度。3.4与传统文献的对比传统基于搜索的无载体信息隐藏主要通过检索数据库中包含指定秘密矢量的自然无修改载体来传递秘密信息。由于图像和文本等自然载体对与之不相关的秘密信息的表达能力十分有限,导致这类方法单载体嵌密容量极低,涉及大量载体在信道中密集传输,从而容易诱发攻击,导致传输的秘密信息遭受破坏。同时这类方法为找到合适的自然载体,需构建大数据库。随着数据库文本和图像信息表现能力的增强,需搜索的数据量也呈几何级数增加,即使借助倒排索引,搜索、存储和维护也将是一个沉重的负担。表 8给出了Yuan等人(2017),Zhang等人(2018),Zheng等人(2017)和Zhou等人(2015, 2017)的方法中公开的实验数据,由于Zhou等人(2018)的方法利用发送图像的图像小块来重构密图,而图像块的大小未知,同时未给出数据库中具体样本数量,因而表 8未列出其相关数据。表8搜索无载体信息隐藏实验数据方法单载体嵌密容量/B样本图像数量 Zhou等人(2015)1-Yuan等人(2017)1-Zhou等人(2017)2.52 000万Zhang等人(2018)M/8-Zheng等人(2017)2.252 000Search-based coverless information hiding dataTable 8 “-”代表该数据未公开。由表 8可知,Yuan等人(2017),Zhang等人(2018),Zheng等人(2017)和Zhou等人(2015, 2017)方法中的单载体嵌密容量较低,而对应数据库则较为庞大,其中Zheng等人(2017)方法中的数据库样本数量尽管相对较少,但需利用修改式嵌密的方法将参与信息重构的边信息嵌入至额外载体中,违背了无载体信息隐藏的基本原则。与传统基于搜索的无载体信息隐藏方法相比,本文所提方法通过圆形图像的索引来表达秘密信息,以本文实验数据为例,一个圆形图像可隐藏5 bit信息,而对应的样本图像集合中只有32幅图像,在提升嵌密容量的同时避免了Yuan等人(2017),Zhang等人(2018),Zheng等人(2017)和Zhou等人(2015, 2017, 2018)方法中存在的高昂数据库创建与检索代价;此外,本文方法通过结合参数映射和误差扩散的马赛克图像生成策略将含密圆形图像放入对应位置并生成一张含密马赛克图像,避免了大量载体的信道密集传输。传统基于纹理合成的无载体信息隐藏将给定的样例纹理划分为纹理小块,并建立纹理小块与秘密信息之间的映射关系,通过样例纹理合成来生成与之相似的含密纹理。但这类方法只能生成简单质地的非自然纹理图像。与传统基于纹理合成的无载体信息隐藏方法相比,本文方法则是利用图像马赛克这一特殊、有意义图像作为载体图像,避免了无意义纹理图像的产生。传统基于马赛克拼图的信息隐藏方法的本质是修改式嵌密方法,难免会在掩体图像中遗留下修改痕迹,且Hou等人(2016),Lai和Tsai(2011),Lee和Tsai(2014),Lin和Tsai(2004),刘小凯等人(2018),Zhai等人(2015)和张梦等人(2016)的方法不具备提取信息的认证能力,从而无法对秘密信息的真实性进行检验。另外这类方法为提高嵌密容量,通常采用的是对攻击较为敏感的基于LSB的嵌入策略,从而在遭受攻击时嵌入的信息容易丢失。与传统基于马赛克拼图的信息隐藏方法相比,本文方法是通过有意义的圆形图像纹理结合用户密钥和放置位置来表达秘密信息,所构造的认证策略是基于圆形图像的放置角度的认证策略,从而在遭受攻击时,所表达的秘密信息和放置角度不容易丢失,可通过质心旋转匹配和基于密钥的随机转角策略来提取和识别,不仅具备较强的抗攻击鲁棒性,也具备较好的认证精度,同时所提策略完全依赖于用户密钥,具有较高的安全性。4结论传统基于搜索的无载体信息隐藏方法单载体容量低且涉及大量载体在信道中密集传输;基于纹理合成的无载体信息隐藏方法只能生成简单质地的非自然纹理图像;传统基于马赛克拼图的信息隐藏方法尽管可生成有意义图像,但需借助修改式嵌入的方式嵌入变换参数,难免会遗留下修改痕迹从而无法躲避密写分析者的检验。针对以上问题,本文给出了一种基于块旋转和马赛克拼图的生成式伪装方法,采用参数映射方法将二值秘密信息比特串借助样本图像进行表达。本文方法首先将多个灰度图像转换为具有伪随机转角的圆形图像,利用与密钥和位置有关的参数映射方法将所选圆形图像放置在由密钥生成的二值秘密信息比特位串在掩体图像中的隐藏位置中,并对圆形图像添加与密钥、位置和秘密信息有关的二次随机转角,以便在提取过程中对秘密信息的正确性进行认证。对于非隐藏位置则通过选择与掩体图像中对应位置像素点最接近的圆形图像以形成掩盖,最后通过误差扩散将放置过程中产生的偏差传递掩体周围未处理的像素,从而生成马赛克图像。在提取过程中,可通过质心旋转匹配从马赛克图像中提取秘密信息比特串并通过随机转角认证策略对其进行认证。与马赛克拼图的信息隐藏方法相比,所提策略仅通过随机放置位置的圆形图像来表达秘密信息而不涉及对圆形图像的任意修改式嵌入,且通过质心旋转匹配和随机转角认证不仅具有较好的抗攻击容忍能力和认证精度,还具备较高的安全性。本文方法嵌密和提取过程完全依赖于密钥。与纹理合成的无载体信息隐藏方法相比,本文方法可生成有意义含密掩体图像。与基于搜索的无载体信息隐藏方法相比,本文方法嵌密容量高,避免了载体的信道密集传输。但本文生成马赛克图像分辨率过大,且由于马赛克拼图只能依据给定的样本图像来逼近掩体图像,其视觉质量如何有效提升还有待进一步研究。
使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,
确定继续浏览么?
复制成功,请在其他浏览器进行阅读