下午工作不饱和(明明很饱和……)写的。功能就是把一段文字信息写进图片里。使用 canvas 实现所以只能在支持 html5 的浏览器上用。库不依赖任何其他 JS 库。
特点:
DEMO : http://zeruniverse.github.io/CryptoStego
Source: https://github.com/zeruniverse/CryptoStego
![]() | 1 imn1 2016-05-13 17:33:01 +08:00 直接感谢 |
![]() | 2 dapang1221 2016-05-13 17:33:19 +08:00 已 Star ,老司机的发车神器 |
![]() | 3 zzy8200 OP @dapang1221 哎呀 你们不要说出来啊 闷声发大财…… |
![]() | 4 kokdemo 2016-05-13 17:40:27 +08:00 老司机是厉害,就是这个界面磕碜了点…… |
![]() | 5 50vip 2016-05-13 17:41:48 +08:00 |
![]() | 6 zzy8200 OP @kokdemo 我就是来展示下我的库么……而且匆匆忙忙写的,甚至还没 debug 过 gg …… |
![]() | 7 rubyvector 2016-05-13 17:51:18 +08:00 致敬原创党.已收藏,感谢哟 |
9 ghostheaven 2016-05-13 19:03:06 +08:00 via Android 大学上过一门课,就是信息隐藏( information hiding ),原理差不多,不过是修改离散变换后数据,然后再逆变换回来。另外需要做一些容错,并添加高斯噪音。加密解密需要一个 key , key 不正确的时候,由于噪音的存在和这种加密的方法,根本无法判断图片中是否存有信息,防止嗅探。 优点是图片经过简单画质压缩或少量缩放后信息仍可读,没有 key 就无法判断信息的存在,不会被嗅探到图片被加密。 缺点是图片经过裁剪,过度压缩或缩放,就无法读取了。 方法同样适用于音频文件。 |
11 billlee 2016-05-13 19:49:03 +08:00 看了楼主的描述,感觉 JPEG 编码过后什么都没了。试了一下,果然如此。 应该在频域上做的。 |
![]() | 12 imn1 2016-05-13 20:25:42 +08:00 steganography 好像是基于一个著名的“老旧”开源库 steghide(@sf.net) 能隐藏的不仅文本,还有音频 linux , windows 都有 |
![]() | 14 zzy8200 OP @billlee JPEG 这种有损压缩在频域上做也会 gg 吧。你根本不知道会压缩到什么程度。 @ghostheaven 目前就是没有 key 或 key 错误无法知道有没有信息。可能会解密出错误信息 |
![]() | 16 est 2016-05-14 10:43:05 +08:00 外行,不懂。假如用图片隐写术来做一个类似 youtube Content ID 的东西,也就是每个人看到的图片有唯一指纹。用来跟踪图片分发情况。 那么有没有技术能够抵抗 n 个人把图片合并起来算 RPG 平均值的办法? |
18 billlee 2016-05-14 23:20:51 +08:00 |
![]() | 19 SCaffrey 2016-05-15 19:35:13 +08:00 如何实现每个人看到的图片有唯一指纹…… |
![]() | 21 fwy1998 2016-10-13 13:12:38 +08:00 话说...你这个基本不抗截屏..而且也无法自动数据定位...手机拍屏幕直接全跪... |
![]() | 22 fwy1998 2016-10-13 13:13:51 +08:00 阿里内网有这个功能,手机拍屏幕都能读出来...还有很大的进步空间 |
![]() | 23 zzy8200 OP ![]() @fwy1998 阿里内部那个叫数字水印。最后是人眼读的。手机拍屏电脑肯定是读不出来的。。。而且你看阿里那个字那么大,也就只能打个员工号了,存不了多少信息。 |
![]() | 24 fhefh 2017-08-29 16:35:08 +08:00 |