我们保护用户隐私的工作遵循一组隐私原则,其中一个原则是优先使用设备上的处理。通过在用户设备上本地执行计算,我们可以帮助最大限度地减少与 Apple 或其他实体共享的数据量。当然,用户可能会请求由机器学习 (ML) 提供支持的设备上体验,这些体验可以通过查找服务器上托管的全局知识来丰富。为了在提供这些体验的同时恪守我们对隐私的承诺,我们实施了多种技术来帮助确保这些服务器查找的私密性、高效性和可扩展性。
我们用于实现此目的的关键技术之一是同态加密 (HE),这是一种能够对加密数据进行计算的密码学形式(见图1)。HE 的设计使得客户端设备在将查询发送到服务器之前对其进行加密,服务器对加密的查询进行操作并生成加密的响应,然后客户端将其解密。服务器不会解密原始请求,甚至无法访问解密密钥,因此 HE 旨在在整个过程中保持客户端查询的私密性。
在 Apple,我们将 HE 与其他隐私保护技术结合使用来实现各种功能,包括私有数据库查找和机器学习。我们还使用许多优化和技术来平衡 HE 的计算开销与大规模生产应用程序的延迟和效率需求。在本文中,我们将概述如何使用 HE 以及私有信息检索 (PIR) 和私有最近邻搜索 (PNNS) 等技术,并详细介绍如何将这些技术与私有信息检索 (PIR) 和私有最近邻搜索 (PNNS) 结合起来。生产中的其他隐私保护技术可在保护用户隐私的同时增强照片的视觉搜索功能(见图2)。
将 HE 引入 Apple 生态系统提供了隐私保护,使我们能够通过私有服务器查找来丰富设备上的体验,并使开发者社区更容易在自己的应用程序中类似地采用 HE,我们开放了-来源快速同态加密,一个高等教育图书馆。看这篇文章了解更多信息。
Apple 的同态加密实现
我们对 HE 的实施需要允许 ML 工作流程常见的操作大规模高效运行,同时实现极高级别的安全性。我们已经实施了布拉克斯基-范-维考特伦(BFV) HE 方案,支持同态运算,这些运算非常适合对 ML 工作流程常见的嵌入向量进行计算(例如点积或余弦相似度)。我们使用实现后量子 128 位安全性的 BFV 参数,这意味着它们可以针对经典和潜在的未来量子攻击提供强大的安全性(之前已在这篇文章)。
HE 擅长于客户端需要在服务器上查找信息同时保持查找计算加密的设置。我们首先展示 HE 如何单独支持隐私保护服务器查找与私有信息检索 (PIR) 的精确匹配,然后我们描述在将近似匹配与私有最近邻搜索 (PNNS) 相结合时,它如何通过 ML 为更复杂的应用程序提供服务。
私人信息检索(PIR)
许多用例要求设备私下从服务器数据库中检索与查询的精确匹配,例如检索适当的企业徽标和信息以与收到的电子邮件一起显示(特征今年晚些时候将在 iOS 18 中推出邮件应用程序),在来电时提供来电显示信息,或者检查 URL 是否已被归类为成人内容(正如所做的那样)当家长设置了内容限制时为孩子的 iPhone 或 iPad(见图3)。为了保护隐私,应该在不泄露查询本身的情况下检索相关信息,例如在这些情况下向用户发送电子邮件的企业、呼叫用户的电话号码或正在检查的 URL。
对于这些工作流程,我们使用私有信息检索 (PIR),这是一种私有关键字值数据库查找形式。通过此过程,客户端拥有私有关键字并寻求从服务器检索关联值,而无需下载整个数据库。为了保持关键字的私密性,客户端在将其发送到服务器之前对其关键字进行加密。服务器在传入的密文与其数据库之间执行 HE 计算,并将生成的加密值发送回请求设备,请求设备对其进行解密以了解与关键字关联的值。在整个过程中,服务器不会获知客户端的私有关键字或检索结果,因为它对客户端的密文进行操作。例如,在网页内容过滤的情况下,URL被加密并发送给服务器。服务器用其数据库中的URL对密文进行加密计算,其输出也是密文。此加密结果被发送到设备,在设备中进行解密以确定是否应根据家长限制控制来阻止网站。
私人最近邻搜索 (PNNS)
对于需要近似匹配的用例,我们使用 Apple 的私有最近邻搜索 (PNNS),这是一种高效的私有数据库检索过程,用于向量嵌入的近似匹配,如论文中所述使用 Wally 进行可扩展的私人搜索。使用 PNNS,客户端对向量嵌入进行加密,并将生成的密文作为查询发送到服务器。服务器执行 HE 计算以进行最近邻居搜索,并将生成的加密值发送回请求设备,请求设备进行解密以了解其查询嵌入的最近邻居。与 PIR 类似,在整个过程中,服务器不会了解客户端的私有嵌入或检索结果,因为它对客户端的密文进行操作。
通过将 PIR 和 PNNS 等技术与 HE 和其他技术相结合,我们能够构建利用大型服务器端数据库信息的设备端体验,同时保护用户隐私。
在生产中实施这些技术
增强型照片视觉搜索允许用户在照片库中搜索特定位置(例如地标和兴趣点),这是将 ML 与 HE 和私人服务器查找相结合提供支持的有用功能的说明性示例。使用 PNNS,用户的设备私下查询 Apple 维护的流行地标和兴趣点的全球索引,以查找与其照片库中描绘的地点的近似匹配。用户可以使用以下方法在其设备上配置此功能:设置 → 照片 → 增强视觉搜索。
该过程从设备上的机器学习模型开始,该模型分析给定的照片以确定是否存在可能包含地标的“感兴趣区域”(ROI)。如果模型在“地标”域中检测到 ROI,则会为图像的该区域计算矢量嵌入。嵌入的维度和精度影响发送到服务器的加密请求的大小、HE计算需求和响应大小,因此为了满足大规模生产服务的延迟和成本要求,嵌入被量化为8-加密前的位精度。
客户端将向其发送请求的服务器数据库被划分为嵌入集群的不相交的细分或分片。这有助于减少计算开销并提高查询效率,因为服务器可以将 HE 计算集中在数据库的相关部分。用户设备上提供了包含集群分片质心的预先计算的集群码本。这使得客户端能够在本地运行相似性搜索来识别最接近的嵌入分片,该分片被添加到加密查询中并发送到服务器。
识别与查询相关的数据库分片可能会泄露有关查询本身的敏感信息,因此我们使用差分隐私(DP)iCloud 私人中继作为匿名网络。使用 DP,客户端会在真实查询的同时发出虚假查询,因此服务器无法辨别哪些查询是真实的。查询还通过匿名网络进行路由,以确保服务器无法将多个请求链接到同一客户端。为了运行 PNNS 进行增强视觉搜索,我们的系统确保每个用户的照片库具有强大的隐私参数,即(�, �´)-DP, 与× = 0.8,× = 10-6。有关更多详细信息,请参阅使用 Wally 进行可扩展的私人搜索。
处理这些查询的服务器群利用了 Apple 现有的 ML 基础设施,包括全球地标图像嵌入的矢量数据库(以倒排索引表示)。服务器根据客户端查询中的索引识别相关分片,并使用 HE 计算该加密空间中的嵌入相似度。然后将候选地标的加密分数和相应元数据集(例如地标名称)返回给客户端。
为了优化服务器-客户端通信的效率,所有相似性分数都被合并为指定响应大小的一个密文。
客户端解密对其 PNNS 查询的回复,该回复可能包含多个候选地标。然后,一个专门的轻量级设备重新排名模型通过使用高级多模态特征描述符(包括视觉相似性分数)来预测最佳候选者;本地存储的地理信号;受欢迎程度;以及地标的索引覆盖范围(以消除候选者权重过大的偏差)。当模型识别出匹配项时,照片的本地元数据将使用地标标签进行更新,用户在设备上搜索地标名称时可以轻松找到照片。
结论
如本文所示,Apple 使用 HE 来履行我们保护用户隐私的承诺,同时通过从服务器数据库私下查找的信息来丰富设备上的体验。通过结合 PIR 和 PNNS 等隐私保护技术、设备端和服务器端 ML 模型以及其他隐私保护技术来实现 HE,我们能够提供增强型视觉搜索等功能,而无需向服务器透露任何信息关于用户设备上的内容和活动。将 HE 引入 Apple 生态系统是实现这一目标的核心,还可以帮助提供宝贵的全球知识来为设备上的 ML 模型提供信息,同时保护用户隐私。使用最近开源的库快速同态加密,开发人员现在可以类似地构建利用服务器端数据的设备上体验,同时保护用户隐私。
相关阅读和更新。
本文介绍了 Wally,一个私人搜索系统,支持高效的语义和关键字搜索查询大型数据库。当有足够多的客户在做时查询中,Wally 的性能明显优于以前的系统。在以前的私人搜索系统中,对于每个客户端查询时,服务器必须执行至少一项昂贵的操作每个数据库条目的加密操作。结果,性能下降了……