文献阅读——JPEG图像加密
论文题目: JPEG Image Encryption with Adaptive DC Coefficient Prediction and RS Pair Permutation
期刊: IEEE TRANSACTIONS ON MULTIMEDIA
作者: Chuan Qin,Jinchuan Hu, Fengyong Li,Zhenxing Qian,and Xinpeng Zhang
年份: 2022
一、加密框架
JPEG压缩过程主要包括:分块、DCT变换、量化、熵编码。在任何阶段,都可以对JPEG图像进行加密。该算法的框架如下图所示,主要在量化后分别对DC和AC系数分别进行加密。
密钥生成:
自适应密钥,用图像特征生成。每个图像具有不同的加密密钥,可抵抗已知明文攻击。
DC系数加密步骤:
(1)DC系数预测误差;
(2)直方图加密;
(3)DC溢出信息处理
AC系数加密步骤:
(1)选择RS对进行全局置乱;
(2)处理溢出块;
(3)辅助信息嵌入;
(4)块内RS对置乱;
(5)除DC外的块置乱
接下来,对AC和DC系数加密进行详细说明。
二、DC加密
1. DC系数预测误差:
根据相邻块的AC系数解码得到的像素,对DC系数进行预测。
优点:能有效减小DC差分的码长,减小文件大小。
2. 直方图加密
目标: 使加密的DC系数直方图、像素直方图更均匀。
实现方法: 对DC系数进行分块,每个块中加相同的随机数
优点: 基本保留块内DC系数的差值
缺点: (a)块间DC差值被改变,导致块间DC差分码长增加;(b)块内DC差值可能因为溢出处理而改变
3. DC溢出信息处理
由于在第二步加密时,加了随机数后可能导致DC系数超出范围,因此,需要对其进行溢出处理操作以实现DC系数格式兼容。
实现方法: 溢出的DC系数mod
缺点: 需要记录额外数据
三、AC加密
1. 选择RS对进行全局置乱
实现方法:
(a)选择阈值T(范围为1到10),每个块中提取前T个RS对;
(b)将所有块中提取的RS对全局置乱;
(c)按置乱后的顺序,给每个块分配相同数量的RS对;
优点: 在保证文件大小不变的i情况下,能更大范围的扰乱AC
缺点: 重新分配的RS对可能具有比原始RS更长的游程,这些RS对如果被分配到块内RS较多的块,可能导致块内AC系数的数量超过63个
2. 处理溢出块
(a)在溢出块中,根据游程对前T个RS对排序;
(b)依次去掉游程最大的RS对,直到块不溢出;
(c)记录块的位置、去掉的RS对的数量、去掉RS对的位置;
(c)为每个安全块添加一个去掉的RS对并标记安全块;
3. 辅助信息嵌入
将DC和AC溢出信息,使用可逆信息隐藏的方式嵌入到图像中。
嵌入时,根据游程从小到大的特点,旋转这些RS对。
因此,嵌入并不会改变文件大小。
需要考虑的问题: JPEG图像的冗余较小,是否能完全嵌入额外数据?
4. 块内RS对置乱
目的: 扰乱块内RS对
性能: 不改变文件大小
5. 除DC外的块置乱
目的: 扰乱以块为单位的图像轮廓信息
性能: 不改变文件大小
总结
该算法在文件大小、格式兼容、安全性等性能指标具有较好的结果,是目前对量化的JPEG图像系数加密较优的方案,值得进一步深入学习。