研究 | 如何保护隐私及线上权利?

Cash is disappearing, and we still have no digital cash alternative.

当我们享受着电子支付的便利的同时,我们失去了隐私,我们每笔电子支付,都一步步地把我们的财务状况往外爆漏。稳定币,相对美元稳不稳定也许并不那么重要,更重要的我们使用的加密货币,能否像使用现金那样,是隐私的。

“使社会成为宜居之地的部分原因在于它允许人们在多大程度上免受他人的侵扰。 一个没有隐私保护的社会将是令人窒息的” Daniel Solove 。

PRIVACY & ONLINE RIGHTS

https://www.cybok.org/media/downloads/Privacy__Online_Rights_KA_-_draft_for_review_April_2019.pdf


介绍


数据收集、处理和传播的普遍性引发了对个人和社会危害的严重隐私问题。 信息泄露可能对个人造成身体或心理伤害,例如,当发布的信息可以被窃贼用来推断用户何时不在家,被敌人发现弱点对用户发动攻击或被广告公司建立档案来影响用户行为。 在大范围内,利用这些信息可以影响整个社会,对民主造成不可逆转的伤害。 隐私丢失造成的危害程度凸显了隐私不能简单地作为保密问题来解决。 除了对信息保密之外,确保我们构建的系统支持言论自由和个人的决策自主权和自决权也很重要。

本论文的目标是向系统设计人员介绍用于设计保护用户隐私的系统的概念和技术。 我们的目标是让设计师能够识别隐私问题,从技术角度描述它们,并选择适当的技术来消除或至少减轻这些问题。

隐私被认为是人的一项基本权利[1]。因此,它已经从社会法律角度研究了多年,有两个目标。首先,更好地理解隐私对社会和个人的意义是什么。其次,确保支撑我们民主的法律框架支持隐私权。以前的研究提出了诸如隐私权是“不受打扰的权利”[2]、“信息自决权”[3、4] 或“在构建自己的身份时不受不合理限制的自由”等定义。 [5]。后者最好的例子之一可能是与欧洲数据保护立法 [6] 相关的原则和规则,这些原则和规则包含在法律和法规 KA 中。所有这些概念化对于定义和理解隐私的界限及其对社会的作用都非常重要。然而,它们的抽象和与context-free nature(上下文无关)的性质通常使它们对于需要选择技术以确保其系统支持隐私。

我们以类似于安全工程概念化安全问题的方式来概念化隐私 [7, 8]。我们认为隐私问题的解决方案是由设计者考虑的对抗模型、保护的信息以及保护本身的性质来定义的。对抗模型的典型例子可以是:不信任与其共享数据的第三方服务,服务提供者本身不信任用户的私人数据,或者服务的用户不应该从其他用户那里学习私人数据。需要保护免受这些攻击者侵害的私人数据的典型示例是:用户通信的内容、他们的服务使用模式,或者用户的存在和/或他们的行为。最后,保护手段的典型示例可以是能够控制信息可用性的技术,例如访问控制设置,或隐藏信息的技术,例如加密。

本文结构如下。第一部分由三个部分组成,考虑了不同类别隐私技术的三种不同隐私范式。第一个是作为机密性的隐私(privacy as confidentiality)(第 1 节),其目标是向对手隐藏信息。我们学习隐藏数据和元数据(Metadata)的技术方法,以及阻止对手使用无法隐藏的数据进行推理分析的方法。第二个是作为信息控制的隐私(privacy as informational control)(第 2 节),其目标是为用户提供方法来决定控制他们将向对手公开哪些信息。我们学习支持用户以隐私为导向的决策技术和帮助他们在与数字服务交互时表达偏好的技术。最后,我们将隐私引入透明度(privacy as transparency)(第 3 节),其目标是告知用户她暴露了哪些数据以及谁访问或处理了这些数据。我们学习向用户展示其数字足迹的解决方案,以及通过安全日志记录支持问责制的解决方案。

本文的第二部分致力于说明如何使用隐私技术来支持民主和公民自由(第 4 节)。 我们考虑两个核心示例:安全投票系统和规避审查制度。 对于前者,投票隐私对于功能本身来说是必不可少的。 对于后者,通信的隐私是必要的,以确保内容不会被审查员阻止。

我们通过概述隐私保护系统工程中涉及的步骤来总结知识 (5)。 我们为工程师提供有关架构和隐私技术的选择指南。 这些指南可以帮助系统设计人员构建系统,其中用户的隐私不依赖于可能成为单点故障的中心化实体。

我们注意到,我们在该领域的许多隐私技术都依赖于密码学。 在本文,我们假设读者熟悉了解这些基本概念,并避免重复密码定义和重复对常见原语的解释。


1 隐私即保密(Privacy as Confidentiality)


在“不被打扰的权利”[2]中对隐私技术定义重新解释,隐私的一个常见概念是避免让任何实体,尤其是更广泛的公众 [7] 可以访问个人信息。 在此定义下,隐私技术的目标是在使个人暴露的信息量最小化的同时能够使用服务。 此处,信息是指与服务显式交互的数据,以及在与这些交互关联的元数据(Metadata)中提供的隐式信息(例如,用户身份或使用频率)。

1.1 数据机密性 Data Confidentiality

我们现在描述两种方法来最小化暴露的信息量。 我们首先提出了证明可以防止未经授权访问信息的方法,通常基于使用高级密码原语来确保无法推断出任何明文数据。 其次,我们提出了控制披露的方法,该方法放宽了机密性定义,以确保泄露给对手的信息仅限于一定数量,或者与个人无关。

1.1.1 基于密码学的访问控制

第一种面向机密性的隐私技术侧重于通过使用密码术来保护数据。 这些技术主要考虑两种对抗模型:一种是接收者被认为是可信的,并且数据在传输过程中必须受到保护,另一种是接收者不受信任并且即使在处理数据时也必须保密。

保护传输中的数据。 传输中数据的保护通常称为端到端加密 (end-to-end encryption, E2EE)。 在这里,终端是指通信的起点和目的地。 例如,电子邮件的发送者和接收者,或服务的客户端和服务器。 E2EE保证了两终端数据的机密性。 也就是说,从通信基础设施中的路由器到支持通信的应用程序(例如电子邮件、消息传递)服务器,没有任何第三方可以访问通信内容。 此外,E2EE 通常提供完整性,阻止任何第三方中介修改交换的数据和身份验证,确保通信各方可以确定彼此的身份。

从技术角度来看,在 E2EE 中,通信终端的设备持有用于保护数据的加密密钥。 通常,这些是对称加密密钥,可以使用密钥传输达成一致,或者可以使用 Diffie-Hellman 交换的任何模式建立。 使用 Diffie-Hellman 为每个会话确定一个密钥另外提供了前向保密性,但在实现交换时必须小心 [18]。 通常,数字签名和消息身份验证代码用于提供完整性和身份验证。 E2EE 加密的典型例子是 TLS 协议 [19],广泛用于客户端 - 服务器场景; 或 PGP 协议,一种用于电子邮件通信的通用加密机制 [20]。

一种特殊类型的 E2EE 是非公开消息传递 (Off-the-Record Messaging,OTR) [11]。OTR 寻求提供比上述协议更强的隐私属性。它考虑的对手不仅可以观察通信,还可以最终危及参与通信的设备之一。这种妥协让对手有机会获得参与者的密钥。在这种苛刻的场景中,OTR 的两个主要目标是提供 i) 完美的前向保密和 ii) 可否认的身份验证,这允许用户否认过去曾发送过消息。该协议使用未经身份验证的 DiffieHellman 密钥交换来派生用于对话的加密密钥。然后,参与者在受保护的通道内进行相互认证,以保证未来的可否认性。加密密钥被轮换,旧密钥被删除,以保持前向保密。当前的 OTR 协议还包括针对中间人攻击的强大保护,即使参与者不预先共享秘密 [21, 22]。

最后,我们可以注意到 E2EE 现在在 Signal、WhatsApp、Facebook Messenger 或 Viber 等即时消息应用程序中很流行。 所有这些应用程序都基于所谓的信号协议(以前称为 Axolotl 或 TextSecure)[23]。 与 OTR 类似,该协议在具有端到端机密性的用户之间提供经过身份验证的消息传递,即使消息传递服务器被攻破,即使用户的长期密钥被攻破,消息也会保密。 这些属性依赖于混合多个 Diffie-Hellman 共享秘密的经过身份验证的密钥交换协议,以及用于刷新密钥的协议,称为双棘轮/double ratcheting [15]。

请注意,只要验证通信方的机制按预期工作,上述所有协议都只能提供强有力的机密性保证。 例如,TLS 提供的机密性依赖于将密钥保密的服务和可靠运行的公钥基础设施,以便对通信方进行身份验证。 同样,WhatsApp 的机密性依赖于电话号码难以欺骗的事实,因此,用户确信他们的消息的接收者是他们的预期对话者。

处理过程中隐私数据保护/Protection of data during processing。 以前的协议侧重于保护传输中的数据免受通信参与者以外的第三方的侵害。 我们现在考虑接收者需要对数据执行一些计算的场境,即她被认为是对抗性的。 我们区分两种情况:一种是计算完全外包,另一种是发送方参与计算。

在第一种情况下,通常称为外包,数据属于发送方,接收方充当数据处理器。 典型的例子是使用云服务来计算大数据,例如使用机器学习进行隐私保护训练和分类 [25],或者保存发送者想要在其中执行搜索的数据库 [26]。 此问题的解决方案基于高级加密协议。 我们现在通过几个例子来说明这些协议的使用。

外包服务的一个常见问题是,访问特定的外包数据可能会向持有数据的实体泄露有关用户的信息。 例如,访问专利数据库中的给定条目可以揭示商业意图; 访问消息目录中的特定条目会揭示用户之间的关系。 这个问题可以通过使用私有信息检索(Private Information Retrieval)来缓解(参见密码学知识领域 [9] 中的第 9.2 节),它允许查询数据库但不会泄露正在访问的记录。

需要远程处理的另一个场景包括数字商店或数字银行,其中服务器根据输入将信息返回给用户。 商店需要处理付款,然后运送数字商品; 银行在认证后提供资金或付款。 然而,用户的购物模式可能会透露很多关于他们的个人资料。 在这种情况下,/茫然传输不经意传输(Oblivious Transfer)(参见密码学知识领域 [9] 中的第 9.1 节),其中服务可以在不知道正在传输哪个实例的情况下传输,可用于支持隐私保护交互 [30, 31]。

前面的技术对于特定操作很有用:在数据库中搜索一个实例。 理想情况下,我们希望能够对外包数据执行任何操作但不渗漏内容。 与此非常相关的技术是同态加密(请参阅密码学知识领域 [9] 中的第 11 节)。 这种类型的加密允许对加密数据执行任何操作。 然而,这种灵活性在计算时间方面的代价很高,并且对于某些实现来说,带宽方面也是如此,因此在这技术现在并不太实用。 不太通用的版本,例如同态加密或部分同态加密,它们只允许有限的操作(求和、乘法或评估给定函数)提供更好的权衡,并且已经可以用于简单的具体任务。

近年来,隐私保护加密原语已与新的安全硬件相结合,以提高性能。 虽然这种组合确实使隐私保护密码学的性能更接近部署所需的基准,但重要的是要强调这种改进是以信任安全硬件制造商不会泄露信息(或密钥)为代价的。

在数据外包的情况下,值得一提的是量身定制的解决方案,结合不同类型的隐私保护密码技术以提高效率[34]。 这些数据依赖于诸如同态加密、保序加密 [35, 36] 或确定性加密等技术。 这些方案确实提供了很好的性能。 然而,已经证明选择较弱的密码原语来提高效率可能会对隐私产生重大影响 [37, 38, 39, 40]。 因此,建议它们仅用于支持合规性,并且仅应部署在不太可能受到攻击的受信任环境中。 不建议在数据隐私至关重要且持有数据库的实体不受信任的场景中使用它们。

第二种场景是协同计算,即参与通信的实体协同执行计算。该计算的结果可能对发送方、接收方、双方或第三方感兴趣。然而,如果参与者彼此不信任,即对于给定实体,任何其他参与者都可能被视为对手。典型的应用是比较数据库或跨数据集计算统计数据 [41, 42]。多方计算可以支持此类应用程序(参见密码学知识领域 [9] 中的第 9.4 节),如 Archer 等人所述。当应用程序的目标是找到两个数据库之间的相似性时,还可以使用更轻的协议,例如 Private Set Intersection。这些协议允许双方计算数据集的交集,而无需透露除交集或交集的基数之外的任何内容。

加密域中的验证/Verification in the encrypted domain。 当在加密域中处理数据时,执行计算的实体很难对输入的充分性进行任何检查。 为了解决这个问题,许多原语建立在零知识证明的基础上,以向执行计算的实体证明输入符合特定格式或特定约束。 我们现在描述三种情况,其中加密域中的验证是启用隐私保护加密协议的关键。

私有计算 - 输入验证/Private computation - input verification。 零知识证明非常适合确保隐私保护协议的输入具有特定形式或不是恶意的。 例如,它们已被用于证明计费应用程序中输入的充分性,例如,它们属于一组有效输入 [51],或在特定范围内 [52],以证明存在 从消息传递系统 [53] 请求信息或运行私有交叉协议 [54] 时,没有恶意输入。

隐私验证/Private authentication。 为了保持机密性,参与协议的实体可能希望对其通信伙伴进行身份验证。 然而,典型的身份验证系统基于揭示验证方的身份信息。 透露一个人的身份本身可能会导致隐私泄露(例如,当身份验证针对敏感服务时,例如医疗服务)。 避免此问题的解决方案是使用匿名凭据,也称为基于属性的凭据 (ABC) [55, 12, 56]。

ABC 并不是根据身份验证实体以授予授权,而是使实体能够证明拥有不同属性的组合以获得相同的授权。 该证明不会透露有关实体身份验证的任何附加信息,也不会透露属性的具体值。 此外,ABC 在上下文之间是不可链接的。 换句话说,凭证每次显示时看起来都不同,因此不同的显示不能相互关联。

虽然从隐私的角度来看,ABCs 带来了许多优势,但它们也带来了新的挑战。 匿名可能会导致恶意的行为。 原始 ABC 提供的强大匿名性和不可链接性不允许授权限制或撤销对行为不端用户的授权。 作为回应,出现了几种方案,它们提供了限制在用户可识别之前可以使用凭证的次数的能力[57]; 将凭据列入黑名单的功能,以便可以暂时撤销访问权限 [58, 59]; 或完全撤销凭证的能力 [60]。

存在多种 ABCs [61, 62] 实现,可在不同的许可下使用。 这些实现提供了上述功能的不同子集。

隐私支付/Private payments。 加密数据的验证也是启用隐私支付的关键,例如,付款人可能必须向买方证明他有足够的资金,而无需透露确切金额。 早期的数字现金系统依赖于盲签名(参见密码学知识领域的第 10 节 [9])来使银行能够签署电子货币 [13]。 简而言之,要将电子货币扩展到客户,银行会盲签一个随机值。 要花费电子代币,客户会将这个号码提供给卖家,卖家可以在银行兑换。 通过存储随机数,银行可以检测双花,但不能识别双花。

最近的隐私支付方案,如基于区块链的 Zero cash [63, 64] 系统,在交易中包含更多信息以提供更好的保证。 在每笔交易中,用户以零知识证明她拥有交易输入的代币; 每个输入的代币要么是最近开采的(以 Zerocash 术语铸造)要么是先前交易的输出; 并且交易的输入和输出值相同,即不会损失任何金钱。 为了效率,Zerocash 依赖于特别高效的零知识证明,称为零知识简洁非交互式知识论证(zk-SNARK)系统 [65]。 这些证明较短(大约数百个字节)并且验证速度相对较快。

1.1.2 基于混淆的推理控制

上一节中讨论的协议提供了关于数据机密性的强(加密)保证。 然而,这种强大的保护是以牺牲效率和灵活性为代价的。 一方面,保护隐私的加密原语在计算和/或带宽方面需要大量资源。 另一方面,它们缩小了可以对数据进行的处理类型。 这是固定输入和输出的密码结构所固有的,并严格定义了在协议执行后哪些信息可用。

在本节中,我们将描述基于混淆暴露给对手的数据来保护数据机密性的方法。这些技术提供了比密码术更灵活的机密性定义,因为它们不能完全隐藏信息。相反,他们的目标是提供一种方法来控制对手对用户敏感信息进行推断的程度。事实上,对于这些技术中的大多数,保护级别取决于具体数据和对抗性知识。因此,如第 5 节所述,对推理能力进行临时分析很重要。此外,我们注意到从这些技术中获得的隐私是基于限制对手可用的信息。此限制隐含地减少了任何人可用的信息量,因此,如果应用程序的目的基于敏感信息(例如,在约会应用程序上查找匹配项),则可能会对效用产生影响。然而,我们注意到,当敏感信息对于方程中的应用程序的目的不是关键时,例如,可以使用非常基本的位置数据运行的天气应用程序,可以在不影响效用的情况下部署这些技术。

基于混淆的推理控制技术不适用于保护传输中的数据,但可用于支持隐私保护外包、隐私保护协同计算和隐私保护发布。 如下所述,有四种主要的数据混淆技术。 我们注意到这些技术通常也用于减少元数据泄露的信息。 我们将在 1.2 节讨论这个方面。

为了说明起见,让我们以以下微数据作为当前示例。 这是一个非常简单的例子,我们强调下面介绍的技术可以应用于多种类型的数据格式和领域。

匿名化/Anonymisation。 用于允许数据处理而不会对个人造成风险的常用技术是数据匿名化。 顾名思义,匿名化旨在将身份与信息分离。 这个想法是,从数据点中删除识别信息会使它们无法信息链接身份(即,它们不能被归类为属于同一实体),从而阻碍了对手从数据中进行身份的推理。

然而,实现完全匿名是极其困难的。 事实上,将数据集声明为匿名,但数据本身包含足够的信息来关联数据库上的不同属性和/或记录。 鉴于这些群体,有许多技术可以重新识别数据发布背后的个人。 理解匿名化难度的一个关键洞察是个人数据模式的独特性 [66, 67]。 数据集中发布的信息可能有多种组合,这些组合对于个人来说是独一无二的。 这些被称为准标识符。 查找准标识符通过将它们映射到其他数据源中的识别信息来启用重新识别的数据 [68, 16]。 因此,匿名化通常与下面描述的混淆技术相结合,以限制重新识别的风险。

在知识领域的这一点上,值得参考 k-匿名的概念,它提倡将泛化和抑制相结合,以确保数据库中的记录在至少其他 k 个条目中是匿名的(即无法区分的)。 相同的数据集 [69]。 例如,在上面的示例中,可以将邮政编码概括为两个匿名:

虽然这个概念很有希望,但有几个因素使它并没那么吸引力并且难以在实践中使用。 首先,由于上述问题的独特性,获得 k-匿名性可能需要在数据库中进行不可接受的泛化量。 其次,根据应用程序,k-匿名实际上可能不会防止对敏感属性的推断。 这在我们的性别列中的运行示例中进行了说明。 尽管邮政编码中的泛化确保了两个匿名性,但攻击者有 100% 的概率知道每个邮政编码区域中用户的性别,例如,居住在 21* 的所有用户都是女性。 同样,对手了解到 20 多岁的女性收入约为 51000。

为了解决这个问题,研究人员认为隐私不仅需要 k-匿名性,还需要 ldiversity,这确保对于每个 k 个匿名个体,敏感属性至少有 l 个可能的值 [70]。 研究人员还表明,l-多样性可以被打破,并且需要所谓的 t-closeness,其中敏感属性集不仅是多样的,而且遵循该属性在整个群体中的一般分布 [71]。

k-匿名概念在健康相关应用中非常流行[72]。 它也适用于数据库以外的领域 [73, 74]。

归纳/一般化/Generalisation。 该技术包括降低共享数据的精度,目的是降低对手推理的准确性。 泛化可以通过共享值的直接精确缩减或在数据发布之前进行分桶(即从值到范围的映射)来实现。 该技术已应用于数据库匿名化[69],降低了不同单元格中值的精度; 或在私人网络搜索中 [75],其中单词被映射到预定义集合中最接近的单词。

泛化/Generalisation:将邮政编码的精度降低到前两位; 通过分桶降低 年龄的精度。

Suppression /隐匿。该技术在部分信息提供给对手之前对其进行隐匿。隐匿背后的基本原理是,提供给对手的数据越少,她就越难做出推断。决定隐藏哪些信息的隐匿策略是这种方案可能提供的隐私保护级别的关键。例如,随机隐匿信息不太可能破坏数据中允许推断的模式。因此,除非大部分数据被隐匿,否则这种策略很少提供良好的保护。一个常见的策略是小计数隐匿,其中不报告低于阈值的聚合值。该策略的保护级别取决于对数据的访问类型和对手的知识[76]。根据所考虑数据的性质及其特征定制的其他隐匿策略 [77, 78] 可提供更好的隐私结果。该技术已应用于数据库匿名化 [69],以隐藏不同单元格中的某些值;或在位置数据发布 [77] 中,隐藏提供过多信息的位置样本。

虚拟添加/Dummy addition。 该技术包括在提供给对手的数据中添加虚假数据点,即所谓的虚拟数据,以隐藏哪些是真实样本。 这个想法是,由于对手在运行攻击时考虑了假点,她的推理会出错。 为了使这种防御有效,假数必须与真实数据无法区分。 理想情况下,从对手的角度来看,任何样本都应该看起来像真实或虚拟的样本,概率相等。 然而,创建这种无法区分真假的往往很困难 [79],对手可以轻松地将它们过滤掉。 因此,这种技术在很少的领域中是有用的。 虚拟添加技术已被用于增加网络搜索中的隐私 [75, 80] 或保护数据库免受推断 [81]。

扰动/Perturbation。 扰动技术将噪声注入对手可用的数据中。 噪声旨在降低对手的推理性能。 与抑制技术类似,用于引入噪声的策略在提供的隐私级别中起着至关重要的作用。 初始方案从多种随机分布中提取噪声 [82, 83] 并将它们添加到数据中。 这种方法并不是真正有效,因为了解噪声分布的对手可以以合理的准确度推断出原始数据值,因此可能会泄露比预期更多的信息。

目前,基于扰动的技术的黄金标准是添加噪声以实现所谓的差分隐私(differential privacy)。 该技术的主要目标是解决用于发布的数据匿名化技术的局限性,例如上述k-匿名 (k-anonymity) 方法。

由 Dwork [84] 引入的差分隐私是一种隐私定义,最初旨在实现技术设计,在查询数据库用户的统计信息(均值、方差、中位数等)时,最大限度地提高准确性,同时最大限度地减少意外风险。 差分隐私不是数据集的属性,而是用于输出对数据集查询的答案的机制的属性。 如果通过查看查询结果,攻击者无法区分个人数据是否包含在分析中,则算法是差异私有的。 更正式地说,如果对于在单个元素(即一个人的数据)上不同的所有数据集 D1 和 D2 以及算法的所有可能输出 S,则算法 A 提供差分隐私:

差分隐私确保在给定一个扰动的数据样本的情况下,对手获得的关于原始数据样本的新信息相对于她的先验知识是微不足道的,而不管这个先验知识是什么。 存在许多算法来确保满足各种查询的差异隐私[14]。

差分隐私是一个非常有用的定义,因为它提供了一个正式的框架来推理强大的对手可能能够推断出数据中个人的信息量,而不管对手的先验知识如何。 但是,必须注意的是:

  • 差分隐私提供了相对的保证,而不是绝对的隐私保护。 这意味着所提供的保护是关于对手的先验知识。 如果对手已经完全了解,差分隐私不会改善隐私。 换句话说,差分隐私确保数据的发布不会使用户或人群的隐私损失恶化超过设定的阈值。 但是,这并不能自动确保用户的隐私得到全面保护。 因此,要声明隐私,重要的是不仅要确保方案提供给定的保证,还要计算推论的对抗性错误,以确保用户的敏感信息得到实际保护(参见第 5 节)。
  • 当前差分隐私的实际挑战之一是确定提供可接受的隐私级别的值。保护级别关键取决于该参数的值。这意味着仅用任意参数值满足差分隐私定义并不能直接保证对手不会从数据中学到太多新信息。重要的是要确保 ε 的值使得不同推论的概率实际上无法区分。例如,如果 ε = 3,这仅确保当个体在或不在数据集中时观察到结果的概率之间的比率为:Pr[A(D1) ∈ S]/Pr[A(D2) ∈ S] ≤ e 3 = 20.08。这种概率差异通常可以由经典统计检测器或任何现代机器学习分类器检测到。一般来说,ε 大于 1 的值值得仔细研究以验证算法是否提供了寻求的保护级别。
  • 阻碍对数据进行推断所需的噪声量取决于算法的所谓灵敏度。 灵敏度衡量输入的变化将改变算法 A 的输出的程度。当输入是数据库,输出是统计函数时,小的输入变化对输出几乎没有影响,因此,少量的噪声是 足以使算法差异化隐私。 然而,我们注意到,当应用差分隐有算法来保护单个样本的隐私而不是数据库的统计查询结果时,敏感性可能会高得多。 因此,只有大量的噪声才能确保保护。 例如,当应用差分隐私来混淆用户报告的位置以获得位置隐私时,如果不仔细选择参数,保护可能比预期的要少[85]。
  • 差分隐私提供了最坏情况的保证,这意味着引入的噪声量被限制为数据集中的数据点给出的泄漏,该数据点为具有最佳知识的对手提供最多信息。 这意味着在平均情况下,噪声量比需要的要大。 最近的研究一直致力于更严格的界限,以减少提供所需保护水平所需的噪声 [86]。

差分隐私概念已扩展到考虑汉明距离(Hamming distance)以外的指标(即区分一个人是否在数据库中)[87]。 具有分差隐私保证的扰动已被用于保护协作学习中的隐私 [88] 或查询基于位置的服务时的位置 [89]。 美国最近也采用它来保护人口普查数据 [90]。

最后,重要的是要指出,对于许多实际案例,其中一种推理控制本身无法提供足够的隐私。 因此,通常需要结合使用这些技术中的几种来限制可以进行的对手推理的数量。

1.2 元数据保密/Metadata Confidentiality

在上一节中,我们讨论了保护消息、数据库、查询等内容机密性的方法。这些技术对于确保隐私至关重要。 然而,它们无法防范对手使用元数据进行推断个人敏感信息。 具体而言,已证明三种类型的元数据极易受到隐私攻击:流量元数据/traffic metadata,与通信基础设施相关的信息/associated to the communication infrastructure; 与生成数据的平台相关联的设备元数据/device metadata,以及与生成数据的物理位置相关联的位置元数据/location metadata。

在本节中,我们将讨论与这些类型的元数据相关的隐私风险以及解决这些风险的相关控制措施。

流量元数据/Traffic metadata。即使通信内容被加密或混淆,观察者也可以通过网络层信息,例如通信参与者的身份(IP 地址)、传输数据的数量和时间或连接的持续时间,可用于推断有关通信的潜在敏感私隐信息, 该网络层的通信信息通常称为流量元数据,例如,在电子医疗环境中,通常会对消息进行加密以保护患者的隐私。然而,即使信息本身无法破解,看到患者与专业医生交流这一事实也可能泄露高度敏感的信息。公司员工的浏览习惯(例如,从专利数据库访问给定专利)可用于推断公司未来的投资方向,从而为竞争对手提供优势。

一种保护流量元数据的技术是使用匿名通信网络。 这些网络通常由一系列中继节点形成,因此通信不会直接从起点传输到目标点,而是从中继发送到中继。 这些中继还通过加密的方式改变消息的表显,以提供点到点的不可链接性(即不能把两端点关联起来,无法确定两端点有联系,什么时间地点有联系); 他们可以通过引入延迟、重新打包消息或引入虚拟流量来改变流量模式。

匿名通信网络遵循不同的设计,涉及基础设施的构建方式(由用户或专用中继节点)、它们如何考虑通信(基于消息与基于流)或它们如何重新路由消息(在源头决定路由,或让中继决定路由)等。 在下文中,我们将重点介绍两种最知名的具有实际部署的匿名通信网络类型。

最流行的匿名通信网络是 Tor [92]。 Tor 网络的核心元素是洋葱路由器 (Onion Routers,OR),它们本质上是转发加密数据的路由器。 OR 分别加密、解密数据包以实现两终端点不可链接,当用户想要通过 Tor 网络匿名访问 Internet 服务时,她会在她的设备中安装 Tor 客户端。该软件通过三个 OR 建立连接电路,称为入口节点、中间节点和出口节点,客户端通过此电路将加密流量路由到目标服务器。 Tor 使用所谓的洋葱加密,其中客户端使用经过验证的 Diffie-Helmann [9] 的改编版本与电路中的每个 OR 建立一个秘密密钥。通过电路路由的每个数据包都用这三个密钥加密,首先是出口 OR 的密钥,然后是中间 OR 的密钥,最后是入口 OR 的密钥。当消息通过电路时,节点“剥离”每一层加密,直到原始数据包被发送到目的地。服务器使用相同的电路向客户端发送数据,但顺序相反;即,服务器在由出口、中间和入口 OR 解密的层中加密消息。

为了启用低延迟应用程序,洋葱路由器不会对它们接收和重新发送的消息施加延迟。 因此,当数据包通过网络传输时,流量模式得以保留。 这使具有观察通信两端(即入口和出口节点)的能力的对手能够关联传入和传出流,以便链接通信的起点和终点[93]。

为了破坏流量模式并保护匿名通信中的相关攻击中继,网络需要延迟数据包或添加新数据包。 这是混合网络(mixnet)设计背后的原理[94]。 与洋葱路由相反,其中来自通信的所有数据包都通过电路路由,在基于混合的通信路由中为每条消息选择。 然后,当混合中继收到数据包时,不是立即解密并将其发送到路径上的下一跳,而是延迟消息。 有多少消息被延迟取决于触发条件,这是一个事件,例如消息到达或超时到期,导致混合转发它存储的一些消息。 触发哪些消息取决于批处理策略,它可以根据概率函数选择所有消息或部分消息。 混合和用户都可以发送虚拟流量,这些流量可能会被其他混合或接收者吸收。

在提供低延迟的混合网络是 Loopix [95]。与 Tor 不同,用户的客户端直接与 Tor 节点通信,Loopix 假设用户与提供商进行通信,提供商又通过 Loopix 匿名通信网络相互发送消息。提供商选择由 Loopix 路由器组成的随机路由,并将消息发送到第一个节点。与 Tor 类似,使用 Sphinx 数据包格式 [96] 使用这些路由器中的每一个的密钥对消息进行加密。除了加密之外,消息会根据指数分布为它们访问的每个中继分配延迟。最后,提供商通过 Loopix 路径向自己发送数据包,从而将虚拟流量注入网络,从而为真实消息提供掩护。向同时发送(分别接收)消息的用户隐藏混合消息的提供者的组合、延迟和覆盖流量使 Loopix 能够为消息发送者和接收者的不可链接性提供了保证。

设备元数据/Device metadata。 在当今优化的互联网服务中,用户设备的具体特征经常与他们的数据请求一起发送,以优化服务提供商的响应。 即使用户在网络层是匿名的,这些特征也可能成为准标识符,使服务提供商能够通过网络跟踪用户 [97, 98]。 这是因为诸如用户代理(浏览器软件供应商、软件修订版等)、其语言或已安装的插件或平台等功能的组合大多是独一无二的。

设备或浏览器指纹识别是系统收集此信息以进行识别和跟踪。 可以使用客户端脚本直接收集大量属性,例如浏览器和操作系统类型和版本、屏幕分辨率、架构类型和安装的字体,并生成唯一指纹。 当无法直接获得此信息时,可以使用其他技术来了解此信息,如下所述。

例如,让我们将安装在特定用户 Web 浏览器上的字体列表视为启用跟踪的标识符。有两种技术可以获取已安装字体的列表,众所周知,这种技术可以提供良好的唯一性。这是因为浏览器会根据访问的站点按需安装字体。由于用户有不同的浏览模式,他们安装的字体列表也变得不同。字体指纹技术利用了这样一个事实:如果安装了字体,浏览器将呈现它,但如果没有。浏览器将恢复为等宽字体。因此,根据是否安装了字体,句子的呈现方式会有所不同。在第一种技术中,跟踪网络将一个句子发送到浏览器以使用一系列字体进行打印。然后,客户端脚本检查每个句子的大小。当大小等于以等宽字体打印的句子时,跟踪器了解到未安装该字体。类似的技术称为画布指纹。在这种情况下,跟踪器利用 HTML5 Canvas 功能,即时呈现像素。和以前一样,不同的字体大小会导致不同的像素足迹。测量画布渲染跟踪器的结果可以确定浏览器中安装了哪些字体。

在保留实用性的同时防御设备元数据攻击是极其困难的。 另一方面,向服务提供商隐藏这些元数据会影响服务的性能,因为它限制了个性化并降低了信息的呈现。 另一方面,很难确定哪种特征组合实际上会使用户与其他用户无法区分。 这是因为我们不知道指纹的分布以模仿其中之一,并且随机尝试组合冒着与原始指纹一样独特的风险[99]。 因此,需要精心设计和评估机制[100]。

我们注意到,除了基于元数据的跟踪外,跟踪器还使用了一系列基于 cookie 的技术。 例如,网页可以包含来自第三方的 cookie,这允许这些第三方检测用户何时重新访问页面 [101]。 第三方也可以使用 cookie 同步,由此,除了添加他们自己的跟踪之外,网络还将 cookie 重定向到其他跟踪器,以通知他们用户要去哪里 [102]。 最后,存在一种普遍的机制来安装无法通过清理浏览器缓存来删除的类似 cookie 的信息 [10]。

位置元数据/Location metadata。 最后,向在线服务显示的用户地理位置可用于推断敏感信息。 例如,当用户查询基于位置的服务以查找附近的兴趣点或朋友时,可以明确显示此信息; 或隐含地,例如,当 GPS 坐标与在社交网络上发布的照片或内容相关联时,或从用于访问 Internet 的接入点推断出来的。

可以使用聚类技术来查找用户花费时间不多的附近点组,以推断用户的兴趣点,例如他们居住的地方、工作的地方或他们最喜欢的休闲场所。 在许多情况下,兴趣点可以用作用户的准标识符。 例如,在大多数情况下,三个最常访问的位置对用户来说是唯一的,即使这些位置是在更一般的级别上提供的(例如,美国县)[103]。 同样,访问位置的类型和模式可用于推断有关用户的人口统计数据,例如年龄或性别 [104]。 此外,一旦确定了活动模式,它们就可以用来预测个人未来的活动 [105]。

文献中有两种保护位置元数据的防御措施。 第一种依赖于加密技术来处理基于位置的服务的查询(参见第 1.1.1 节)。 例如,用户可以私下了解朋友是否在附近。 该服务可以通过同态加密[106]、私有相等性测试[107]或私有阈值集交集[108]来实现。 第二种防御基于第 1.1.2 节中描述的混淆技术,以控制对手从位置数据中得出的推论。 例如,用户的位置可以隐藏[109],即不向提供者报告; 扰动 [110],即报告与用户实际位置不同的位置; 广义[111],即报告精度较低; 或伴随着虚拟位置,从而无法识别用户的真实活动模式 [112]。


2 隐私即控制/Privacy as Control


在上一节中,我们讨论了通过数据收集最小化和/或可推断的信息量最小化来保持数据机密性的隐私技术。 通常在法规中引用的更广泛的隐私概念将隐私从隐藏个人信息的概念扩展到控制所披露信息的能力 [4, 6]。

从最大限度地减少被披露的技术转变为提供控制信息使用的手段的技术背后的想法是,在许多情况下,披露数据可能是不可避免的或被认为对数据主体有利。 因此,建议考虑使用解决两个主要问题的技术:i) 使用户能够表达他们期望向服务提供商披露的数据的使用方式,以防止对这些数据进行不良处理; ii) 使组织能够定义和执行防止用户定义的信息滥用的政策。

在本节中,我们概述了在隐私即控制范式下设计的技术。 我们专注于创建和配置良好隐私设置的技术,帮助用户表达他们对数据披露和处理的偏好; 以及支持跨服务自动协商隐私政策的技术。 由于大部分保护依赖于信任,因此通过改进控制来增强系统隐私与旨在实现机密性的技术相比数量较少且种类繁多。

需要强调的是,这些技术本质上信任收集数据的服务提供商,以正确执行用户针对第三方制定的政策,并且不会滥用收集的数据本身。 此外,正如 Acquisti 等人所指出的那样。 [113],为用户提供控制信息流的工具可以降低风险感知,增加风险承担,降低用户的整体隐私。

2.1 支持隐私设置配置

隐私设置是 Web 服务中的那些控件,允许用户表达他们对数据应如何向其他用户披露、与第三方共享以及由服务提供商处理的偏好。 马德斯基等人。 已经表明,这些隐私设置的复杂性使得它们几乎不能被个人使用 [114]。 这种可用性的缺乏导致用户错误地配置他们的隐私设置,即建立不符合他们期望的配置。 这反过来又会导致数据意外泄露。 我们向读者推荐相关知识,以获取有关系统可用性对安全和隐私的影响的更多信息。

为了解决这个问题,研究人员提出了多种技术,其目标是识别具有某些特征的个体组,然后为每个用户组建立最合适的设置。一个研究建议让安全和隐私专家定义什么是最佳策略。 [116]。然而,这种方法很难从目标群体推广到一般人群,并且在许多情况下可能会导致过高保护需求的策略。这反过来又过多地限制了数据的共享和处理,从而导致系统无法使用。其他提议主张使用机器学习技术根据用户的朋友和熟人的社交图来推断用户的适当设置[96]。然而,这种技术需要用户或中心化推荐系统了解用户的社交图才能执行推理,这本身就引发了隐私问题。第三种方法不需要了解用户的社交图谱,而是通过查看更大的用户集来尝试找到足够的隐私设置。 [117]。与之前的技术相反,用户建议的设置偏好来自通用数据。这些技术已被证明倾向于制定对大多数用户有效的策略,但通常会歧视具有特定隐私要求的用户群体,例如活动家或公共利益人士。此外,基于机器学习的技术通常会增加并延续数据中存在的偏见,从中推断初始策略。最后一个研究建议众包这些政策的最佳组合[118]。这些技术更灵活,因为用户有更多的余地来影响策略。但是,它们仍然受到多数票的影响,对于不遵循主流做法的用户来说可能并不理想。

2.2 支持隐私政策协商

先前的技术支持用户在在线服务中配置他们的隐私设置。 一个正交的工作线致力于自动化用户偏好到服务或服务之间的通信。

诸如 W3C 的隐私偏好平台项目 (P3P) [119] 等技术,可促进用户和服务提供商之间设置偏好的交流。 P3P 是一种行业标准,允许网站以预定义的格式对其隐私政策(收集哪些信息、如何使用等)进行编码。 这些策略可以被配备这样做的浏览器读取和解释。 然后,浏览器可以将站点的策略与用户以机器可读语言(例如 P3P 偏好交换语言(APPEL)[120])编写的指定隐私偏好进行比较。 然而,P3P 没有任何手段来强制服务提供商实际遵循策略中描述的做法。

其他技术,例如基于目的的访问控制(PBAC [121] 或粘性策略 [122])提供了指定所收集信息的允许用途以及验证数据访问的目的是否符合策略的方法。这些技术可以 由加密机制支持,保证服务提供商必须遵守用户建立的偏好。

2.3 支持隐私政策的可解释性

为了根据他们对如何处理数据的期望来配置隐私设置,用户需要了解描述这些设置含义的隐私政策。 这些政策往往冗长、冗长,并包含大量法律条款; 而且它们经常随着时间的推移而发展。 因此,用户发现它们难以理解。 研究人员已开发出可增强用户解读隐私政策能力的技术。

目前,有两种方法可以提高用户对隐私政策的理解。 一种是信任专家对现有隐私政策进行标记、分析和提供理由[123]。 另一种途径是完全自动化解释过程。 Polisis [115] 是一个基于机器学习的框架,使用户能够提出有关自然语言隐私政策的问题。 该工具提供了政策的可视化表示,其中指定了收集的数据类型、收集目的和共享实践等。


3 隐私即透明度


我们考虑的最后一个隐私设计范式是作为透明度的隐私。 与限制数据披露或使用已披露数据的技术不同,透明机制分析用户的在线活动,以便向他们提供有关其行为影响的反馈,或进行审计以检查是否存在侵犯隐私的行为 .

与面向控制的技术一样,基于透明度的隐私本身并不能防止侵犯隐私。 事实上,反馈或审计发生在用户已经向提供者披露数据之后。 因此,信任提供者确保收集的数据不会以未经用户授权的方式处理或共享。

3.1 基于反馈的透明度

我们首先描述了使信息收集、汇总、分析和用于决策的方式透明化的机制。 这些技术之间的共同点是,它们向用户提供有关其他人如何处理或感知他们的信息的反馈。

在这个方向的早期努力是隐私镜的概念 [124],它向用户展示他们的“数字自我”;即其他人如何在线查看他们的数据。这一概念被 Facebook 等流行的在线社交网络采用,它允许用户在更改隐私控制时检查不同的受众(例如,朋友、朋友的朋友、其他人)甚至个人用户如何查看他们的个人资料。类似的工作提供了其他方式来可视化隐私设置如何影响数据共享,以提高用户对他们选择的权限集的理解。该解决方案为用户提供了视觉提示,指示与他们共享的数据相关的访问权限 [127]。例如,它可以根据谁有权访问该特定信息,以不同的颜色突出显示社交网络配置文件中的字段。这两种解决方案都可以帮助用户了解他们的做法并修改他们的行为。但是,他们只能在向提供商(也可能向其他用户)透露信息后才能这样做。

另一种类型的用户反馈包括所谓的隐私微调 [125]。帮助用户选择他们的隐私和安全设置。每当用户以可以取消或修改操作的方式执行在线操作时,它们就会立即向用户提供反馈。例如,提醒用户她当前正在写的帖子是公开的,以便用户小心她选择使用的词。微调工具可以更加复杂,并使用现代机器学习算法在上传照片或文本时对其进行分析,并为用户提供更具体的反馈,例如“帖子可能被认为是负面的”或“照片非常露骨” .尽管与镜像相比,即时反馈具有明显的优势,但由于可以在将信息发送给提供者之前修改操作,因此它也有缺点。对用户的实验表明,即时反馈会给用户带来不舒服的感觉,因为他们感到被监控,并且用户有时认为这些建议是家长式的和不合适的 [126]。

3.2 基于审计的透明度

如前所述,即使有隐私政策和访问控制,也不能保证用户的偏好会得到尊重。 可以采取其他措施,使用户能够验证没有发生滥用行为。 为了实现这些审计,系统需要记录所有数据访问和处理操作。 此日志记录可以揭示用户何时登录系统,以及他们的数据何时以及如何传输给其他人。 因此,根据信息的数量和粒度,日志记录可能会带来额外的隐私风险。

形式化方法的使用假定数据共享由一个必须信任的中央权威管理。这是有问题的,因为集中式权威成为单点故障。密码学和分布式账本的最新进展允许设计解决方案,提供创建高度安全日志的方法,同时确保不会与未经授权的各方共享私人信息。当以这种分布式方式进行日志记录时,任何一方都无法自行修改日志,从而减少了对信任的需求并消除了任何单点故障。例如,像 UnLynx [129] 这样的系统允许实体共享敏感数据,并对它们执行计算,而不委托任何实体保护数据。所有操作都记录在分布式账本中进行审计,并通过使用可验证的密码原语和零知识证明来确保操作的正确性。因此,没有必要发布或记录敏感数据或对其进行的操作。


4 隐私和民主价值观


隐私技术对于确保我们的基本隐私权利在数字世界中得到尊重至关重要。 隐私保护对于支撑支持我们民主社会的价值观至关重要。 引用 Daniel Solove 的话:“使社会成为宜居之地的部分原因在于它允许人们在多大程度上免受他人的侵扰。 一个没有隐私保护的社会将是令人窒息的”[132]。 虽然不久前这样的社会似乎是科幻小说,但 Facebook Cambridge Analytica 案等丑闻凸显了保护数据不被非故意方访问(例如,使用保密或控制技术)以保护公民免受干扰和操纵的重要性。

在本节中,我们提供了两个例子来强调隐私技术在支持民主方面的重要性。 一方面,我们考虑使用电子基础设施在对抗性条件下进行公平选举的电子投票系统。 另一方面,我们概述了抗审查技术。 这些系统确保在数字世界中,通信基础设施由少数公司主导,国家行为者可以观察所有通信,个人可以自由通信。

4.1 隐私技术支持民主政治制度

越来越多地使用电子应用程序与政府机构互动,给社会带来了巨大的便利及好处。 为公民提供表达意见、评论政府举措或在选举中投票的简便方法,增加了他们对公共决策过程的参与。 这反过来又改善了可以执行决策的人和受决策过程结果影响的人之间的权力平衡。

为了使这些改进有效,公民必须能够自由表达他们的意见,并且必须确保他们的意见不会在此过程中被修改或丢失。 然而,使用通用基础设施(例如,云服务或未受保护的通信网络)来实施这些面向民主的应用程序会引起对监视和操纵的担忧。 因此,重要的是这些应用程序得到强大的隐私技术的支持,这些技术可以保护用户的身份,以及他们对系统的敏感数据和输入。 我们描述了两个示例应用程序,电子投票和电子请愿,将前几节介绍的技术结合起来,使公民和政府能够在不损害我们的民主价值观的情况下享受技术进步。

电子投票(eVoting)。 电子投票系统的目标是在对抗性条件下通过电子基础设施进行公平选举。 特别是,电子投票计划提供:

  • 投票保密:对手无法确定用户投票给了哪个候选人。
  • 普遍可验证性:外部观察员可以验证所有投出的选票都已计入并且计数正确。 一些协议提供了一个较弱的属性,即个人可验证性,每个投票者都可以验证他/她的投票是否已正确计算。
  • 资格验证:外部观察员可以验证所有投票都是由唯一的合格选民做出的。

为了保障第一方面,关键是要打断将选票投入系统的选票与出来的选票之间的联系。 在传统的纸笔物理选举中,这是通过将所有具有完全相同外观的选票混合在一个瓮中来完成的。 在 eVoting 中,不可链接性通常是使用混合网络实现的 [133, 134]。 投票是通过一系列混合的,这些混合不能属于同一权力机构。 否则,该机构可以追踪投票并将选民与他们的投票选择联系起来。 结果公布在一个公共公告板上,任何人都可以阅读并验证选举是否以诚实的方式进行。

投票混合网络的设计方式与部分中提到的略有不同。 1.2. 在 eVoting 的情况下,当所有选票都进入时混合触发,并且批处理所有选票。 简单来说就是保证所有的投票混合在一起,得到最大的匿名集。 这符合投票保密标准,因为任何投票都可以由任何选民投票。 此外,为了确保普遍可验证性,在 eVoting 混合网络中,每个节点都会进行可验证的洗牌 [130]。 这意味着混合证明,在零知识的情况下,它们混合了所有选票(输入处的所有选票都出现在输出处)并且混合是随机的。 可以通过要求选民零知识证明他们有资格投票来获得资格验证。

其他投票协议通过使用盲签名提供投票保密:授权实体验证用户的资格并盲目签署她的投票(即,没有看到投票内容)[135]。 用户提供零知识证明以及投票已正确构建的投票。 然后,用户使用匿名通信渠道将签名的选票提交给计票服务器。 这样,系统中的任何实体都无法将选民与投票联系起来。

第三种策略基于同态加密。 在这些方案中,计数服务器为每个候选人创建一个带有加密零条目的公告板 [136]。 然后,每个用户将他的选票添加到所需的候选人中,并随机化其余的加密(这样相同数字的加密看起来永远不会相同)。 和之前一样,零知识证明可用于确保以正确的方式执行求和和随机化。

除了上述三个属性外,一些投票协议还旨在提供抗强迫性,从而不能强迫用户违背自己的意愿投票给特定候选人。 实施此类系统的一种策略是向用户提供虚假凭证 [137]。 然后,当用户受到胁迫时,他们会遵循胁迫者的指示,但会向系统提供他们的假凭据。 这使计数服务器能够忽略在强制下产生的任何投票。 相关方法通过重新投票防止强制,即该方案允许用户重新投票以取消他们的强制选择 [138]。 这些方案定义了在给定凭证投了不止一票时确定如何计算选票的策略。 (例如,计算最后一个,或添加指向已取消投票的指针)。

匿名请愿/Anonymous petitions。 我们将请愿书定义为由一个或多个公民签署的对更高权力机构(例如议会或其他机构)的正式请求。 然而,公开签署请愿书可能会引起朋友、同事和邻居之间关系的担忧或冲突,从而阻止公民参与 [139]。 隐私技术,特别是匿名凭证,可以帮助创建安全和隐私保护的请愿系统。

在基于匿名凭证的请愿系统中,公民可以向管理请愿系统的机构注册,以获得与一些与请愿相关的属性相关联的匿名签名密钥。 然后,在签署特定请愿书时,他们可以证明他们有资格(例如,他们是所提及的市政当局的居民),但不需要透露他们的身份。 双重签名检测等高级凭据属性可以创建该系统,同时避免行为的滥用。

更现代的方法依靠同态加密和阈值解密来消除对注册用户的中央第三方可信方的需要。 相反,他们利用分布式账本允许去中心化机构颁发凭证,提高系统中的隐私级别,同时减少对单一方的信任[141]。

4.2 抗审查和言论自由

审查系统试图在整个系统中强加特定的内容分发。 它们可能会阻止用户发布被认为对审查制度有争议或危险的特定内容; 或者他们可能会阻止用户访问可能破坏审查员希望强加给他们社会的社会平衡的内容。

在本节中,我们将展示隐私保护技术如何作为支持言论自由和信息获取自由的基石。 我们将为每个目标详细说明一些示例,以说明使抗审查成为可能的基本原则。

数据发布审查阻力。 受“山达基教会”法院命令的推动,该命令导致 Penet 邮件程序在 1990 年代末关闭 [143],安德森提议设立永恒服务。 这是第一个使用隐私技术来保护互联网内容发布的系统 [144]。 Anderson 的计划提议在不同司法管辖区的服务器之间分发文件副本,以便这些服务器不能同时被传唤。 在该方案中,隐私技术具有基本的抵抗作用:加密不仅为用户提供隐私,而且在检索时防止选择性拒绝服务; 匿名身份验证不仅可以保护用户免受服务的影响,还可以保护服务不被强制透露用户身份,例如,执法部门,因为它无法知道这些用户的身份。

Anderson 的提议启发了后来的设计,例如 Freenet,这是一个点对点系统,用于发布、复制和检索数据,同时保护作者和读者的匿名性 [145]。此外,该系统为存储信息的实体提供了可拒绝性;即,服务器无法知道它们存储的文件的内容,因此总是可以声称不知道它们正在提供什么。在 Freenet 中,文件根据一个键定位,键通常是文件的哈希值,但也可以包含文件描述,或者是一个简单的字符串。为了检索文件,用户获取或计算密钥并要求 Freenet 节点找到它。如果一个节点不包含该文件,它会询问邻居。找到文件后,它会沿着请求在网络中遵循的相同路径发送回。这确保了持有数据的节点不知道接收者。为了存储文件,如果密钥不存在,则发布者沿路径发送文件,路径上的每个节点都存储文件。为了保护发布者的匿名性,存储文件的节点也会随机决定是否也声明所有权。这种随机声明还使节点可以否认他们存储的哪些文件实际上是他们的。

Freenet 的设计基于强密码学,它保护消息的内容。然而,在早期,消息的路由和时间允许攻击破坏系统的匿名性。田等人表明,被动攻击者在网络中部署了许多可以监控请求的节点,可以通过递归询问其他节点是否看到请求来重新识别请求者。 Freenet 还允许收集隐私保护统计数据。然而,统计混淆方法容易受到推理攻击,其中对抗节点组合多个查询以了解有关其他 Freenet 节点属性(例如带宽)的信息 [147]。这些问题现在由 Freenet 解决,但其他问题仍然存在,例如 Levine 等人的攻击。 [148],它使单个节点能够区分相邻对等点是文件的实际请求者还是只是转发其他对等点的请求。该攻击只需要被动观察流量,并利用 Freenet 协议根据节点与请求者的距离来确定节点可观察到的文件的平均请求数这一事实。因此,简单的贝叶斯推理足以检测邻居是否是请求发起者。

Tangler [149] 采用了一种不同的审查方法。 该系统还提供出版商和读者匿名,但以不同的方式实现抗审查的能力。 Tangle 文件不是简单地以匿名方式存储在许多节点中复制的文件,而是拆分为存储在不同服务器上的小块。 为了恢复文件,因此必须联系多个服务器以检索足够的这些块。 为了避免服务器被迫删除属于文件的块,Tangle 以这样一种方式构建块,即块包含许多文档的一部分。 为了将文件“联结”成块,Tangler 使用秘密共享(参见密码学知识领域 [9])。 联结以两种方式提高可用性。 首先,审查员只能通过对可能允许的其他文件造成附带损害来删除目标文件。 其次,每当想要复制一个文件时,纠缠在复制文件块中的文件也被复制。

访问数据抗审查/Data access censorship resistance。 为了实现对数据的无审查访问,系统必须能够隐藏用户正在访问这些数据。 这可以通过多种方式完成[131]。 第一种方法是模仿,通过尝试使访问审查数据看起来像访问允许的数据(例如,作为 Skype 电话 [150] 或访问无害网页 [151])来获得抗审查。 这些方法是有效的,但已被证明容易受到主动攻击的攻击,在这种攻击中,对手会探测可疑连接,以确定是否缺少被模仿的应用程序的任何预期功能 [152]。

第二种方法是隧道。 在这种情况下,受审查的通信直接通过未经审查的服务进行隧道传输,而不是伪装成该服务。 特别是,这些系统使用广泛使用的服务作为隧道,例如云服务 [153, 154],因此阻止通信会给审查员带来高成本。 第三种方法是将通信嵌入某些内容中(例如,隐藏在照片或视频中 [155])。 这种方法不仅使通信不可观察,而且对于托管内容的所有发送者、接收者和应用程序来说也是不可观察的。

最后,一些抗审查系统依靠隐藏通信目的地来防止审查员阻止连接。 这是通过一个或多个中间节点中继审查流量来实现的。 这些节点可以是代理,例如 Tor 网络中的网桥 [92]。 这些网桥是 Tor 中继,其 IP 不是公开的,因此无法将它们识别为抗审查系统的成员。 为避免审查员因外观而识别出与桥梁的连接,这些桥梁使用所谓的可插拔传输 [156] 进行伪装,该传输遵循本节中引用的方法之一来转换交通流量。

隐藏目的地的另一种选择是使用诱饵路由/decoy routing,也称为折射网络/refraction networking [157, 158]。 在诱饵路由中,客户将他们审查的流量定向到良性目的地。 此流量包含无法检测的信号,只能由协作的 Internet 路由器解释。 该路由器将客户端的流量转移到受审查站点并将响应返回给客户端。 显然,合作路由器必须在审查者的域之外,但是,根据方案,它可以在从客户端到未审查目的地的前向路径上 [157, 158],或在下游路径上 [159, 160] .


5 隐私工程


社会对隐私日益增长的关注使得“隐私设计”的概念在政策制定者中非常流行。 这个概念提倡设计和开发集成隐私价值的系统来解决用户的担忧。 然而,围绕这一概念的文献很少涉及隐私保护在产品和服务中的设计、实施和集成背后的实际过程。

在本章节,我们首先概述了隐私技术的前景,随后提供了一系列用例,其中将这些技术结合起来以支持电子系统,同时保持核心民主价值观。 在本节中,我们详细阐述了这些以及其他隐私保护系统背后的设计原则。 我们简要讨论了如何使用这些原则来处理嵌入强大隐私保护的系统工程,全面地解释这些原则及其在隐私保护系统设计中的作用。

设计隐私保护系统的两个主要目标是:

      • 信任最小化/Minimise trust:限制依赖其他实体在敏感数据方面按预期行事的需要。 例如,在基于混合的 eVoting 中,信任不仅分布在管理混合的实体之间,而且还实施了可验证的洗牌,以最大程度地限制对每个混合良好行为的依赖。 同样,用于实施保护隐私的电子请愿书的加密原语不需要信任注册机构来保护签名者的身份。
      • 风险最小化/Minimise risk:限制隐私泄露的可能性和影响。 例如,在 Tor 中,破坏一个中继不会提供任何有关用户浏览习惯的敏感信息。 如果破坏了入口节点,则无法获知通信的目的地,只能获知电路的中间节点; 如果有人破坏了出口节点,就无法得知通信的来源。

为了最大限度地减少信任和风险,隐私专家通常根据以下策略设计系统:

      • 收集最小化/Minimise Collection:尽可能限制系统中对数据的捕获和存储。
      • 尽量减少披露/Minimise Disclosure:只要有可能,限制信息流向数据相关实体以外的各方。 这既指发送方和接收方之间的直接流,也指间接流,例如,在发布或查询数据集时使用控制技术来限制可用信息。
      • 复制最小化/Minimise Replication:只要有可能,限制以明文方式存储或处理数据的实体数量。
      • 中心化最小化/Minimise Centralization:尽可能避免系统中隐私属性的单点故障。
      • 关联性最小化/Minimise Linkability:只要有可能,限制对手链接数据的能力。
      • 留存最小化/Minimise Retention:尽可能限制存储信息的时间量。

实施这些策略似乎与维护系统的完整性不相容。 例如,如果没有披露或收集任何信息,如何确保维护该系统? 如果没有中央权威,如何确保身份验证和授权按预期工作?这就是隐私技术发挥作用的地方。 它们能够设计出尽可能少的信息向信息相关方以外的各方透露的系统,并且在这种系统中,为了保护敏感信息的隐私,对提供者或其他用户的信任度最低 仍然涉及完整性并允许信息交换。

为了决定哪种隐私技术最适合构建系统,第一步是确定应该最小化的数据流; 即,将数据移动到与数据无关的实体的那些数据。 第二步是确定需要传输到这些实体的最小数据集。 为了确定需要传输的最低要求信息,设计人员应尝试将尽可能多的数据保留在这些实体无法访问的地方,而不会损害系统的功能。 尽量减少不必要的信息流的策略(主要基于第 1 节中介绍的技术)是:

      • 保持数据本地化/Keep the data local:在用户端对敏感数据进行计算,并且只传输结果。 可能需要额外的信息,例如零知识证明或承诺,以保证操作的正确性。
      • 数据加密/Encrypt the data:在本地加密数据,只将加密版本发送给其他实体。 如果需要对数据进行任何操作,请参见下一点。
      • 使用保护隐私的加密协议/Use privacy-preserving cryptographic protocols:在本地处理数据,通过使用前几节介绍的保护隐私的加密协议之一与不需信任的实体交互,用户可以获得或证明信息,同时限制提供给他人的信息 那些实体。 例如,使用匿名凭据进行身份验证而不透露身份甚至属性值,或者使用私人信息检索对数据库进行搜索而不向数据库持有者透露查询内容。
      • 数据混淆/Obfuscate the data:在本地处理数据,并且仅将混淆版本发送给不受信任的实体,使用技术防止关联性推理。
      • 数据匿名化/Anonymise the data:在本地处理数据以去除可识别信息,并通过匿名渠道将其发送给不可信方。

通过寻求信任最小化并使用上述技术,系统设计者必然会收集、处理和保留比其他基于法规遵从性的策略更少的数据。 我们认识到,如果不收集一些与用户相关的数据,就无法构建许多系统和应用程序。 对于这些情况,设计人员必须考虑隐私技术。这些技术虽然需要信任,但有助于最大程度地降低违规风险,并且如果发生违规,则可以最大限度地减少数据披露可能对用户造成的影响。

隐私评估/Privacy evaluation。 一旦设计了隐私技术或端到端系统,就必须进行隐私评估。 该评估的目标是量化技术和系统可以提供的隐私级别。

对于基于密码原语的隐私技术,隐私评估通常涵盖密码证明,以确保操作仅泄漏预期信息。 相反,对于基于混淆的隐私技术,有必要进行分析以验证技术组合是否提供了所需的隐私级别。

系统的隐私评估通常包括以下步骤。 首先,需要将隐私保护机制建模为概率转换。 这建立了在给定输入的情况下隐私机制返回给定输出的概率。 其次,需要建立威胁模型,即对手可以看到什么以及她的先验知识是什么。 第三,假设对手知道该机制,考虑他将如何进行攻击隐私机制的影响。 这通常需要对概率分布进行分析,或者使用机器学习等推理技术来计算对手可以学习到的内容。

在过程结束时,通常会有一个分布描述对手推断每个可能输入的概率。 然后将此概率分布用作隐私度量的输入,该度量捕获对手的推理能力。 我们建议读者参考 Wagner 和 Eckhoff 的调查,以全面描述文献 [162] 中的隐私指标。


结论


正如我们在本文中所述,保护隐私不仅限于保证信息的机密性,它还需要帮助用户了解他们的信息在线可用程度,以及使用户能够控制这些信息的机制。 我们已经描述了实现这三个隐私概念的技术,强调了它们运行的对抗模型,并提供了将这些技术结合起来以构建端到端隐私保护系统的指南。

隐私保护和在线权利不仅对个人很重要,对支持民主社会也必不可少。 隐私技术的部署是允许用户自由访问内容和言论自由的关键。 同样重要的是避免任何实体获得关于个人或团体的信息,以防止可能损害民主价值观的操纵和滥用。

写评论,请先登录