Пароль — это то, что вы знаете. Второй фактор — то, чем вы владеете: телефон, приложение, физический ключ. Смысл в том, что украденного пароля становится недостаточно: злоумышленник знает секрет, но не держит в руках ваше устройство.
Это единственная мера, которая работает даже тогда, когда пароль уже утёк. Поэтому её стоит включить раньше, чем менять пароли.
Три способа и разница между ними
SMS — лучше, чем ничего
Код приходит сообщением на номер. Способ доступен везде и не требует настройки, но у него есть слабое место: номер можно увести. Схема называется подменой сим-карты — злоумышленник восстанавливает «потерянную» карту по документам или через сотрудника салона связи, и коды начинают приходить ему.
Отдельная проблема — роуминг и отсутствие сети: код не придёт тогда, когда он нужнее всего.
Приложение-аутентификатор — разумный выбор
Приложение раз в тридцать секунд показывает шестизначный код. Он вычисляется из общего секрета и текущего времени, поэтому интернет не нужен вообще — работает в самолёте и без симки.
Увести код можно только вместе с телефоном или через поддельный сайт, куда вы сами его введёте. Против подмены сим-карты способ неуязвим.
Важная деталь при настройке: сохраните секретный ключ или QR-код, который показывают при подключении. С ним вы восстановите доступ на новом телефоне без обращения в поддержку.
Аппаратный ключ — максимум
Физическое устройство, которое вставляют в порт или прикладывают к телефону. Оно проверяет адрес сайта криптографически, поэтому поддельная страница не сработает в принципе: ключ просто не ответит домену, для которого не зарегистрирован.
Это единственный способ, устойчивый к фишингу. Минусы — цена, необходимость носить с собой и обязательный второй ключ на случай потери первого.
Откуда приложение знает код, если оно не в сети
При подключении сервис показывает QR-код, внутри которого лежит общий секрет — случайная строка. Приложение сохраняет её у себя, сервис — у себя. Больше они не обмениваются ничем.
Дальше обе стороны берут текущее время, округляют его до тридцатисекундного шага и считают HMAC-SHA1 от этого числа с общим секретом. Из результата вырезаются шесть цифр. Поскольку время у всех одинаковое, а секрет общий, код совпадает без единого запроса в сеть.
Отсюда два практических следствия. Первое: приложение работает в самолёте и без симкарты. Второе: если часы на телефоне сильно сбились, коды перестают подходить — проверьте автоматическую сверку времени.
Резервные коды: сделайте это сразу
При включении второго фактора сервис выдаёт список одноразовых кодов. Их выдают один раз, и это единственный способ войти, когда телефон утерян, разбит или сброшен.
Типичная ошибка — сохранить их скриншотом в галерею того же телефона. Когда телефон пропадёт, пропадут и коды.
Храните их в менеджере паролей — он синхронизируется между устройствами — или распечатайте и положите к документам. Проверьте, что коды действительно сохранились, до того как они понадобятся.
Где включать обязательно
Почта. Через неё восстанавливают всё остальное, поэтому это первый пункт, а не последний.
Банк и госуслуги. Там второй фактор часто уже обязателен, но стоит проверить, что это не SMS.
Менеджер паролей. Хранилище со всеми паролями — очевидная цель.
Рабочие системы и соцсети. Угнанный рабочий аккаунт бьёт не только по вам, а угнанная соцсеть используется для мошенничества от вашего имени.
Что второй фактор не защищает
Он бесполезен против поддельных сайтов, если вы сами вводите код на странице злоумышленника — тот передаёт его настоящему сервису в реальном времени. Спасает здесь только аппаратный ключ или привычка проверять адрес в строке браузера.
Он также не заменяет надёжный пароль: это второй рубеж, а не замена первого.