跳转到内容
搜索文档

加密人员证明

最后更新 查看 MarkdownAgent 设置

Cloudflare 开发了 CAPTCHA 身份验证的替代方案——Cryptographic Attestation of Personhood (CAP)。

CAP 让您通过触摸硬件密钥来证明您是合法的网站访问者,而无需解决 CAPTCHA 谜题。

本文提供有关可用性和隐私问题的常见解答。

您也可以通过访问演示站点测试 CAP。

隐私问题

大多数隐私问题的答案汇总在下表中:

属性 Cloudflare 可能 Cloudflare 实际
收集生物识别信息(指纹或面部照片) 不适用
收集有关硬件身份验证器的信息 是,仅限于批次中的密钥数量 是,在可用时

不会,Cloudflare 无法收集生物识别信息。我们的 CAP 流程使用 WebAuthn API,默认阻止收集生物识别信息。当您的设备请求生物识别身份验证(例如通过指纹传感器)时,一切都在本地进行。

因此,我们永远看不到您的生物识别数据:这些数据保留在您的设备上。设备确认匹配后,仅发送基本证明消息。实际上,您的设备发送的消息证明"是的,有人在可信设备上正确输入了指纹",而从不发送指纹本身。

是的,Cloudflare 确实收集有关密钥的有限数据。我们存储密钥的制造商和批次标识符(最少 100,000 个密钥每批次)用于验证。从我们的角度来看,您的密钥与该批次中的所有其他密钥看起来相同。

某些自签名密钥和来自特定制造商的密钥已被发现不符合此要求,如果您要最小化在线隐私风险,应避免使用。


有关我们如何设置 Cryptographic Attestation of Personhood 的更多详情,请参阅介绍博客文章


允许和不允许哪些设备?

允许的设备

CAP 支持多种硬件身份验证器:

  • 漫游(跨平台)身份验证器
    • 支持FIDO Metadata Service 3.0 中找到的所有安全密钥,除非因安全原因被撤销。
    • 示例:YubiKeys、HyperFIDO 密钥、Thetis FIDO U2F 密钥
  • 平台身份验证器:
    • 示例:iOS 移动设备和 macOS 笔记本电脑上的 Apple Touch ID 和 Face ID;带指纹读取器的 Android 移动设备;Windows Hello

已知限制

大多数 Web 浏览器和 WebAuthn 身份验证器的组合都能工作,但 WebAuthn 证明存在一些已知兼容性问题,可能阻止 CAP 成功工作:

  • Basic CAP
    • macOS 桌面:对于 TouchID,浏览器必须是 Safari
    • Android:浏览器必须是 Chrome
  • 带零知识证明的 CAP
    • Apple 平台身份验证器(例如带 Touch ID/Face ID 的 iPhone)与零知识证明系统不兼容。如果失败,您将立即被重定向到 basic CAP 路由,无需采取进一步操作。由于 Apple 使用保护隐私的 Apple Anonymous Attestation 来证明身份验证器有效同时阻止跟踪,此方法保持高隐私标准。

随着生态系统的发展和我们继续测试不同组合,我们会更新此列表。

黑客能否绕过 Cryptographic Attestation of Personhood?

CAP 是众多识别和阻止 bot 的技术之一。迄今为止,我们看到了一些测试 CAP 安全系统的尝试,例如一次深思熟虑、文档完善的测试。讨论该测试的博客文章特别指出,此方法不会破坏 Cloudflare 威胁模型。

这并不意味着 CAP 已被破解,而是表明它提高了攻击成本,超过当前的 CAPTCHA 模型。

如果我丢失了密钥会怎样?

如果您没有必要的硬件(如 Yubikey),您仍然可以解决常规 CAPTCHA 挑战(例如选择图片)。

常见错误代码及其含义是什么?

  • Unsupported_att_fmt
    • 原因:您的身份验证器使用了不支持的证明格式(浏览器和密钥的组合)。使用 Firefox 并选择"anonymise your key"选项时也会发生。
    • 解决方案:如果在 CAP 零知识版本期间发生此错误,您将自动重定向到 basic CAP 流程。如果 basic CAP 失败,请尝试不同的支持硬件设备和浏览器组合,或选择 CAPTCHA。
  • Unsupported_issuer
    • 原因:您的密钥目前不受支持。
    • 解决方案:使用支持的密钥

相关资源

这篇文档对您有帮助吗?