Privacy Pass 是一项 IETF 标准 ↗,由 Cloudflare 于 2017 年率先推动,它为用户提供了一种向其访问的网站证明自身特定属性的方式——例如已通过 CAPTCHA 验证、已达到年龄要求或属于某订阅类别——而无需透露标识符。其核心机制是 Privacy Pass 令牌,这是一种加密工具,可让服务提供商在不知晓用户身份、也无法跨请求追踪用户的情况下验证用户信息。
- 快速入门 — 两种自助方式来体验 Privacy Pass 的运作:使用演示工具获取真实令牌,或在本地运行颁发和兑换流程。
- Privacy Pass 协议 — 四个角色、架构图以及颁发和兑换流程。
- 部署模型 — 各角色的运营者、详细的示例部署模型以及 Privacy Pass 作为其他产品的一部分。
- 生产部署测试 — 在你和 Cloudflare 共同构建完成后,端对端验证真实的、由 Cloudflare 运营的部署。
- 参考资料 — 这些文档中引用的外部资源。
在互联网上验证用户通常需要在用户体验和隐私之间进行权衡,代价要么是花时间解决 CAPTCHA,要么是因可追踪标识符而失去隐私。Privacy Pass 缓解了这一权衡:用户只需证明一次声明,即可获得可在以后兑换的令牌,而无需透露其身份或关联其活动。
迄今为止,主要用例包括提供隐私保护的 CAPTCHA 替代方案(例如通过 Turnstile)以及 Cloudflare Privacy Proxy 和 Privacy Gateway 产品的验证。然而,通过调整部署方式,Privacy Pass 令牌可以证明服务提供商希望证明的任何其他信息。
每个 Privacy Pass 用例都归结为同一个理念:让客户端在不透露任何其他信息的情况下向源服务器证明某些事情。以下是一些示例:
-
其他隐私产品的身份验证 – Privacy Pass 可以作为其他隐私产品(如 Privacy Proxy 和 Privacy Gateway)的验证层,帮助它们在保护用户隐私的同时完成其功能。
-
隐私保护的机器人管理 – Apple 使用其令牌部署(Private Access Tokens)在参与网站上使用 iOS 16+ 设备时自动减少 CAPTCHA ↗。Privacy Pass 令牌同样内置于 Turnstile ↗ 中,作为其应用层挑战决策的信号之一。
-
属性验证 – Privacy Pass 可以帮助证明用户是否对该服务有有效订阅或是否满足年龄要求,而无需该服务了解其身份或将其与活动关联。
-
速率限制:虽然生产用例仍在开发中,但 Privacy Pass 令牌可用于在不识别用户身份的情况下计量使用量。请参阅 Batched Token 颁发协议 ↗、ARC 颁发协议 ↗ 和 Privacy Pass 反向流 ↗ IETF 草案。
- 可靠性和规模。 颁发者面临大量请求,必须保持高可用性,以免用户体验受到攻击或延迟的影响,Cloudflare 的全球网络正是为此而生。Cloudflare 是少数几个大规模运行 Privacy Pass 的提供商之一。
- 在边缘兑换。 由于 Cloudflare 位于许多源的前面,它可以在边缘代表源验证令牌。此外,Cloudflare Workers 原生支持兑换,提供了额外的基础设施以简化 Privacy Pass 集成。
- 共享的公共颁发者。 无需构建和维护自己的颁发者,你可以依赖 Cloudflare 的公共、符合 RFC 9578 规范的颁发者部署。我们遵循 Privacy Pass 准则并遵守你可以信任的公开、可审计的承诺。
一种基于 MASQUE 的正向代理,使用 Privacy Pass 令牌在不透露用户身份的情况下对用户进行身份验证。
实现 Oblivious HTTP (OHTTP) 标准以实现请求级别的隐私,通过 Privacy Pass 身份验证向应用后端隐藏客户端 IP 地址。
Cloudflare 的智能 CAPTCHA 替代方案,可嵌入任何网站,使用 Privacy Pass 令牌作为决定是否向访问者显示挑战的信号之一。