数字图像的可逆数据隐藏(Reversible Data Hiding,RDH)技术可将秘密数据隐秘地嵌入到载体图像中,并在接收端无失真地恢复载体图像和秘密数据。随着人们对数据安全及个人隐私重视程度的逐渐提高,数字图像在传输前通常需要加密。因此,加密图像可逆数据隐藏(Reversible Data Hiding in Encrypted Images,RDH-EI)技术应运而生,并受到国内外学者的广泛关注,成为数据隐藏技术的重要分支。现有的RDH-EI算法主要可分为加密前预留空间(Vacating Room Before Encryption,VRBE)和加密后腾出空间(Vacating Room After Encryption,VRAE)两类。
VRBE方法通过图像加密前的预处理预留嵌入空间。文献[1]使用传统RDH算法,将图像中部分像素的最低有效位(Least Significant Bit,LSB)嵌入其余像素以获取嵌入空间。文献[2]通过预测误差直方图平移方法预留嵌入空间。文献[3]使用稀疏编码方法对图像进行压缩获得隐藏空间。但是,此类方法均要求图像所有者对原始图像进行除加密以外的所有操作,实用性较差。VRAE方法更具实际操作性,获得了研究人员的广泛关注。文献[4]使用流加密方法加密图像,通过翻转图像块内一半像素的3个最低有效位并将其嵌入秘密信息。文献[5]引入边匹配机制,提高了信息提取操作的精确度。文献[6]优化了波动评估函数。文献[7-8]调整最低有效位的翻转方式。由于无法做到无失真恢复原始图像,因此以上方法并不是完全可逆的,并且算法必须在明文域内进行信息提取操作。为解决上述问题,文献[9]提出一种可分离的RDH-EI算法,即可在加密域内完成信息提取操作。文献[10]改进了加密像素的压缩方法。文献[11]提出将加密图像像素分为三组并分别嵌入秘密信息,接收端采用迭代方法恢复原始图像。文献[12]提出基于预测误差的信息嵌入方法,提高了嵌入率。为更好地利用像素间的相关性,文献[13]设计一种新型加密框架。基于该框架,一些明文域RDH算法可被应用于加密域。文献[14]将直方图平移随机化,增强了算法安全性,并通过多层级嵌入增加嵌入容量。文献[15]将图像分块并使块内像素分组,建立差值直方图,通过直方图平移方法嵌入秘密信息。文献[16]采用不同的加密方法加密原始图像的高低位平面,利用同态加法和差值扩展方法分别在高低位平面嵌入秘密信息。上述算法虽然实现了在明文域进行信息提取,但只能在同时拥有加密密钥和嵌入密钥的情况下进行图像恢复操作。针对该问题,文献[17]提出基于矩阵编码的RDH-EI算法,实现信息提取操作和图像恢复操作的完全分离,但由于该算法采用Arnold变换加密方法,因此安全性不高。文献[18]提出基于最高有效位预测的RDH-EI算法,在提高嵌入率的同时实现了信息提取操作和图像恢复操作的完全分离。
针对现有加密图像可逆数据隐藏算法的嵌入容量较低与安全性较差的问题,本文提出一种基于预测误差编码的加密域可逆数据隐藏算法。该算法利用基于图像块的多元线性回归模型进行目标像素预测并对预测误差编码预留嵌入空间。通过差分对称编码提升编码效率,扩展嵌入空间,并且接收者在仅拥有加密密钥的情况下可无失真地恢复原始图像,在仅拥有嵌入密钥的情况下可无误地提取秘密信息。
1 多元线性回归预测与差分对称编码 1.1 多元线性回归模型多元线性回归分析常被用来探究多个因变量与一个自变量之间的相关关系。多元线性回归模型在多次观测下的一般形式为:
$ {y}_{i}={b}_{0}+{b}_{1}{x}_{1i}+{b}_{2}{x}_{2i}+\cdots +{b}_{k}{x}_{ki}+{ε }_{i} $ | (1) |
其中,
$ {\mathit{\boldsymbol{Y}}}={\mathit{\boldsymbol{X}}}\cdot {\mathit{\boldsymbol{B}}}+ {\mathit{\pmb{ε}}} $ | (2) |
在确保误差平方和最小的前提下寻找回归系数的估计值(如式(3)所示),采用最小二乘法进行求解(如式(4)所示),并将求解结果通过矩阵形式进行表示(如式(5)所示)。
$ Q=\sum\limits _{i=1}^{n}{ε }_{i}^{2}={({\mathit{\boldsymbol{Y}}}-{\mathit{\boldsymbol{X}}}{\mathit{\boldsymbol{B}}})}^{\mathrm{T}}({\mathit{\boldsymbol{Y}}}-{\mathit{\boldsymbol{X}}}{\mathit{\boldsymbol{B}}}) $ | (3) |
$ \frac{\partial {({\mathit{\boldsymbol{Y}}}-{\mathit{\boldsymbol{X}}}{\mathit{\boldsymbol{B}}})}^{\mathrm{T}}({\mathit{\boldsymbol{Y}}}-{\mathit{\boldsymbol{X}}}{\mathit{\boldsymbol{B}}})}{\partial {\mathit{\boldsymbol{B}}}}=0 $ | (4) |
$ {\mathit{\boldsymbol{B}}}={\left({{\mathit{\boldsymbol{X}}}}^{\mathrm{T}}{\mathit{\boldsymbol{X}}}\right)}^{-1}{{\mathit{\boldsymbol{X}}}}^{\mathrm{T}}{\mathit{\boldsymbol{Y}}} $ | (5) |
对于最小二乘法得到的残差,即训练误差表示为:
$ {\mathit{\pmb{ε }}}={\mathit{\boldsymbol{Y}}}-{\mathit{\boldsymbol{X}}}{\mathit{\boldsymbol{B}}}=\left\{{I}_{n}-{\mathit{\boldsymbol{X}}}({{\mathit{\boldsymbol{X}}}}^{\mathrm{T}}{{\mathit{\boldsymbol{X}}})}^{-1}{{\mathit{\boldsymbol{X}}}}^{\mathrm{T}}\right\}{\mathit{\boldsymbol{Y}}} $ | (6) |
其中,In为n阶单位阵。假设最小二乘法得到的残差服从N(0,σ2)分布,则平均预测误差表示为:
$ {\mathit{\boldsymbol{\zeta }}}=\frac{1}{n}E{({\mathit{\boldsymbol{Y}}}-{\mathit{\boldsymbol{X}}}{\mathit{\boldsymbol{B}}})}^{\mathrm{T}}({\mathit{\boldsymbol{Y}}}-{\mathit{\boldsymbol{X}}}{\mathit{\boldsymbol{B}}})=\frac{n-k}{n}{\sigma }^{2} $ | (7) |
可以看出,样本越多,模型的拟合效果越好。当在新样本集上进行预测时,实际预测误差如式(8)所示,实际预测误差除了固定项
$ \begin{array}{l}{{\mathit{\pmb{ε}}}}_{0}=E({{\mathit{\boldsymbol{Y}}}}_{0}-{{\mathit{\boldsymbol{X}}}}_{0}{{\mathit{\boldsymbol{B}}})}^{\mathrm{T}}({{\mathit{\boldsymbol{Y}}}}_{0}-{{\mathit{\boldsymbol{X}}}}_{0}{\mathit{\boldsymbol{B}}})=\\ \hspace{1em} \mathrm{ }\mathrm{ }\mathrm{ }{\sigma }^{2}+{\sigma }^{2}{{\mathit{\boldsymbol{X}}}}_{0}({{\mathit{\boldsymbol{X}}}}^{\mathrm{T}}{{\mathit{\boldsymbol{X}}})}^{{}^{-1}}{{\mathit{\boldsymbol{X}}}}_{0}\end{array} $ | (8) |
在得到参数的最小二乘估计值后,还需进行统计检验并判断模型的拟合优度
$ {R}^{2}=1-\frac{{E}_{\mathrm{E}\mathrm{S}\mathrm{S}}}{{T}_{\mathrm{T}\mathrm{S}\mathrm{S}}} $ | (9) |
其中:
在对一幅大小为
![]() |
Download:
|
图 1 基于图像块的多元线性回归预测 Fig. 1 Multiple linear regression prediction based on image block |
在一个图像块内共进行5组预测,5组预测模型如式(10)所示:
$ \begin{array}{l}{u}_{1}={b}_{10}+{b}_{11}{v}_{1}+{b}_{12}{v}_{2}+{b}_{13}{v}_{3}+{b}_{14}{v}_{4}\\ {x}_{1}={b}_{20}+{b}_{21}{v}_{1}+{b}_{22}{\mu }_{1}+{b}_{23}{v}_{2}\\ {x}_{2}={b}_{30}+{b}_{31}{v}_{1}+{b}_{32}{\mu }_{1}+{b}_{33}{v}_{3}\\ {x}_{3}={b}_{40}+{b}_{41}{v}_{2}+{b}_{42}{\mu }_{1}+{b}_{43}{v}_{4}\\ {x}_{4}={b}_{50}+{b}_{51}{v}_{3}+{b}_{52}{\mu }_{1}+{b}_{53}{v}_{4}\end{array} $ | (10) |
其中,
在差分对称编码方法中,码元与误差值(d)的对应关系为:当码元长度(n)为1时,以二进制码‘0’表示十进制意义上的误差值0,以二进制码‘1’表示误差值1;当码元长度大于1时,以码元的第一位表示误差的正负,其余位为误差绝对值或者误差值减去1的二进制表示。具体而言:当误差值为正数时,码元的第一位编为‘1’,其余位为误差值减去1的二进制表示;当误差值小于等于0时,码元的第一位编为‘0’,其余位为误差绝对值的二进制表示。假设码元长度为
$ \left\{\begin{array}{l}d=\sum\limits _{i=2}^{n}{c}_{i}\cdot {2}^{n-i}+1, \mathrm{ }d>0\\ \left|d\right|=\sum\limits _{i=2}^{n}{c}_{i}\cdot {2}^{n-i}, d\le 0\end{array}\right. $ | (11) |
表 1以码元长度为1、2和3为例,说明码元长度n与误差值d的对应关系,其中“—”表示码元长度n无法表示误差值d。
![]() |
下载CSV 表 1 码元长度为1、2和3时的对称编码结果 Table 1 Symmetric coding results when the symbol length is 1, 2 and 3 |
根据上述规则,不同码元长度表示的误差值范围如式(12)所示,即当码元长度为
$ \left\{\begin{array}{l}-({2}^{n-1}-1)\le d\le {2}^{n-1}, n=\mathrm{2, 3}, \cdots , 7\\ 0\le d\le 1, n=1\end{array}\right. $ | (12) |
$ \eta =\frac{\sum\limits _{i=1}^{{2}^{n}}{p}_{i}\cdot \mathrm{l}\mathrm{b}{p}_{i}}{\sum\limits _{i=1}^{{2}^{n}}{p}_{i}\cdot {l}_{i}} $ | (13) |
其中,
本文算法框架如图 2所示,首先由图像所有者对原始图像进行分块加密,保留图像块内像素间的相关性,然后数据隐藏者在接收到加密图像后,对加密图像分块并对子块内像素值进行预测,若像素预测误差在一定范围内,则对预测误差进行编码,并采用位替换方法嵌入秘密数据,最后接收者使用嵌入密钥可以提取秘密信息,而采用加密密钥可以准确无误地恢复原始图像。
![]() |
Download:
|
图 2 本文算法框架 Fig. 2 Framework of the proposed algorithm |
对于大小为M×N的载体图像,首先将图像分为
$ {e}_{ij}^{k}=\mathrm{m}\mathrm{o}\mathrm{d}({p}_{ij}^{k}+{r}_{k}, 256) $ | (14) |
当M或N无法被3整除时,原始图像中并非所有像素均可构成图像块。针对该情况,可对子块之外的其余像素采用置乱方式进行加密,进一步提高加密图像的安全性。
2.2 像素预测与分类在接收到加密图像后,数据隐藏者首先将数据集中的标准图像作为训练样本,对5组多元线性回归模型进行训练得到回归系数。具体方法为将数据集中的图像划分为大小为3×3的图像块,假设训练集中包含
$ {\mathit{\boldsymbol{U}}}={\mathit{\boldsymbol{V}}}\cdot {\mathit{\boldsymbol{B}}} $ | (15) |
其中,
将式(15)结合式(5)可得到相关系数的解完成回归分析。类似地,对式(10)中其他几组模型分别进行回归分析。然后将加密图像划分为3×3的图像块,利用训练得到的多元线性回归模型逐块地进行像素预测,计算图像块内目标像素
$ d=p-o $ | (16) |
假设采用n bit对预测误差进行编码,根据差分对称编码可知,若预测误差满足式(12),则目标像素可进行秘密数据嵌入,否则目标像素不可嵌入秘密信息,因此目标像素被分为可嵌入像素和不可嵌入像素两类。此外,用
为使接收端无误地提取秘密信息和恢复原始图像,将参数
为保证算法安全性,使用嵌入密钥并通过流加密方式对秘密信息进行加密。对于可嵌入像素,按照差分对称编码方法对预测误差进行编码,以n bit预测误差码元代替可嵌入像素的高n位,使用待嵌入信息替换可嵌入像素的低(8-n)位。对于不可嵌入像素,像素值保持不变。例如,当
![]() |
Download:
|
图 3 秘密信息嵌入后图像块的像素分布 Fig. 3 Pixel distribution of image block after secret information is embedded |
在接收端共存在接收者仅拥有嵌入密钥、接收者仅拥有加密密钥和接收者同时拥有加密密钥和嵌入密钥3种情况。当接收者仅拥有嵌入密钥时,可以完全无误地提取嵌入信息,具体步骤如下:
1)将标记图像分块,扫描参考像素的LSB,提取辅助信息。
2)根据位置图确定可嵌入像素的位置,从可嵌入像素的低
3)使用嵌入密钥解密,即可恢复秘密信息。
当接收者仅拥有加密密钥时,可以无失真地重建原始图像,具体步骤如下:
1)将标记图像分块,扫描参考像素的LSB,提取辅助信息。根据辅助信息中的回归系数信息重建多元线性回归模型。
2)根据位置图获取可嵌入像素位置,并在可嵌入像素的低
3)基于参考像素恢复每个图像块内中心位置的像素值,即使用相应的多元线性回归模型对中心像素进行预测,从中心像素的高
$ o=p-d $ | (17) |
4)重复步骤3恢复图像块内其余可嵌入像素的像素值,使得加密图像得到恢复。
5)将加密图像分块,根据加密密钥将块内像素值与同一字节进行取余运算,然后对图像块进行反置乱。若图像中有未凑成图像块的像素,则同样使用加密密钥进行反置乱。
当接收者同时拥有两把密钥时,可以按照上述步骤分别提取秘密信息和恢复原始图像。
3 实验结果与分析为验证本文算法的性能,在BOWS-2[19]和UCID[20]数据集中随机选取大小为
![]() |
Download:
|
图 4 标准测试图像 Fig. 4 Standard test images |
在训练多元线性回归模型时需要足够多的样本,如果模型特征数(即自变量数目)较多而样本数过少,则会造成欠拟合问题或过拟合问题。一般而言,样本数越多,拟合效果越好。在实验过程中,在BOWS-2[19]数据集中随机选取100张大小为
![]() |
下载CSV 表 2 多元线性回归模型的拟合优度 Table 2 Goodness of fit for multiple linear regression models |
对于本文算法,码元长度n是影响嵌入容量的重要因素。码元长度越长,表征的预测误差范围越大,同一幅图像内可嵌入像素数量越多,但一个像素内的可嵌入空间越小。为进一步说明码元长度对实验结果的影响,利用RDH-EI算法对部分标准灰度图像在不同码元长度下的嵌入率进行测试,如表 3所示。可以看出,嵌入率随着码元长度的增加先增大再减少,测试图像的嵌入率在码元长度为3或4时达到最大,说明可嵌入像素数量和每个像素可嵌入空间在码元长度为3或4时可达到最佳平衡。
![]() |
下载CSV 表 3 不同码元长度下RDH-EI算法的嵌入率比较 Table 3 Comparison of embedding rate of RDH-EI algorithm with different symbol lengths |
为验证本文算法的普适性和有效性,设置参数
![]() |
Download:
|
图 5 测试图像嵌入率 Fig. 5 Embedding rate of test images |
![]() |
下载CSV 表 4 数据集测试图像的嵌入率统计 Table 4 Statistics of embedding rate for test images in dataset |
将本文算法与具有代表性的文献[9, 13-14, 18]算法进行嵌入率比较,如表 5所示。文献[9]采用压缩加密像素最低有效位的方式预留嵌入空间,嵌入容量有限。文献[13]提出新型加密框架并使用传统RDH方法嵌入秘密信息。文献[14]通过引入多层嵌入增加嵌入容量。与以上3种算法相比,本文算法的嵌入率有较大幅度的提升,在F16、Lena以及Peppers图像上的嵌入率约提高1 bit/pixel。与文献[18]算法相比,本文算法的嵌入率也有一定程度的提升。
![]() |
下载CSV 表 5 5种算法的嵌入率比较 Table 5 Comparison of embedding rate of five algorithms |
从图像恢复操作无误、信息提取操作无误以及信息提取操作与图像恢复操作可完全分离角度对本文算法进行分析并与经典算法进行比较,如表 6所示。
![]() |
下载CSV 表 6 4种算法的性能比较 Table 6 Performance comparison of four algorithms |
本文算法由于在信息嵌入和信息提取过程中对于原始像素的操作是完全可逆的,因此保证了图像恢复操作的无失真。文献[9]算法通过压缩矩阵对加密图像的多个最低有效位平面进行压缩以获取冗余空间,因此在恢复图像操作过程中并不能保证完全无误。此外,本文算法可嵌入像素的高
本文提出一种基于预测误差编码的加密域可逆数据隐藏算法。在图像块内建立多元线性回归模型,利用数据集中的大量图像训练模型,并采用多元线性回归模型预测目标像素,同时通过差分对称编码方式提高编码效率并间接增加嵌入容量。实验结果表明,该算法具有嵌入容量大、信息提取操作和图像恢复操作可完全分离的特点,能较好地实现秘密信息提取与原始图像重建且安全性较高。后续将探究更有效的可嵌入像素标记方法以增加嵌入容量,同时利用图像块内相邻像素间的相关性,建立更加高效的多元线性回归模型提高像素预测准确率。
[1] |
MA Kede, ZHANG Weiming, ZHAO Xianfeng, et al. Reversible data hiding in encrypted images by reserving room before encryption[J]. IEEE Transactions on Information Forensics and Security, 2013, 8(3): 553-562. DOI:10.1109/TIFS.2013.2248725 |
[2] |
ZHANG Weiming, MA Kede, YU Nenghai. Reversibility improved data hiding in encrypted images[J]. Signal Processing, 2014, 94: 118-127. DOI:10.1016/j.sigpro.2013.06.023 |
[3] |
CAO Xiaochun, DU Ling, WEI Xinging, et al. High capacity reversible data hiding in encrypted images by patch-level sparse representation[J]. IEEE Transactions on Cybernetics, 2016, 46(5): 1132-1143. DOI:10.1109/TCYB.2015.2423678 |
[4] |
ZHANG Xinpeng. Reversible data hiding in encrypted image[J]. IEEE Signal Processing Letters, 2011, 18(4): 255-258. DOI:10.1109/LSP.2011.2114651 |
[5] |
HONG W, CHEN T S, WU H Y. An improved reversible data hiding in encrypted images using side match[J]. IEEE Signal Processing Letters, 2012, 19(4): 199-202. DOI:10.1109/LSP.2012.2187334 |
[6] |
LIAO Xin, SHU Changwen. Reversible data hiding in encrypted images based on absolute mean difference of multiple neighboring pixels[J]. Journal of Visual Communication and Image Representation, 2015, 28: 21-27. DOI:10.1016/j.jvcir.2014.12.007 |
[7] |
HONG W, CHEN T S, CHEN J, et al. Reversible data embedment for encrypted cartoon images using unbalanced bit flipping[C]//Proceedings of International Conference on Swarm Intelligence. Washington D.C., USA: IEEE Press, 2013: 208-214.
|
[8] |
LI Ming, XIAO Di, PENG Zhongxian, et al. A modified reversible data hiding in encrypted images using random diffusion and accurate prediction[J]. ETRI Journal, 2014, 36(2): 325-328. DOI:10.4218/etrij.14.0213.0449 |
[9] |
ZHANG Xinpeng. Separable reversible data hiding in encrypted image[J]. IEEE Transactions on Information Forensics and Security, 2012, 7(2): 826-832. DOI:10.1109/TIFS.2011.2176120 |
[10] |
QIAN Zhenxing, ZHANG Xinpeng. Reversible data hiding in encrypted images with distributed source encoding[J]. IEEE Transactions on Circuits & Systems for Video Technology, 2016, 26(4): 636-646. |
[11] |
QIAN Zhenxing, ZHANG Xinpeng, FENG Guorui. Reversible data hiding in encrypted images based on progressive recovery[J]. IEEE Signal Processing Letters, 2016, 23(11): 1672-1676. DOI:10.1109/LSP.2016.2585580 |
[12] |
WU Xiaotian, SUN Wei. High-capacity reversible data hiding in encrypted images by prediction error[J]. Signal Processing, 2014, 104: 387-400. DOI:10.1016/j.sigpro.2014.04.032 |
[13] |
HUANG Fangjun, HUANG Jiwu, SHI Yunqing. New framework for reversible data hiding in encrypted domain[J]. IEEE Transactions on Information Forensics and Security, 2016, 11(12): 2777-2789. DOI:10.1109/TIFS.2016.2598528 |
[14] |
GE Haoli, CHEN Yan, QIAN Zhenxing, et al. A high capacity multi-level approach for reversible data hiding in encrypted images[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2019, 29(8): 2285-2295. DOI:10.1109/TCSVT.2018.2863029 |
[15] |
LI Zhijia, XIA Wei. Reversible information hiding algorithm in encrypted domain based on difference histogram shifting[J]. Computer Engineering, 2019, 45(11): 152-158. (in Chinese) 李志佳, 夏玮. 基于差值直方图平移的密文域可逆信息隐藏算法[J]. 计算机工程, 2019, 45(11): 152-158. |
[16] |
ZHOU Neng, ZHANG Minqing, LIN Wenbing. Separable reversible information hiding algorithm in encrypted domain based on secret sharing[J]. Computer Engineering, 2020, 46(10): 112-119. (in Chinese) 周能, 张敏情, 林文兵. 基于秘密共享的可分离密文域可逆信息隐藏算法[J]. 计算机工程, 2020, 46(10): 112-119. |
[17] |
LIU Yu, YANG Bailong, ZHAO Wenqiang, et al. Reversible information hiding algorithm in large capacity ciphertext field based on matrix coding[J]. Computer Engineering, 2018, 44(10): 221-226. (in Chinese) 刘宇, 杨百龙, 赵文强, 等. 基于矩阵编码的大容量密文域可逆信息隐藏算法[J]. 计算机工程, 2018, 44(10): 221-226. |
[18] |
PUTEAUX P, PUECH W. High-capacity reversible data hiding in encrypted images using MSB prediction[C]//Proceedings of the 6th International Conference on Image Processing Theory, Tools and Applications. Washington D.C., USA: IEEE Press, 2017: 10-15.
|
[19] |
The BOWS-2 image database[EB/OL]. [2020-01-15]. http://bows2.ec-lille.fr/.
|
[20] |
SCHAEFER G, STICH M. UCID: an uncompressed color image database[C]//Proceedings of Storage and Retrieval Methods and Applications for Multimedia. [S. l. ]: International Society for Optics and Photonics, 2003: 472-480.
|