← Cloudflare Fundamentals / fundamentals / reference
Cryptographic Attestation of Personhood
Cloudflare разработала альтернатива ↗ к аутентификации CAPTCHA, то есть криптографическому доказательству личности (Cryptographic Attestation of Personhood, CAP).
CAP позволяет подтвердить, что вы являетесь настоящим посетителем сайта, просто прикоснувшись к аппаратному ключу, вместо решения задачи CAPTCHA.
В этой статье собраны ответы на распространённые вопросы об удобстве использования и конфиденциальности.
Вы также можете протестировать CAP, перейдя в раздел демонстрационный сайт ↗.
Вопросы о конфиденциальности
Ответы на большинство вопросов о конфиденциальности приведены в следующей таблице:
| Свойство | Cloudflare мог бы | Cloudflare умеет |
|---|---|---|
| Сбор биометрических данных (отпечатков пальцев или изображений лица) | Нет | N/A |
| Сбор информации о вашем аппаратном аутентификаторе | Да, в пределах количества ключей в вашей партии | Да, если доступно |
Нет, Cloudflare не может собирать биометрические данные. Наш процесс CAP использует API WebAuthn, который не допускает сбор биометрия по умолчанию ↗. Когда устройство запрашивает биометрическую аутентификацию, например через сканер отпечатков пальцев, всё это происходит локально.
Поэтому мы никогда не видим ваши биометрические данные: они остаются на вашем устройстве. После того как устройство подтверждает совпадение, оно отправляет только базовое сообщение об аттестации. По сути, устройство отправляет сообщение, подтверждающее «да, кто-то правильно приложил отпечаток пальца на этом доверенном устройстве», и никогда не передаёт сам отпечаток.
Да, Cloudflare действительно собирает ограниченный объём данных о вашем ключе. Мы сохраняем производителя ключа и идентификатор партии (минимум 100,000 ↗ ключей на пакет) для целей проверки. С нашей точки зрения ваш ключ выглядит так же, как и остальные ключи в пакете.
Было замечено, что некоторые самоподписанные ключи и ключи от определенных производителей не соответствует этому требованию ↗ и их следует избегать, если вы стремитесь минимизировать риски для конфиденциальности в интернете.
Подробности о том, как мы настраиваем Cryptographic Attestation of Personhood, см. в вводная запись в блоге ↗.
Какие устройства разрешены, а какие нет?
Разрешённые устройства
CAP поддерживает широкий набор аппаратных аутентификаторов:
- Роуминговые (кроссплатформенные) аутентификаторы:
- Поддерживается: Все ключи безопасности, найденные в FIDO Metadata Service 3.0 ↗, если только они не были отозваны по соображениям безопасности.
- Примеры: YubiKeys, ключи HyperFIDO, ключи Thetis FIDO U2F
- Платформенные аутентификаторы:
- Примеры: Apple Touch ID и Face ID на мобильных устройствах iOS и ноутбуках macOS; устройства Android со сканером отпечатков пальцев; Windows Hello
Известные ограничения
Большинство комбинаций веб-браузеров и совместимых с WebAuthn аутентификаторов работают корректно, но существуют отдельные известные проблемы совместимости с WebAuthn attestation, которые могут помешать корректной работе CAP:
- Basic CAP:
- macOS (настольная версия): Для TouchID браузер должен быть Safari
- Android: Браузер должен быть Chrome
- CAP с доказательством с нулевым разглашением:
- Аутентификаторы платформы Apple (например, iPhone с Touch ID/Face ID) несовместимы с система доказательств с нулевым разглашением ↗. Если это не удастся, вы будете немедленно перенаправлены на базовый маршрут CAP без каких-либо дополнительных действий с вашей стороны. Поскольку Apple использует сохраняющий конфиденциальность Apple Anonymous Attestation ↗ чтобы подтвердить, что аутентификатор действителен, одновременно блокируя отслеживание, этот метод обеспечивает высокий уровень конфиденциальности.
Мы обновляем этот список по мере развития экосистемы и тестирования новых комбинаций.
Могут ли хакеры обойти Cryptographic Attestation of Personhood?
CAP относится к числу многих методов выявления и блокировки ботов. На сегодняшний день мы наблюдали попытки проверить систему защиты CAP, например один продуманный и хорошо задокументированный тест ↗. В статье блога, посвящённой этому тесту, отдельно отмечается, что данный метод не нарушает модель угроз Cloudflare.
Это не означает, что CAP не работает, а скорее показывает, что он повышает стоимость атаки по сравнению с текущей моделью CAPTCHA.
Что произойдет, если вы потеряете ключ?
Если у вас нет нужного оборудования (например, Yubikey), вы всё равно можете пройти обычную проверку CAPTCHA (например, выбрать нужные изображения).
Какие бывают распространенные коды ошибок и что они означают?
- Unsupported_att_fmt:
- Причина: Ваш аутентификатор использует неподдерживаемый формат аттестации (сочетание браузера и ключа). Также возникает при использовании Firefox и выберите опцию «анонимизировать ключ».
- Решение: Если эта ошибка возникает во время версия CAP с нулевым разглашением ↗, вы будете автоматически перенаправлены на базовый процесс CAP. Если базовый CAP не сработает, попробуйте другое сочетание поддерживаемого аппаратного устройства и браузера или выберите CAPTCHA.
- Unsupported_issuer:
- Причина: Ваш ключ в настоящее время не поддерживается.
- Решение: Используйте поддерживаемый ключ.