zenconverter 中文文档 下载 App

JPG 原地 EXIF 擦除与备份恢复

为什么独立出来做

元数据安全不是格式转换的一部分——它是独立的隐私工具套件,不生成新文件、不走任何转换引擎。ZenConverter 把它单独放在主界面的"隐私工具"区域,而不是埋在某个格式转换选项里。

设计决策很简单:元数据清理应该是一个"一按就好"的独立操作,不是格式转换的附加选项。

JPG 元数据擦除原理

不重编码,原地操作

JPG 文件是由一串段(segment)组成的:SOI → APP0 → APP1(EXIF/XMP)→ APP2(IPTC)→ DQT → SOF0 → DHT → SOS → EOI。EXIF 元数据存储在 APP1 段里。

ZenConverter 做的事是直接从文件里删掉 APP1 段的二进制内容,而不是解码 → 修改像素 → 重新编码。这样:

保留什么,移除什么

元数据段处理说明
APP1 (EXIF/XMP)✅ 移除GPS 坐标、拍摄时间、相机型号/参数、定位数据——隐私敏感
IPTC/Photoshop✅ 移除版权、作者、评论等(非隐私但一并清理)
APP0 (JFIF)❌ 保留JPEG 格式必需的识别段
APP2 (ICC)❌ 保留色彩配置表,移除可能导致颜色异常
Adobe❌ 保留Adobe 显示标记

清理后的 JPG 仍然是标准 JPG 文件,任何浏览器/查看器都能正确显示。

备份与恢复

移除的元数据不会直接丢掉——会备份到应用私有目录(data/org.zenconverter.app/files/privacy/)。

恢复条件

恢复不是"按文件名找回",而是双重匹配:

  1. 当前选中的 JPG 的像素 SHA-256 哈希值 = 备份时的像素 SHA-256;
  2. 当前选中的 JPG 的宽高尺寸 = 备份时的宽高尺寸。

两个条件都满足 → 认为是同一张图,可以恢复元数据。

为什么用像素哈希

因为 JPG 清理前后像素完全不变(原地删 segment),所以 SHA-256 不变。这比"按文件名匹配"可靠得多——文件可能被重命名过、复制过、移动过,像素哈希始终唯一标识这张图。

恢复的边界

使用场景

场景推荐
手机拍的私人照片想分享到社交平台先擦除 EXIF(去掉 GPS 和拍摄时间)
工作文档里嵌入的 JPG 要发给客户擦除 IPTC 里的版权信息
擦除后想找回 EXIF 信息(比如回忆拍摄时间)用备份恢复(前提是图没被改过)

为什么不在图片互转里顺便做

ZenConverter 的图片互转路线不自动擦除元数据。两个原因:

  1. 图片互转的核心功能是"改格式/放大/压缩",擦元数据是独立操作;
  2. 如果你想擦元数据又想转格式,先选"隐私工具 → 擦除 EXIF"再选格式转换,两步独立、互不耦合。

你也可以反过来:先转格式再擦元数据——图片互转不自动拷贝元数据,所以转格式后的输出文件本身就没有源元数据。

相关页面

模型下载管理界面
ZenConverter 设置里的模型/字体下载管理区域