Что такое 2FA?
Если коротко: при входе помимо пароля нужно ввести ещё что-то (обычно 6-значный код с телефона). Даже если пароль скомпрометирован, злоумышленник не сможет войти. В этой статье разберём принципы, методы и их уровень безопасности.
Что значит «два фактора»?
Существует три типа факторов аутентификации (любые 2 из 3 образуют 2FA):
- То, что вы знаете — пароль, PIN-код.
- То, что у вас есть — телефон, аппаратный ключ, резервный код.
- То, чем вы являетесь — отпечаток пальца, Face ID (обычно используется только для разблокировки устройства).
Только пароль = 1 фактор. Пароль + 6-значный код с телефона = 2 фактора — это и есть 2FA.
Сравнение популярных методов 2FA
| Метод | Безопасность | Когда использовать |
|---|---|---|
| Аппаратный ключ (YubiKey) | Максимальная | Почта, менеджер паролей, админы GitHub |
| Passkey | Очень высокая | Apple, Google, GitHub при поддержке |
| Приложение-аутентификатор (TOTP) | Высокая | Самый распространённый — по умолчанию |
| Push-уведомления | Средняя | Если сервис поддерживает нативно |
| SMS | Низкая | Только если других опций нет |
Как формируется TOTP-код?
TOTP (Time-based One-Time Password, RFC 6238) — алгоритм, лежащий в основе Google Authenticator, Authy и 2FAA. Принцип прост:
- При включении 2FA сервис выдаёт секретный ключ (строка Base32), обычно в виде QR-кода.
- Приложение-аутентификатор объединяет ключ с текущим временем и вычисляет 6-значный код.
- Код меняется каждые 30 секунд. Сервер использует тот же алгоритм и проверяет, совпадает ли ваш код.
- Секретный ключ никогда не передаётся по сети — перехватывать нечего.
Попробуйте 2FA за 60 секунд
2FAA — это бесплатный браузерный TOTP-аутентификатор. Без установки и регистрации.
Частые вопросы
Что такое 2FA?
2FA — это Two-Factor Authentication (двухфакторная аутентификация). При входе помимо пароля требуется второй фактор — обычно 6-значный код на телефоне. Даже если пароль скомпрометирован, без второго фактора злоумышленник не сможет войти.
Двухфакторная и двухэтапная аутентификация — это одно и то же?
На практике это одно и то же. Google называет это «двухэтапной аутентификацией», Discord и GitHub — «2FA», PayPal — «двухэтапной проверкой». Суть одинакова: добавить дополнительный слой защиты помимо пароля.
Какой метод 2FA самый безопасный?
От самого безопасного к наименее: аппаратные ключи (например, YubiKey) > Passkey > приложения-аутентификаторы (TOTP) > push-уведомления > SMS. SMS — самый слабый из-за атак подмены SIM, но он лучше, чем ничего.
Стоит ли включать 2FA для всех аккаунтов?
Настоятельно рекомендуется для важных аккаунтов: почта, банкинг, менеджер паролей, соцсети, GitHub, Discord, игровые аккаунты с привязанной оплатой. Для менее ценных аккаунтов — на ваш выбор.
Можно ли взломать 2FA?
SMS-2FA уязвим к атаке подмены SIM. Приложение 2FA можно обмануть через фишинг-прокси, если ввести код на поддельной странице. Аппаратные ключи и Passkey проверяют реальный домен и устойчивы к фишингу. 2FA не идеален, но предотвращает большинство массовых атак.