在png图像中隐藏秘密的方法(隐写术)



我试图在256x256 png图像中找到一条秘密消息,一个字符串。它被认为"使用了一个老派的伎俩来隐藏数据",显然维基百科的隐写术文章中提到了这种方法。

我首先尝试了一种在我看来最老派的方法:LSB隐写术。但运气不好。我知道字符串的第一个和最后一个字符("F"one_answers"}"),我认为他们可能将常见的lsb方法混合了一点,所以我自己检查了图片的第一个像素和最后一个子像素。然而,没有明显的组合(比如每个像素的红色值)会允许正确的字符。因此,我很肯定它没有使用lsb。

在第二次相当绝望的尝试中,我看到维基百科谈论剥离最重要的六位,只留下最不重要的两位,然后将图片标准化。我写了一个小剧本来做这件事,但在这里也没有运气。

我还查看了identify -verbose image.png的元数据。没有什么该文件在IEND块之后结束,因此除此之外也没有任何隐藏内容。

我的想法快用完了,所以我的问题是:

有什么我还没有尝试过的老派把戏吗?我确信我错过了一些显而易见的东西。这个练习和其他一些练习一起进行,他们第一眼看起来都比实际情况更难。

非常感谢。:)

原来图片中间有一个区块,包含一个长文本,其中包含所需的字符串,仅隐藏在蓝色值的最小位中,按最小位优先顺序。不知怎么的,我在初步测试中错过了那个组合。好了。:)

对于任何有类似问题的人:我发现最好写一个脚本,在一次大的运行中测试所有更常识性的变化(比如只有单色、垂直、最小数或最小数等)。否则很容易错过一个简单的理论,陷入疯狂复杂的理论中。

最新更新