我搜索了很多关于隐写文本的内容,并发现了这一点:http://www.fourmilab.ch/javascrypt/javascrypt.html& http://www.fourmilab.ch/javascrypt/stego.html
这些网址的基本原理是将任何文本转换为加密代码&然后使用第二个URL将加密的代码转换为带有标点符号的NON SENSE英语单词。
这是使用javascript完成的,它完美无缺。我的一半工作都是在这里完成的。
现在我将使用表单将带有标点符号的NON SENSE英语单词发送到我的服务器。我不知道如何使用PHP在服务器端解密数据,因为它是通过JavaScript转换的。
我不希望任何人读取通过网络传输的数据。我只希望通过网络传输英语单词,没有别的。
你知道类似的东西吗?在使用JS / JQuery发送和使用PHP解码之前,隐藏表单(仅限带有标点符号的英语单词)。
或者任何人都可以建议如何使服务器端部分工作从上面的链接。??
欢迎任何帮助。
由于
我不考虑可以在JS中看到加密技术的黑客或描述符。我知道他们可以,但我会与正常的非技术人员打交道。
我想要的只是一个普通人看到网络的数据流量 他/她应该只看到英语单词(非意义也很好)而不是 实际节目/文字。
答案 0 :(得分:0)
我在PassLok应用程序中添加了一个文本隐写组件,可能会给你一些想法。该代码位于:https://github.com/fruiz500/passlok。你看一下代码,隐写术函数就在一大段文本(包含部分GNU 3.0许可证)之后,它被用作默认的covertext。
有两种方法,都完全在javascript中实现,因此不需要连接到服务器。 Words方法用明文中的一个单词替换明文中的每个字符,导致乱码英语(或者你的covertext是什么;它也适用于非拉丁语言),随机标点符号。 Spaces方法首先将每个字符编码为二进制,然后根据编码将一个或两个空格替换为covertext中的空格,从而产生具有不规则间距的可读文本。收件人不需要使用Spaces方法获得隐藏文本,但最终结果要长得多。
为了解决亚当的批评,即这不会提供真正的安全性,PassLok首先检查明文是否在应用Words或Spaces方法之前通过其他方法(或似乎是)加密。
实现的细节很复杂,所以最好看看源代码并看看它是如何完成的。它有很多评论。
答案 1 :(得分:0)
您提供的链接实际上执行的功能相对简单。说实话,加密位不是很令人印象深刻。你应该使用一个支持良好的javascrypt加密库,你可以在这里阅读更多信息:http://code.google.com/p/crypto-js/
关于第二个链接,我认为所有这一切都是采用随机的文本片段,看起来像明文英文,并将信息嵌入随机位。结果是一条看起来几乎可以理解的消息。说实话,这比使用基于图像的隐写术更加可疑(检查:http://oakes.github.io/PixelJihad/about.html)。然而,由于大多数图像存在某些自相关属性,因此基于图像的隐写术很容易被检测到。