照片元数据:哪些 EXIF 字段真的会暴露你
一个名叫 IMG_4821.jpg、看起来毫无特别之处的文件,可能带着几百字节的结构化信息:在哪里拍的、
什么时候、用的哪台设备。这就是 EXIF,它在文件内部而不在文件名里,所以有没有它,表面上完全一样。
EXIF 的大部分是相机参数琐事。真正有信息量的只有几个字段,其中一个是坐标。正因如此, “照片会泄露位置”这类笼统建议才既模糊又半错。
真正有信息量的字段
| 标签 | 典型取值 | 暴露了什么 |
|---|---|---|
GPSLatitude + GPSLatitudeRef | 37/1 47/1 19/100、N | 拍摄地点 |
GPSLongitude + GPSLongitudeRef | 122/1 25/1 41/100、W | 同一点的东西方向 |
DateTimeOriginal | 2026:10:06 14:32:11 | 精确到秒的时间 |
Make / Model | Canon / EOS R6 Mark II | 哪台设备拍的 |
LensModel | RF24-105mm F4 L IS USM | 镜头,可用于认领 |
Artist | 你的名字 | 常是文件里唯一的人名 |
Copyright | © 2026 你的名字 | 值得保留 |
Software | Adobe Lightroom 14.2 (Macintosh) | 后期工具链与系统 |
Orientation | 6 | 顺时针旋转 90° |
MakerNote 是厂商私有区块,没有公开文档,各家格式不同,逐个改写标准标签的清理工具很容易漏掉它。
这些字段里并没有地址或账号标识;暴露面比标题党说的小得多,就是一个坐标加一个精确的时钟读数,
同时待在一个文件中。
经纬度是怎么拼出来的
GPSLatitude 不是一个小数。它是三个无符号有理数 —— 度、分、秒 —— 正负号来自另一个配套标签:
纬度 = 37/1 47/1 19/100 -> 37 + 47/60 + 19/3600 = 37.788611
latitudeRef = "N" -> +37.788611
经度 = 122/1 25/1 41/100 -> 122.428056
longitudeRef = "W" -> -122.428056
半球标签是承重的:忽略它的读取器会给出地球另一端的镜像位置,这类缺陷确实出现过。精度也很充裕: 小数六位约等于十分之一米,只保留两位仍然落在约一公里内,足够定位到某栋楼。
别漏了内嵌缩略图
EXIF 通常在同一个区块的独立目录里存一张小预览图,常见尺寸接近 160×120。它是同一场景的一张完整 可解码照片,也能活过一次做一半的清理:只清空标签数值、却没有删掉缩略图目录的工具,仍然会把照片 的可看见副本发出去。
截图、聊天压缩图、相机原图
一个文件到底有没有 EXIF,取决于它是谁生成的,这也是笼统建议崩塌的地方。
- 相机或手机相册: EXIF 完整,开了定位就带 GPS。很多手机默认写入位置;部分安卓定制系统在分享 面板里提供位置开关,但只对当次分享生效。
- 截屏: 通常没有,因为根本没有相机参与。macOS 与 iOS 写出的是 PNG,而 PNG 只在有人主动写入时 才带元数据块。
- 聊天软件压缩过的图: 应用解码再编码,原图的标签连同分辨率一起消失。
- 以文件形式发送: 字节原样复制,所有标签都在。
- 从云端相册下载”原图”: 元数据保留,因为这项功能承诺的就是字节一致。
同一个人手里,既可能有一张干净的图,也可能有一张精确显示自己住哪的图。决定因素是传输链路。
删元数据不等于另存为
元数据位于 JPEG 文件头与压缩图像数据之间的一个段里,Comment、ICC 色彩配置和缩略图也住在这一带。
删掉这个段、把图像数据原样复制出来,得到的像素与原文件逐位相同:没有任何东西被解码,因此不可能
被劣化,体积变化只是被删掉的那一块。
经过编辑器重新编码是另一回事。像素会被解码并重新量化,所以无论你有没有选质量档位,都一定有某个
质量值被套用;导出可能重采样到新尺寸;色彩配置可能被丢弃,也可能被烘焙进画面。标签往往是被部分
改写而不是清空:编辑器自己的 Software 值、一个全新的时间戳、以及 Orientation —— 要么被换算进
像素,要么原样留着,等着被第二次旋转。
这就是”另存为”不能当作可靠清理手段的原因:另存为新文件本质上是一次编码,既付出画质,又替你决定了 元数据的去留。
不能指望平台帮你删
大型社交平台与聊天服务都会重压缩上传的图,而重压缩会顺手丢掉 EXIF —— 这是副作用,不是隐私功能。 提供”下载原图”的服务则完整保留。有的渠道抹掉位置却保留机身信息,有的只缩放却留着注释块。行为本身 还会随时间变化,平台也很少公布值得信任的元数据策略。唯一可靠的办法,是把帖子上的文件下载下来读 一遍标签。
清理之后还剩下什么
- 文件名。
IMG_20261006_1432.jpg用IMG_4821.jpg不会的方式写进了时间戳,自己动手改成中性名称。 - 画面本身的内容。 窗外的视角、信箱上可读的地址、工牌、车牌。删标签对这些毫无办法。
- 已经发出去的副本。 清理本地文件,处理不了 CDN 缓存里或收件人相册里的版本。
发给陌生人之前检查这五项
- 读标签。只要存在
GPSLatitude或GPSLongitude,就删掉。 - 找
Artist、Copyright,以及包含你的用户名或电脑名的Software值。 - 单独检查内嵌缩略图,确认清理工具删掉的是整个区块,而不只是几个值。
- 决定
DateTimeOriginal的去留。挂牌出售或收货凭证上,日期往往有用且无害;要避免的是精确到秒的 时间与坐标同时出现。 - 改文件名,再看一眼画面里有什么可读的东西。
第一步是所有人都会跳过的那一步,因为标签在被解码之前完全隐形。在你已经打开的这个页面里把它解码 出来,就只是五秒钟的事,不必为此把私人照片交给别人的服务器。