什么是隐写术?
隐写术(Steganography)是将秘密信息隐藏在普通载体中的技术。本工具使用
LSB(最低有效位)算法,将信息编码到图片像素的最低位,修改量极小,肉眼无法察觉。
第一步:选择载体图片
⚠️ 重要提示:
生成的图片必须保存为 PNG 格式。JPEG、WebP 等有损压缩格式会破坏隐写数据,导致提取失败。
✅ 隐写成功!信息已隐藏到图片中
选择包含隐藏信息的图片
📖 图片隐写术完整指南
什么是图片隐写术?
隐写术(Steganography,源自希腊语"隐藏书写")是一种将秘密信息隐藏在普通载体中的古老技术,与加密术不同,隐写术的目标不是让信息"难以破解",而是让信息的"存在"本身就不被察觉。
现代数字隐写术的常见形式包括:在图片中隐藏文字、在音频文件中嵌入数据、在视频每一帧里藏信息等。
LSB 算法原理
本工具使用 LSB(Least Significant Bit,最低有效位)算法。每个像素由 R、G、B
三个颜色通道组成,每通道用 8 位二进制(0–255)表示。
修改每个通道的最低 1 位,对颜色的影响仅为 1/256,肉眼完全无法察觉。通过这种方式,一张
1000×1000 像素的 PNG 图片可隐藏约 375 KB 的文字信息。
例如,像素值
11001010
(十进制 202)修改为
11001011
(十进制 203),颜色变化不到 0.4%,肉眼根本分辨不出差异。
数据格式说明
本工具编码的数据格式为:
-
STEG
:4字节标记头,用于验证图片是否包含隐写数据
-
8位长度
:记录消息的字节长度(支持最多 99999999 字节)
-
消息内容
:UTF-8 编码的文字内容
XOR 加密保护
除了 LSB 隐写,本工具还支持 XOR
加密:在写入像素之前,用密码对文字进行异或加密,提取时需要输入相同密码才能还原内容。这样即使他人知道图片有隐写,没有密码也无法读取。
XOR
加密的优点是速度极快、无需密钥管理,适合轻量级加密场景。对安全要求高的场景,建议先用
AES 加密文字,再进行隐写。
为什么必须用 PNG?
PNG 是无损压缩格式,像素值保存时保证分毫不差。而 JPEG
使用有损压缩,保存时会对像素值做轻微修改(DCT 变换),会直接破坏 LSB 中的隐写数据。
规则:
载体图片推荐 PNG;生成的隐写图片必须保存为 PNG
,不得转为 JPEG 或其他有损格式。
隐写容量计算
可隐藏字符数 ≈ 图片像素数 × 3 ÷ 8 − 12(标记和长度占位)。常见尺寸参考:
-
500×500:约
93 KB
文字
-
1920×1080:约
777 KB
文字
-
4K (3840×2160):约
3.1 MB
文字
常见应用场景
- 隐秘传递敏感联系方式或密码
- 数字水印:在图片中嵌入版权信息
- 隐写术研究和学习
- 在公开平台发布包含私信的图片
- 信息安全竞赛(CTF)题目
安全注意事项
- JPEG 重压缩、图片裁剪、缩放会破坏隐写数据
- 截图或二次扫描会丢失像素级数据
- 专业隐写分析工具(steganalysis)可统计检测 LSB 异常
- 高安全场景建议叠加 AES 加密
常见问题 FAQ
Q:图片变大了吗?
A:文件大小基本不变,PNG 的 LSB 修改不影响文件体积,只是像素内容有微小变化。
Q:为什么提取失败?
A:常见原因:①图片在保存或传输时被转为
JPEG;②图片被压缩/裁剪;③勾选了解密但密码错误;④图片本来没有隐写数据。
Q:手机发送图片会破坏数据吗?
A:微信、QQ 等 APP 会压缩图片(转
JPEG),会破坏数据。建议通过"文件"形式发送,或使用原图发送选项。
Q:支持 JPEG 载体吗?
A:可以加载 JPEG 作为载体,但必须将结果保存为 PNG。如果再次保存为 JPEG,数据会丢失。
标签:
隐写术
LSB算法
PNG图片
XOR加密
信息隐藏
数字水印
CTF工具