可以在 jpeg 压缩中幸存的图像隐写术

Posted

技术标签:

【中文标题】可以在 jpeg 压缩中幸存的图像隐写术【英文标题】:Image steganography that could survive jpeg compression 【发布时间】:2014-01-18 18:23:05 【问题描述】:

我正在尝试实现一种隐写算法,其中隐藏的消息可以在 jpeg 压缩中存活。

典型场景如下:

    隐藏图片中的数据 使用 jpeg 压缩图像 jpeg压缩不会破坏隐藏数据,可以恢复

我尝试使用不同的描述算法,但没有成功。 例如,我试图使用简单的重复代码,但 jpeg 压缩破坏了隐藏数据。我也试图实现以下文章描述的算法: http://nas.takming.edu.tw/chkao/lncs2001.pdf http://www.securiteinfo.com/ebooks/palm/irvine-stega-jpg.pdf

您知道实际上可以在 jpeg 压缩中存活的任何算法吗?

【问题讨论】:

您的信息有多大,如果其中一部分被更改,它会变得无用吗? JPEG 隐写术通常处理消息的有损存储/检索。您使用的压缩比是多少? 现在我不在乎容量。首先,我想看看一个可以在 JPEG 压缩或重新压缩中幸存下来的示例或算法来理解它。是否可以使用能够承受任何压缩比的隐写术?你知道些什么吗? 【参考方案1】:

可以隐藏频域中的数据,JPEG使用DCT(离散余弦变换)为每个8x8像素块保存信息,压缩下不变的信息是最高频率值,它们排列成矩阵,当矩阵的最低系数在块量化后四舍五入为 0 时,进行有损压缩,这些零排列在矩阵的右下部分,这就是压缩起作用并且信息丢失的原因。

【讨论】:

您可以在 DCT 系数中隐藏数据,但我的经验是,如果您使用 JPEG 图像的重新压缩,您将丢失隐藏的信息。您能否更详细地描述您的意思以及为了避免在重新压缩已经包含一些隐藏消息的 JPEG 图像后信息丢失而进行哪些更改?【参考方案2】:

似乎有不少应用程序在 JPEG 上实现了隐写术,所以它是可行的:

http://www.jjtc.com/Steganography/toolmatrix.htm

这是一篇关于相关算法 (PM1) 的文章,可帮助您入门:

http://link.springer.com/article/10.1007%2Fs00500-008-0327-7#page-1

【讨论】:

我知道可以在量化之前在JPEG图像中使用DCT系数来嵌入数据,但存在同样的问题。如果有人重新压缩 JPEG 图像,隐藏的数据应该会保留下来。您知道可以在重新压缩后幸存下来的实现吗? 好吧,看看这项研究是否有帮助:researchgate.net/publication/… 我正在研究提供的材料,我认为我们相互误解了。文章正在撰写有关如何在压缩 JPEG 图像中进行隐写分析的文章。我的问题是如何在压缩本身中幸存下来。举个例子: 1. 选择一张图片。 -> 2. 用JPEG压缩。 -> 3. 使用 PM1 算法(或 MB1、MB2、带有 GA 的 PM1 或任何类似的算法)将秘密数据嵌入到选定的 JPEG 图像中,从而生成 stegoJPEG 图像。 -> 4. 再次对 stegoJPEG 应用 JPEG 压缩(例如以相同的质量)。 -> 5. 重新压缩会破坏您嵌入的秘密数据。 在上面的例子中是否有任何算法可以在第 4 步中存活下来?在重新压缩包含它的 stegJPEG 图像后,您的秘密数据可能会被泄露。 @user1563721 你找到答案了吗?【参考方案3】:

也许答案来晚了,但是…… 您可以在压缩域隐写术中执行此操作。将图像读取为二进制文件并使用 JPEG Parser 等库分析此文件。根据您选择的算法,找到场地的位置并计算该场地的新值并替换文件数据中的结果位。最后以相同的输入扩展名写入文件。 我希望我能帮上忙。

【讨论】:

【参考方案4】:

您要查找的内容称为水印。

一点警告:水印算法使用大量冗余来确保嵌入信息的高度稳健性。这意味着与标准隐写算法相比,您可以隐藏在图像中的数据量将低几个数量级。

【讨论】:

能否推荐具体的算法? 对不起,我没有使用它们的个人经验,我只知道它们叫什么。我决定发布它,因为寻找东西最难的部分是找到正确的搜索词。将“jpeg watrmarking”输入谷歌,看看它会把你带到哪里。祝你好运!

以上是关于可以在 jpeg 压缩中幸存的图像隐写术的主要内容,如果未能解决你的问题,请参考以下文章

有损压缩中的隐写术 (JAVA)

PDF文件中的隐写术[关闭]

实验吧关于隐写术的writeUp

在 PHP 中阻止图像主机的隐写术?

图像处理之《基于生成对抗网络和梯度下降逼近的鲁棒无覆盖隐写术》论文精读

隐写术:把压缩包隐藏在图片中