🔑 WebAuthn и Passkeys — аутентификация без паролей
SMS, TOTP, push-уведомления, аппаратные ключи — каждый следующий метод MFA надёжнее предыдущего. Но у всех есть общая слабость: пароль никуда не исчезает. Его можно перехватить, утащить из базы данных или выманить фишингом. WebAuthn решает эту проблему радикально — убирает пароль совсем.
FIDO2 и WebAuthn
FIDO2 — открытый стандарт аутентификации от альянса FIDO и W3C. Состоит из WebAuthn (API для браузеров и приложений) и CTAP (протокол общения с аутентификатором: USB-ключом, телефоном или встроенной биометрией).
WebAuthn заменяет пароли криптографией с открытым ключом:
• При регистрации устройство генерирует пару ключей — приватный и публичный
• Сервер сохраняет только публичный ключ
• При входе сервер отправляет challenge — случайную строку
• Устройство запрашивает подтверждение владельца — отпечаток пальца, скан лица или PIN-код
• После подтверждения устройство подписывает challenge приватным ключом
• Сервер проверяет подпись публичным ключом
Приватный ключ никогда не покидает устройство. Серверу нечего красть — у него только публичный ключ, бесполезный для атакующего.
Passkeys
Passkeys — маркетинговое название WebAuthn-аутентификации. Ключевое отличие от аппаратных ключей: Passkeys синхронизируются через облако — iCloud Keychain, Google Password Manager, Windows Hello. Работают на всех устройствах без физического ключа.
Каждый Passkey жёстко привязан к домену при регистрации. Если ключ создан на
Распространённые заблуждения
• «Passkeys — это биометрия» — нет. Биометрия лишь разблокирует доступ к приватному ключу, но сама ключом не является.
• «Потерял телефон — потерял доступ» — не обязательно. Passkeys синхронизируются через облако, при замене устройства восстанавливаются автоматически.
Ограничения
• Зависимость от облака — компрометация облачного аккаунта ставит под угрозу все синхронизированные ключи
• Привязка к экосистеме — Passkeys из iCloud не переносятся в Google Password Manager и наоборот. Сторонние менеджеры паролей вроде Bitwarden решают эту проблему, храня ключи кроссплатформенно
• Восстановление доступа — при потере всех устройств и облачного аккаунта восстановить ключи невозможно
Passkeys — редкий случай в безопасности, когда более защищённый метод оказывается одновременно и более удобным: не нужно ничего запоминать, вводить или копировать.
SMS, TOTP, push-уведомления, аппаратные ключи — каждый следующий метод MFA надёжнее предыдущего. Но у всех есть общая слабость: пароль никуда не исчезает. Его можно перехватить, утащить из базы данных или выманить фишингом. WebAuthn решает эту проблему радикально — убирает пароль совсем.
FIDO2 и WebAuthn
FIDO2 — открытый стандарт аутентификации от альянса FIDO и W3C. Состоит из WebAuthn (API для браузеров и приложений) и CTAP (протокол общения с аутентификатором: USB-ключом, телефоном или встроенной биометрией).
WebAuthn заменяет пароли криптографией с открытым ключом:
• При регистрации устройство генерирует пару ключей — приватный и публичный
• Сервер сохраняет только публичный ключ
• При входе сервер отправляет challenge — случайную строку
• Устройство запрашивает подтверждение владельца — отпечаток пальца, скан лица или PIN-код
• После подтверждения устройство подписывает challenge приватным ключом
• Сервер проверяет подпись публичным ключом
Приватный ключ никогда не покидает устройство. Серверу нечего красть — у него только публичный ключ, бесполезный для атакующего.
Passkeys
Passkeys — маркетинговое название WebAuthn-аутентификации. Ключевое отличие от аппаратных ключей: Passkeys синхронизируются через облако — iCloud Keychain, Google Password Manager, Windows Hello. Работают на всех устройствах без физического ключа.
Каждый Passkey жёстко привязан к домену при регистрации. Если ключ создан на
example.com, браузер не отдаст его фишинговому examp1e.com — проверка происходит автоматически на уровне протокола.Распространённые заблуждения
• «Passkeys — это биометрия» — нет. Биометрия лишь разблокирует доступ к приватному ключу, но сама ключом не является.
• «Потерял телефон — потерял доступ» — не обязательно. Passkeys синхронизируются через облако, при замене устройства восстанавливаются автоматически.
Ограничения
• Зависимость от облака — компрометация облачного аккаунта ставит под угрозу все синхронизированные ключи
• Привязка к экосистеме — Passkeys из iCloud не переносятся в Google Password Manager и наоборот. Сторонние менеджеры паролей вроде Bitwarden решают эту проблему, храня ключи кроссплатформенно
• Восстановление доступа — при потере всех устройств и облачного аккаунта восстановить ключи невозможно
Passkeys — редкий случай в безопасности, когда более защищённый метод оказывается одновременно и более удобным: не нужно ничего запоминать, вводить или копировать.
👍4