在过去的几周里,我一直在学习隐写术。我知道可以使用RGB像素值将数据隐藏在图像中,但我不知道该怎么做。
我想知道如何转换/隐藏图像中的任何二进制数据。我不担心图像的外观或内容,它甚至可以是空白的或无意义的。
我知道隐藏数据的另一种方法是连接图像和二进制数据,但我不想这样做。我想在图像中实际隐藏二进制数据。
我首选的编程语言是Javascript,但我没有修改图像二进制数据的经验。
你能告诉我这是否可能,如果是,如何在Javascript中实现它吗?
谢谢!
可以使用不同的方法隐藏图片中的原始数据。例如,对每个像素字节的不太有效位执行按位运算,以便该字节表示 ascii 代码上的字符。这不会影响图片的外观,至少不会影响人眼。
根据图片本身的大小,您可能会隐藏更多或更少的数据。通常,做隐写术的人会隐藏一条短消息而不是文件。
为了获得隐藏的消息,您需要逆转该过程。因此,您需要在二进制模式下将包含隐藏消息的图片作为类似文件的对象打开,并通读其每个像素字节,最后查看每个字节匹配的 ascii 字符。
如果您真的想隐藏文件,您可以考虑使用一组图片,而不仅仅是一张。
我不知道如何在 JavaScript 中做到这一点,但在 Python 中,这是一种方法。