图片隐私自检
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f1b049da/ybqn2026724。
技能介绍
问题:照片里藏着你没注意的元数据
手机拍的现场照片、随手翻拍的名片,在 JPEG/TIFF 等格式里通常带着一串 EXIF 元数据。除了拍摄时间,还可能是经纬度、机型、镜头参数。一张带 GPS 的名片背面图上传后,拍摄地点就可能和客户信息绑在一起。这类泄漏往往没有报错,只是在你点「上传」那一刻静默发生。
这个技能要解决的问题很具体:上传之前,先看清楚这张图到底带了哪些元数据。
它如何工作
核心是一次纯本地的元数据解析,整条链路不经过任何第三方解析服务:
- 使用
exifr读取图片的 EXIF 块,拿到关键字段。 - 至少检测:GPS(纬度/经度)、
Make/Model(拍摄设备)、DateTime(拍摄时间)、Lens(镜头,若存在)。 - 对结果做风险分级,输出
risks[],标注高/中两级,并附带原始关键字段摘要。 - 如果图片根本没有可读的 EXIF,会明确返回「未发现可读 EXIF」,而不是返回空数组让人猜。
- 可选提供「导出已剥离元数据的副本」指引,例如通过
canvas重绘或库能力导出新图;技能本身不强制实现清除逻辑。
典型的执行链路是:解析 → 风险分级展示 → 上传流程介入。当出现高风险项时,默认拦截上传,或至少要求二次确认;截图类图片通常没有 EXIF,风险项为空是正常的,不是解析失败。
适用边界
- 只做检测,不做改写。 它告诉你「有什么」,是否清除、如何清除由你决定。
- 不解读、不展示与业务无关的内容。 不包含人脸识别等能力,也不对元数据做语义分析。
- 解析能力取决于 EXIF 块本身。 已经被压缩软件或社交平台剥离过元数据的图片,读不到字段是正常的。
- 风险分级是提示,不是合规结论。 高风险项(如 GPS)建议清除后再上传,但最终处置权在使用者手里。
使用场景
- 外出拍摄客户现场照片后,上传至协作平台前,需检查图片是否携带 GPS 定位信息
- 扫描客户名片背面图并准备上传,需确认是否残留拍摄设备型号等隐私字段
- 上传工作截图前,需判断图片是否仍带有可读的 EXIF 元数据
- 批量收集现场照片后,需筛查哪些图片存在高风险隐私信息,优先剥离后再发布
适合人员
- 经常上传现场照片的运维工程师,需要避免图片携带定位信息上传到外部平台
- 处理客户资料的行政人员,需要确保名片等扫描件不泄露拍摄设备型号
- 负责对外发布内容的运营人员,需要在上传前筛查图片是否包含隐私元数据
- 开发图片上传功能的前端工程师,需要集成上传前的 EXIF 隐私自检流程