WhatsApp Scam Alert 是一项面向陌生联系人消息的可选端侧机器学习功能。它真正值得研究的部分超出了本地分类:Meta 同时给遥测、模型交付、实验分组和用户日志建立验证链。本文把这条验证链整理为一套可复用的端侧 AI 审查方法。
证据核验日期:2026 年 8 月 13 日。Scam Alert 处于有限 Beta,多项透明度工件仍属于后续承诺。
阅读时间:约 9 分钟 · 全文约 3100 字
核心结论
- 消息分类在设备上完成,消息内容不会为分类离开设备,识别结果也不会被自动上报。
- 遥测链只发送设备本地汇总的计数,通过 OHTTP 和匿名凭证进入经过证明的机密虚拟机,再进行 k 匿名抑制和差分隐私处理。
- 客户端在发送前核验运行代码和隐私参数。证明失败或参数低于本地门槛时,数据通道关闭。
- 模型清单由 Cloudflare 签名并写入第三方追加式账本,客户端再检查新鲜度和每个模型资产的 SHA-256。
- 端侧推理负责缩小隐私暴露面,可验证性才是整套系统的信任边界。
端侧推理只解决第一层隐私问题
端到端加密保护消息从发送者到接收者的传输过程。消息在接收者设备上解密后,诈骗识别又引入一组新问题:谁能读取内容,哪些信号会离开设备,模型能否被悄悄换成针对特定用户的版本。
Scam Alert 先把分类留在设备上。用户开启功能后,设备下载模型,对陌生联系人发来的消息进行概率分类,依据包括对话结构和语言信号。命中后,警告只对接收者可见。用户可以拉黑、举报、继续对话或信任该聊天。
识别动作本身不会上报消息,也不会上报发生过一次命中。用户把聊天标记为可信时,可以另行选择把最近收到的五条消息交给 WhatsApp 改进准确率。这里存在明确的用户动作,而非隐藏在遥测中的内容上传。
这只是第一层。只要系统还需要测量模型效果、更新模型和分配实验,数据暴露与定向攻击就可能从其他路径重新进入。
把遥测当作一套独立安全系统
Meta 表示 WhatsApp 需要两类近似总体信号:模型展示了多少次警告,以及用户选择信任、拉黑或举报的动作计数。Scam Alert 因此先在设备上把事件转成计数,再进入机密联邦分析管线。
| 层级 | 约束结果 | 验证信号 |
|---|---|---|
| 设备 | 原始事件留在本地,只有计数进入管线 | 硬编码的数据范围、保留期和资源上限 |
| 网络 | 分析服务器看不到设备 IP | OHTTP 中继与匿名客户端凭证 |
| 会话 | 数据只发给获批准的机密工作负载 | RA-TLS 证明与第三方代码日志 |
| 处理 | 单设备指标留在 TEE 内 | 无状态 orchestrator 与 aggregator CVM |
| 发布 | 小样本和个人贡献被遮蔽 | k 匿名抑制、差分隐私、发布预算 |
| 恢复 | 崩溃恢复不产生运营方可读副本 | 仅同一受证明二进制可解密的检查点 |
最关键的控制发生在上传前。客户端会核对 TEE 中运行的二进制,也会检查差分隐私 epsilon、delta 和 k 匿名阈值是否符合本地门槛。任一检查失败,客户端拒绝发送。隐私因此成为机器执行的前置条件,而非一份由服务器运营方自行遵守的政策。
Meta 在 NSDI 2025 发表的 PAPAYA Federated Analytics Stack 论文,证明了这套基础技术可以在大规模生产系统中组合本地最小化、TEE、分布式聚合、差分隐私和 k 匿名。PAPAYA 可以支持技术谱系和可行性,却不能独立证明 2026 年 8 月这条 WhatsApp 新管线已经完整实现博客描述的每项属性。Scam Alert 仍需自己的公开工件和复核结果。
把定向模型交付纳入威胁模型
如果运营方仍能悄悄给某一名用户下发特制模型,消息留在本地也只形成一项较弱保证。Scam Alert 因此把模型交付纳入验证范围。
模型发布前,服务器计算权重、tokenizer 和其他资产的 SHA-256,生成带版本和时间戳的 JSON manifest。manifest 摘要交给 Cloudflare 使用 Ed25519 密钥签名。Meta 表示自己不持有这把签名密钥。签名摘要先写入第三方追加式透明账本,随后模型资产才上传 CDN。
客户端加载模型前执行四项检查:
- 重新计算 manifest 摘要。
- 使用硬编码的 Cloudflare 公钥验证签名。
- 核对摘要已进入透明账本,并执行新鲜度检查。
- 下载资产,逐一比较 SHA-256 与 manifest。
任何一步失败,模型都不会加载。下载请求同时使用匿名凭证和 OHTTP,使模型端点既拿不到直接身份,也拿不到客户端 IP。CDN 只提供已经公开的文件,选择哪个模型则由客户端完成。
实验也沿用同一约束:每个实验模型都要先进入账本;客户端用本地随机数自行分组;实验组发布后只能扩大,不能缩小;组规模还要满足最低门槛。这样,针对单人的实验从一次安静的服务端配置,变成会在公共记录中留下痕迹的系统变更。
可验证性是一条链,而非一个功能
整套架构可以压缩为两份验证合同:
消息留在设备
-> 原始事件转为受限计数
-> 客户端检查隐私参数
-> 客户端证明机密工作负载
-> 匿名传输移除直接网络身份
-> TEE 聚合并抑制小样本
-> 只有带噪声的总体统计离开边界
模型清单被签名并写入账本
-> 客户端检查签名、账本记录和新鲜度
-> 客户端校验全部资产哈希
-> 检查通过后模型才运行
每个箭头都需要证据。TEE 缺少客户端证明时,用户仍需相信运营方部署了正确代码。差分隐私缺少发布预算时,多次查询可能累积泄露。公开模型哈希缺少新鲜度检查时,旧模型可以被重放。透明账本缺少客户端强制核验时,只是一份文档。
许多功能报道忽略了这一区别。隐私结论来自控制组合与失败关闭,而非来自任何一个技术名词。
当前证据与未来承诺必须分开
Meta 8 月 12 日的技术文章建立了一份带日期的架构说明,并确认功能进入有限 Beta。文章还描述了 Beta 前的外部测试:安全研究者获得 APK,检查是否存在消息外传和自动上报;AI 与机器学习研究者获得模型权重,检查模型是否只面向诈骗识别。用户也可以请求 Scam Alert 活动信息,查看分析结果和模型版本。
文章没有公布上线国家、平台、用户数量、模型结构与大小、precision、recall、误报率、实际 epsilon、delta、k 值,以及具名审计结果。文中说研究者可以取得精确模型进行分析,却没有提供公共模型下载地址。这些缺口不会推翻架构设计,但会限制当前可以独立检验的声明范围。
更完整的独立验证条件仍在建设。Meta 表示后续会:
- 在 App 内展示发送给机密分析管线的数据、隐私参数和会话建立细节;
- 发布 CVM 二进制和隐私相关组件源码;
- 发布详细工程白皮书;
- 把机密分析管线和模型行为纳入更大的 Bug Bounty 范围。
在这些工件公开,并能够与生产环境证明值重复匹配之前,外部观察者可以验证协议描述和 PAPAYA 技术基础,还无法完整复现 Scam Alert 的实现声明。这是有限 Beta 的合理状态,也应持续保留在安全评估结论中。
一份可复用的端侧 AI 审查清单
本地分类器、输入法、语音功能和健康模型都可以复用以下八个问题:
- 哪些原始数据严格留在设备?
- 服务器即使看不到内容,能否知道某个事件发生过?
- 发送前在设备上完成了什么聚合?
- 客户端能否在上传前核验处理代码和隐私参数?
- 网络路径是否把授权、身份和 IP 分开?
- 运营方能否通过模型、实验或分析任务定向某个用户?
- 证明、签名、哈希、新鲜度或组规模检查失败时,哪些通道会关闭?
- 用户和独立研究者能否通过稳定日志与公开工件重建事实?
这套方法延续了 Meta Labyrinth 备份架构中的验证逻辑。Scam Alert 把它推进到持续运行的机器学习闭环:推理、测量、实验和交付都有各自的证据边界。
真正落地时,可以把这八个问题直接改成发布检查项,并按模型版本保留证明值、账本记录、manifest、资产哈希与隐私配置。这样,有限 Beta 中的架构承诺才能逐步演化为可重复验收的生产控制。
常见问题
WhatsApp 会把我的消息发给 Meta 做诈骗分类吗?
按照有限 Beta 的当前设计,分类在设备上完成,消息内容不会为分类离开设备。用户仍可以主动举报,也可以在把聊天标记为可信后另行选择共享最近五条消息。
端到端加密能阻止所有 WhatsApp 诈骗吗?
端到端加密保护传输机密性,却无法证明发送者诚实。Scam Alert 增加的是接收端对陌生联系人可疑消息的分类。
Meta 能否只给某个人下发不同模型?
这套协议的目标就是阻断该路径:匿名请求、公开记录实验版本、本地随机分组,以及签名、账本、新鲜度和资产哈希检查共同约束定向交付。全部承诺工件公开后,独立验证强度还会提高。
使用差分隐私是否意味着 Meta 完全收不到数据?
WhatsApp 会收到经过安全聚合、小样本抑制和差分隐私加噪后的近似总体统计。它与零数据、消息内容或逐用户记录是三个不同概念。
现在能否独立复现完整架构?
当前只能完成部分复核。Meta 技术文章和 PAPAYA 论文已经公开,部分外部研究者审查过早期组件。Scam Alert 的 CVM 镜像、隐私相关源码、详细白皮书和扩展审查计划截至 8 月 13 日仍属于承诺项。