更新 我很久以前问过这个问题,我很好奇自从我问过这个问题以来是否已经开发了类似的东西?
我什至不知道这种算法是否有一个术语,我想如果还没有人发明它,我想不会有。然而,这也使得谷歌搜索有点困难。有人知道这个算法/原理是否有术语吗?
这是我一直在思考的一个想法,但我不太知道如何解决。我想知道是否存在这样的解决方案,或者你们是否知道如何实施。
隐写术
隐写术基本上是隐藏消息的艺术。在现代,我们通过例如将图像中的最低有效位修改为下图来以数字方式执行此操作。因此,对于每个像素以及该像素的每个颜色分量,我们可能能够隐藏一两个字节。
这种交替不是肉眼可见的,但分析最低有效位可能会揭示隐藏信息的存在和可能内容的模式。为了解决这个问题,我们只需在将消息嵌入图像之前对其进行加密,这样可以保证消息的安全并有助于防止发现隐藏消息的存在。
因此,原则上,隐写术提供以下内容:
- 在任何类型的媒体数据中隐藏加密消息。(图片、音乐、视频等)
- 在没有正确密钥的情况下完全否认隐藏消息的存在。
- 使用正确的密钥提取隐藏消息。
(来源:cs.vu.nl)
信号码
Semacodes 是一种以视觉表示形式对数据进行编码的方式,可以轻松地打印、复制和扫描。下面显示的数据矩阵是一个包含著名的 Lorem Ipsum 文本的 semacode 示例。这本质上是一种二维条码,其容量通常高于条码。生成 semacode 的程序很容易获得,读取它们的软件也是如此,尤其是手机。Semacodes 通常包含纠错码,通常非常健壮,并且可以在非常损坏的条件下读取。
因此 semacodes 具有以下属性:
- 可以打印和复制的数据编码。
- 即使在损坏(脏)的条件下也可以被扫描和解释,并且通常是非常健壮的编码。
结合它
所以我的想法是创造一些结合这两者的东西,以及所有组合的属性。这意味着它必须:
- 在任何媒体中嵌入加密消息,可能是扫描图像。
- 即使图像被打印和扫描,甚至部分损坏,消息也应该是可提取的。
- 如果没有用于加密的密钥,嵌入消息的存在应该是不可检测的。
那么,首先我想知道是否有任何解决方案、算法或研究可用?其次,我想听听关于如何做到这一点的任何想法/想法?
我真的希望就实施这样的事情的可能性和可行性进行良好的讨论,我期待着阅读您的答案。
更新
感谢您对此提出的所有良好意见。当我有更多时间时,我可能会更多地研究这个想法。我相信这一定是可能的。想想在音乐和电影中嵌入水印的研究。