我正在研究隐写术应用程序。我需要在图像文件中隐藏消息并使用密码保护它,文件大小差别不大。我正在使用最低有效位算法,并且可以使用BMP文件成功完成,但它不适用于JPEG,PNG或TIFF文件。这个算法是否适用于这些文件?有没有更好的方法来实现这一目标?感谢。
答案 0 :(得分:7)
这在很大程度上取决于特定图像格式的工作方式。您需要深入了解您要使用的格式的内部。
对于JPEG,你可以摆弄每个块的DCT系数的最后几位。
对于基于调色板的文件(GIF和一些PNG),您可以为调色板添加与现有文件相同的额外颜色,并根据您使用的颜色对信息进行编码。
答案 1 :(得分:2)
您必须区分基于像素(Bitmap)和基于调色板的格式(GIF),隐写技术完全不同。另请注意,像JPG这样的图像格式会在压缩过程中丢失信息。
我还会建议general introduction隐写术,包括不同的格式。
答案 2 :(得分:0)
最低有效位方法不适用于JPEG和GIF图像,因为您在压缩之前使用像素数据(原始图像)存储隐藏信息。具有数据0x123456的像素p在压缩之后可能不具有该值,因为其值取决于压缩率和相邻像素。在这种情况下,我们讨论的算法不仅压缩图像(如ZIP,保留内容),而是改变颜色分布,纹理和质量,以减少代表它的位数。
但是,PNG只能用于压缩ZIP文件中的图像,保留内容。因此,您可以使用PNG图像的最低有效位,以便维基百科隐写页面以此格式显示示例。