呼吁 Apple:立即为 iMessage 添加 "Disappearing Messages" 功能

Matthew Green 发布于 Apple, messaging 2025年3月1日 2025年3月2日 1,636 字

我是一名密码学家,也是 Johns Hopkins University 的教授。 我设计并分析了用于无线网络、支付系统和数字内容保护平台的密码系统。 在我的研究中,我着眼于密码学可用于提升用户隐私的各种方式。 我的学术网站 BlueSky Mastodon Twitter 热门文章 有用的加密资源 Bitcoin 捐赠 Cryptopals 挑战 应用密码学研究:一个委员会 密码工程杂志(与本博客无关)

这是一个密码学博客,对于任何不是“纯密码学”的文章,我总是觉得有必要道歉。 但实际上我有点厌倦为此道歉了(虽然如果你想要一些硬核密码学内容,这里有很多 这里这里。)

有时候,我不得不提醒我的同事,在现实世界中,我们的工作不是解决令人兴奋的数学问题:而是帮助人们安全地交流。 此时此刻,人们需要很多帮助。 我的许多朋友是联邦雇员或为承包商工作,他们非常害怕因为他们在网上发表的言论而失去工作。 不幸的是,对许多人来说,“在线”包括通过私人短信发送的想法——因此即使是私人对话也变得令人不寒而栗。 虽然这并不是这个世界上人们正在遭受的最糟糕的事情,但它正在我的朋友和邻居身上发生。

(以防你认为这是党派之争:我谈论的许多人都是共和党人,有些是为保护美国人民安全的机构工作的退伍军人。 他们为自己的工作和孩子感到害怕,而这些超越了政治。)

那么让我进入这篇相对较短的文章的重点。

Apple iMessage 是加密的,但它“安全”吗?

我的绝大多数“普通”朋友都是 iPhone 用户,虽然有些人已经开始下载 Signal app(你也应该这样做!),但他们中的许多人更喜欢一种通信协议:Apple iMessage。 这主要是因为 iMessage 只是 Apple 手机上使用的内置消息应用程序。 如果你不知道这个品牌,你只需要知道 iMessage 是你与其他 Apple 用户交谈时得到的“蓝色气泡”。

Apple 宣称 iMessage app 对你的消息进行端到端加密,并且自 2011 年以来一直这样做。 这意味着你所有的消息和附件都使用 Apple 不知道的密钥进行加密。 该公司在这方面一直非常一致,在他们的平台安全指南中讨论了这一点,并且近年来他们甚至扩展了他们的协议以提供 后量子安全性。 (几年前,我的学生和我 在协议中发现了一个错误,但 Apple 迅速修复了它——所以我个人对他们的加密非常有信心。)

这很好。 而且都是真的。

但是 传输中的 加密只是故事的一部分。 在通过其不妥协的后量子安全性传递你的消息后,Apple 允许两件不太好的事情:

  1. iMessage 会永远保存在你的手机上,除非你手动删除它们(这个过程可能需要在双方都进行,而且 非常烦人。)
  2. 如果你启用了该功能,iMessage 会自动备份到 Apple 的 iCloud 备份服务——由于 Apple 在 iPhone 设置期间将其设置为默认设置,因此大多数普通人都会这样做。

这两个功能的结合使 iMessage 变成了 Star-Trek 风格的 Captain's Log,记录了你的一生。 现在搜索一下,我能找到 2015 年的消息。 即使我的大脑告诉我这是三年前的事,但我被可靠地告知这已经是十年前的事了。

现在,虽然上面的消息是无害的,但我希望说服你,这通常是一件非常糟糕的事情。 人们希望进行私人对话。 他们_应该进行私人对话_。 他们的技术应该让他们感到这样做是安全的。 这意味着他们应该知道他们的消息软件会支持他们,并确保那些令人尴尬的或政治性的或冒险的短信不会永远存储在某人的手机或备份中。

我们确切地知道如何解决这个问题,而且其他所有的消息应用程序很久以前就做到了

如果你安装 WhatsApp, Facebook Messenger, Signal, Snap 甚至 Telegram (请 不要!),你会遇到一个解决这个问题的简单功能。 它通常被称为“disappearing messages”,但有时也使用其他名称。

我几乎不好意思解释这个功能是做什么的,因为它就像解释方向盘是如何工作的。 尽管如此。 当你开始聊天时,你可以决定消息应该保留多长时间。 如果你的答案是永远,你不需要做任何事情。 但是,如果这是一个敏感的对话,并且你希望它像电话一样是短暂的,你可以选择一个时间,通常范围从 5 分钟到 90 天。 当时间到期时,你的消息就会被擦除——在你的手机和你正在交谈的人的手机上。

disappearing messages 的一个单独功能是,某些平台会将这些对话从设备备份中省略,或者至少他们会确保过期的消息无法恢复。 这是有道理的,因为 这些对话应该是短暂的:人们显然不希望这些短信在未来出现,因此如果他们提前几天丢失了它们,他们就不会那么生气。

除了基本的技术功能之外,disappearing messages 功能还说明了一些事情。 它向你的用户宣布对话实际上 intended 是私人的和短暂的,它的冲击范围将被控制。 你不必在数年或数月后感到尴尬。 这不仅对于它在 技术上 所做的事情有价值,而且对于它给用户带来的信心也有价值,在经历了科技公司多年的虐待之后,用户已经非常不安全了。

为什么 Apple 不会添加 disappearing messages 功能?

我不知道。 我真的无法告诉你。 这是令人困惑、奇怪和错误的,并且与他们所嵌入的行业完全不协调。 对于一家围绕此类事物塑造其整个品牌形象的公司来说,这尤其奇怪:

总而言之,人们大量使用的几乎所有其他消息传递产品(至少在美国这里)都具有某种 disappearing messages 功能。 Apple 的省略开始变得非常独特。

我确实有一些在 Apple Security 工作的朋友,我试图和他们谈论这个问题。 当我做这样的事情时,他们通常会尽量避免我——有时他们会提到律师——但是当我足够烦人(并且我在他们无法逃脱的情况下抓住他们)时,我偶尔可以让他们回答我的问题。 例如,当我问“为什么你默认不打开 端到端加密的 iCloud 备份”时,他们会给我周到的回答。 他们会告诉我用户害怕丢失数据,他们会告诉我使这些功能像未加密备份一样可用有多么困难。 (我_一半_相信他们。)

当我问起 disappearing messages 时,我得到的是尴尬的叹息和沉默。 没有人能解释为什么 Apple 在这个基本功能上如此落后,即使它已经成为所有其他消息应用程序的标准配置很久了。 因此,我能做的最好的就是推测。 也许 Apple 的高管们担心 如果他们激活这样的安全功能,政府会向他们施压? 也许 Messages app 是用一些过时的语言编写的,他们无法更新它? 也许 iMessage 服务器已经变得有知觉,现在像傀儡一样控制着 Tim Cook? 这些不是很好的答案,但它们比该公司提供的任何答案都好 ——而且 Apple Security 的每个人都知道这一点。

在一个优先级错位的丰碑中,Apple 甚至花时间 为 iMessage 协议添加了后量子加密 ——这意味着 Apple 用户现在可以免受 不存在的量子计算机 的攻击。 然而,用户最私密的秘密仍然可以从他们的手机或备份中读取,只要有人能猜出他们的密码并使用搜索框。 在 2025 年,这并不是一个好的位置,Apple 需要做得更好。

一些技术说明

由于这是一个技术博客,我觉得有必要说一些比上面的请求稍微详细一些的事情。

首先,Gene Hoffman 向我指出了手机设置中的一个小功能,称为“保留消息”(隐藏在设置中的“消息”下,然后向下滚动)。 这决定了你的消息将在你自己的手机上保留多长时间。 你不能为每个对话设置它,但你可以将其设置为比“永远”短的时间,例如,一年。 然而,对于某些人来说,这是一个重大的决定,因为它会立即删除你真正关心的任何旧消息。

更重要的是(如评论中所述),这只会影响 你的 手机。 通过此过程删除的消息将保留在你的对话伙伴的手机上。

其次,如果你真的想保护你的 iMessage,你应该打开 Apple 的 Advanced Data Protection 功能。 这将激活你的 iCloud 备份的端到端加密,并将确保除了你之外没有人可以访问这些消息。

这与 disappearing messages 不同,因为它只保护备份。 你的消息仍然会存在于你的手机和你加密的备份中。 但它至少更好地保护了你的备份。

第三,Apple 宣传一个名为 Messages in iCloud 的功能,该功能旨在备份和同步你设备之间的消息。 Apple 甚至宣传此功能是 端到端加密的

我讨厌这种措辞,因为它是 灾难性地 具有误导性的。 Messages in iCloud 可能是加密的,但是……如果你在没有 ADP 的情况下使用 iCloud Backup(这是新 iPhone 的默认设置),Messages in iCloud 加密密钥本身 将以 Apple 本身可以访问的形式备份到 Apple 的服务器。 因此,Messages in iCloud 数据库的内容将完全可供 Apple 或任何可以猜出你的 Apple 帐户密码的人使用。

这些都与 disappearing messages 无关。 然而:该功能,加上适当的防备份保护,将大大有助于使这些备份问题过时。