大概类似于隐写术,图片看起来完全正常,但是在像素中藏有一些信息。
主要的冲突在于如何不影响图片大致的显示的内容把想要的信息写进去。
感觉如果是左右对称的图,能够好做一点,微调其中一部分,接受者做做减法就能出来了,但是如果是随便一张图片呢?
不是要贴吧那种图种,或者什么 txt 打开图片后面附一句的那种方法...
不知道表达清楚自己的意思没有。
我就是上班实习太闲了。。。
1
tokoy 2016-09-07 15:21:06 +08:00
为啥我想到了图种...tag 里也有啊 要不试试在图片里隐藏个二维码试试
|
2
chiv2 2016-09-07 15:23:56 +08:00
不在意有损的话我记得有好多办法,课上听完就忘了。
|
3
breeswish 2016-09-07 15:46:47 +08:00
例如每个像素每个颜色分量的最低一个二进制位用来存储一个信息的二进制比特,那么对图片每个像素每个颜色分量的影响最多只有 1/256 人眼是看不出来的
|
4
mdluo 2016-09-07 15:49:21 +08:00
数字水印,网上一大堆论文
|
5
xenme 2016-09-07 15:50:53 +08:00
同上,数字水印,还会有很多人吐槽的鲁棒性的翻译。
牛逼的还可以抗裁剪,抗污损等。 |
6
luban 2016-09-07 15:51:15 +08:00
我还记得以前图片里面还能存种子
|
7
zzNucker 2016-09-07 15:53:58 +08:00
对人眼来说像素挺冗余的,细微的改变看不出,信息隐写论文都一大堆了
|
8
Mithril 2016-09-07 15:54:31 +08:00
就是加水印而已
简单的你可以针对图像格式本身做,像 PNG 一类的后面追加个自定义数据段就行了。反正最后也都不会显示出来。 针对像素的话,比如你先做个傅里叶,然后改掉一部分高频区,把你的数据写进去,再变换回来其实图像看起来差不了多少。 |
9
imn1 2016-09-07 16:12:06 +08:00
sudo apt install steghide stegosuite stegsnow
|
10
zhanglintc 2016-09-07 16:56:30 +08:00
我第一反应就是图中, 结果发现楼主的意思要高级一点...
|
11
zhanglintc 2016-09-07 16:56:39 +08:00
图种, 写错了
|
12
latyas 2016-09-07 17:34:17 +08:00
RGBA 通道都可以写东西,比如可以在 alpha 通道写东西,但是屏蔽掉 A 通道
|
13
ylsc633 2016-09-07 17:58:17 +08:00 1
说个故事,大学上课无聊,有人发了个帖子,说内涵图! 什么少女背影啥的,这些我们都知道了!!!
直到有个图 是个草地上有个 足球 , 我们几个老司机 把这张图看了无数遍,地面草用 远视 近视 斗鸡眼看法都看了,还是没看出来 只要有个人说 你们把图 右键下来 修改扩展名 为 rar 然后解压。。。。。 全是种子。。。。。。。。。。。。 |
14
helloworld2010 2016-09-07 18:06:44 +08:00
类似网络协议栈咯,图片文件也是有格式协议的吧,在空闲的头部实现一个新的协议(规定),用来隐藏信息(顺便还可以搞个加密啥的)……
现在手机拍完照后,会在照片里保留拍摄地的经纬度,就是这个理吧 |
16
9hills 2016-09-07 18:13:40 +08:00
提高一下难度,怎么存储信息让图片打印出来依然不丢失信息
|
18
xinnix 2016-09-07 18:33:06 +08:00
dct 变换
|
19
wangyongbo 2016-09-07 18:39:08 +08:00
|
21
RIcter 2016-09-07 18:41:19 +08:00 1
你们这些不打 CTF 的(逃
http://appleu0.sinaapp.com/?p=501 |
22
ebony0319 2016-09-07 18:42:26 +08:00 via Android
你说的是图种吧。老司机都懂得技术。
|
23
paw 2016-09-07 18:45:12 +08:00
wow 截图。,。
|
25
DarryO 2016-09-07 19:18:24 +08:00
提供一个以前看到过一个很 Naive 方法,也属于正式的隐写术,不过鲁棒性什么的比较差,主要是实现很简单。
大致就是把图片里所有的像素值(RGB 的某个通道或者某些通道异或之类的,或者灰度图片的灰度值)全部置为偶数(或奇数),然后把自己想要嵌入的内容当作点阵数据,把对应的像素点的像素值改为奇数.... 因为是一个像素值的差别,所以对图像的影响不大。当然,能够嵌入的信息也比较少,传输时可能造成的信息损失也比较大。 |
26
codehz 2016-09-07 22:30:46 +08:00
@helloworld2010 你想说的是 Exif 信息,但是由于各种原因,不少网站在存储的时候会把 exif 消除。。。
|
28
Bobbyli 2016-09-08 00:04:15 +08:00 via Android
二进制
|
29
lee015 2016-09-08 00:11:36 +08:00 via Android
二进制拷贝可以,把压缩包拷到图片文件后面,图片正常显示,改成 rar 后缀能正常解压。
|
30
aprikyblue 2016-09-08 00:48:43 +08:00 via Android
下意识看了一眼发帖时间,总感觉你这个帖子内容在 v2 看过。。
|
31
BGLL 2016-09-08 01:24:09 +08:00
图片隐写嘛
简单的直接在像素位写数据, 8 个比特,从低位写起,写 3 、 4 位对画质影响都不会很大 比如这张有马赛克的 200 KB 的 PNG 图: 里面就在像素位写入了一张无码的图片 56 KB 的 JPG 图片: (图里的工具是以前自己写来玩的: http://nullice.com/imagein) 复杂点可以把数据写到频域,就可以抗扰了,再用些别的抗干扰算法,剪裁、打印、拍照都可以识别,不过能存储的数据量就小得多了,通常就用作数字水印了 可以看看开源的隐写工具 OpenPuff : http://embeddedsw.net/OpenPuff_Steganography_Home_zh.html |
32
chocotan 2016-09-08 12:09:26 +08:00
前一阵子还在微博看到了, ps 就可以弄,大约是楼上谁说的什么通道
|
33
chocotan 2016-09-08 12:16:56 +08:00
@chocotan 记错了,就是 v2 https://www.v2ex.com/t/303711
|
34
krizex 2016-09-08 17:08:37 +08:00
雷锋图。。。
|