信息安全之加密域可逆信息隐藏—经典算法

本篇文章介绍加密域可逆信息隐藏经典算法----张新鹏教授的《Reversible data hiding in encrypted image》
张新鹏教授的算法是加密域可逆信息隐藏经典算法以下简称Zhang算法,本篇文章首先介绍Zhang算法流程,然后介绍Zhang算法的严重BUG,即安全性问题。
一、Zhang算法简介:
信息安全之加密域可逆信息隐藏—经典算法
1、图像加密:采用异或加密原始图像。
2、信息隐藏:数据嵌入, 首先,将加密图像分割成由S*S大小的多个非重叠块。 然后,每个块将被用于携带一个附加位。对于每个块,将像素伪随机划分成两组S0和S1. 这里,像素属于S0或S1的概率为1/2。 如果要嵌入的附加位为0,则翻转S0中每个加密像素的3个最低有效位(LSB)。如果附加位为1,则翻转S1中的3个加密LSB像素其他加密数据不做更改。具体过程如下图:
信息安全之加密域可逆信息隐藏—经典算法
3、信息提取:由波动函数信息安全之加密域可逆信息隐藏—经典算法
进行计算提取,信息提取过程用下图表示:
信息安全之加密域可逆信息隐藏—经典算法
4、图像解密:异或解密
实验结果:
信息安全之加密域可逆信息隐藏—经典算法
数据提取及内容恢复性能依赖于分块大小 , 在Zhang所提出的方案中,块大小越小,可以嵌入更多的附加数据。 然而,失败的位提取和图像恢复的风险上升,当块的边长大于32时,对于大多数封面图像,所有嵌入的位都可以正确地进行,原始图像可以被成功地恢复。

二、Zhang算法的安全性问题——异或加密之唯密文攻击。
Zhang算法采用异或加密,无法抵抗唯密文攻击。对原始测试图像分别用异或加密。加密后的图像如下图。
信息安全之加密域可逆信息隐藏—经典算法
信息安全之加密域可逆信息隐藏—经典算法
可以看出XOR(异或)加密完全遮掩了原始图像内容。似乎加密效果良好。下面我们用唯密文攻击来进行测试其加密图像。
选取测试图像中的Lena、Airplane、Barbara对其分别提取采样像素的高八位,分别采用XOR加密。对加密后的高八位图像使用COA(唯密文)攻击。从下图可以看出,仅使用异或加密,用COA攻击方法选取10幅已知图像便可**加密图像,**后的图像可以清晰辨认出原始图像,泄露了大量明文内容。
信息安全之加密域可逆信息隐藏—经典算法
关于针对异或加密的COA攻击算法,下期更新。