WhatsApp消失消息的工作原理 | AI生成和翻译
问题:WhatsApp 中的消失消息是如何工作的?
答案:
消失消息会在发送后根据设定的计时器(24 小时、7 天或 90 天)自动删除。其机制如下:
计时器由发送方控制,按聊天设置(或默认设置)生效
- 你可以针对单个对话启用,或为新聊天设置全局默认值。
- 启用后,计时器从发送时间开始计算,而非读取时间。例如,周一发送的 7 天消息将在下周一消失,无论接收方是否已打开。
它是消息信封中的元数据,由客户端强制执行 WhatsApp 使用 Signal Protocol 实现端到端加密(E2EE)。消失消息设置作为协议层字段传播。相关要点有两个:
- 一个
ephemeralSettingTimestamp/ 过期字段随消息一起传输,使聊天中的所有客户端对计时器达成一致。 - 每个客户端运行本地过期任务,在计时器触发时从其自己的 SQLite 存储(Android 上为
msgstore.db)中删除消息。
由于强制执行在客户端侧,其保证是协作性的,而非加密性的。服务器不持有明文(它也无法持有——因为 E2EE),但没有任何机制能阻止不配合的客户端保留消息。
它无法防范的情况
- 截图 / 屏幕录制 — 标准消息无法检测或阻止(与“阅后即焚”不同,后者在支持的客户端上会阻止截图)。
- 过期前转发 — 转发消失消息后,目标聊天中不会保留计时器。
- 引用回复 — 引用回复可以保留被引用文本,即使原消息已过期。
- 备份 — 在删除前已写入云端或本地备份的消息可能仍然存在。
- 通知 — 消息预览文本可能残留在操作系统通知日志中。
- 修改版/破解版客户端 — 可直接忽略过期字段。
群聊 任何成员都可以更改计时器(除非管理员将其限制为仅管理员可改)。更改仅对之后的生效,不溯及既往。
威胁模型总结 消失消息减少了诚实设备上历史消息的被动累积。它们并非针对有动机的接收方的防御手段。如果需要更强的保障,架构上的真相是:你无法强制删除不受你控制的设备上的数据——接收方的客户端持有明文,因此任何“自毁”机制都是用户体验上的约定,而非安全原语。“阅后即焚”稍强一些(仅渲染一次 + 阻止截图),但仍可通过第二台相机绕过。
参考来源:
