🔒 图片暗水印工具

LSB 隐写术 · 纯前端处理 · 数据不离开你的设备

1. 上传原始图片

📁
点击或拖拽图片到这里
支持 JPG / PNG / BMP / WebP

2. 水印设置

1 bit
强度越大水印越鲁棒,但图片质量越低。推荐 1 bit(肉眼不可见)。

3. 执行

上传含水印的图片

🔍
点击或拖拽图片到这里
支持 JPG / PNG / BMP / WebP

提取设置

1 bit

🔐 LSB 隐写术原理

LSB(Least Significant Bit)即最低有效位隐写。 每个像素由 R、G、B 三个通道组成,每个通道占 8 bit(值 0~255)。 将水印信息嵌入到像素的最低位(第 0 bit),像素值最多变化 ±1, 肉眼完全无法察觉


📐 嵌入过程

1. 将水印文本转为二进制比特流
2. 遍历图片像素的 RGB 通道
3. 将每个通道的最低位替换为水印比特
4. 输出处理后的图片


📊 容量与限制

-
1bit 容量 (每像素)
-
可嵌入字节数 (1000×1000)
不可见
1 bit 强度视觉影响
⚠️ 脆弱
JPEG 压缩可能破坏

⚠️ 注意事项

• 建议使用 PNG 格式输出,JPEG 有损压缩会破坏 LSB 水印
• 强度 1 bit 最安全但抗攻击能力弱;强度 2~3 bit 更鲁棒但可能出现可见痕迹
• 提取时必须知道嵌入强度,否则无法正确还原
• 本工具所有处理在浏览器本地完成,不会上传任何数据到服务器


🛠️ 技术实现

使用 HTML5 Canvas API 直接操作 ImageData 像素数据。 水印编码:UTF-8 文本 → 字节数组 → 二进制比特流 → 嵌入像素 RGB 通道。 安全校验:嵌入前后添加 32 字节 magic header 用于验证。