Специалисты в сфере информационной безопасности уже давно сошлись на том, что самый надежный способ двухфакторной аутентификации при помощи одноразовых кодов — это приложения-аутентификаторы. Большинство сервисов предлагает этот способ в качестве второго уровня защиты учетной записи. А в некоторых случаях двухфакторная аутентификация с помощью кода из приложения — и вовсе единственный доступный вариант.
Но о том, почему одноразовые коды считаются такими безопасными, говорят не так часто, поэтому могут возникнуть вопросы: а хороший ли это вариант, насколько он вообще надежен, о каких опасностях стоит подумать и о чем нужно помнить, когда пользуешься таким способом двухфакторной аутентификации. Рассказываем обо всем этом в нашем посте.
Если вы пользуетесь двухфакторной аутентификацией с помощью одноразовых кодов, генерируемых в приложении, вовсе не обязательно использовать Google Authenticator. За десятилетие существования этого метода аутентификации появилось немало альтернатив, которые превосходят оригинал от Google по удобству и функциональности.
И если еще три года назад приложения-аутентификаторы можно было сосчитать по пальцам, то сейчас их существует несколько десятков, так что в этом многообразии немудрено и заблудиться. В этом посте мы расскажем про 11 наиболее интересных приложений. А чтобы было проще выбрать аутентификатор для интересующих вас операционных систем, мы разбили приложения на соответствующие группы.
Теперь поговорим о каждом из перечисленных приложений-аутентификаторов отдельно и разберемся, какие у них плюсы, минусы и индивидуальные особенности.
- OTP auth
- Встроенный аутентификатор iOS и macOS
- Физический доступ и подглядывание через плечо
- Cisco Duo Mobile
- Насколько безопасна аутентификация кодом из приложения
- «Железные» аутентификаторы FIDO U2F
- Как работают токены FIDO U2F
- Какими бывают U2F-устройства
- Приложения для двухфакторной аутентификации
- Как работают приложения-аутентификаторы
- Совместимость приложений для двухфакторной аутентификации и сервисов
- Лучшие приложения для двухфакторной аутентификации
- Google Authenticator
- Microsoft Authenticator
- FreeOTP
- Authy
- «Яндекс. Ключ»
- Утечки, взлом почты и обходные пути
- Одноразовые коды в файле или на бумажке
- Как оставаться в безопасности
- SMS, приложение или YubiKey?
- WinAuth
- Зловреды-стилеры
- Twilio Authy
- Бэкапы аутентификаторов (а точнее, их отсутствие)
- Не забудьте сделать резервную копию
- Step Two
- AndOTP
- Фишинговые сайты
OTP auth
Операционные системы: iOS, macOS (590 ₽)
Для тех пользователей айфонов, которые прочитали выше про andOTP и начали завидовать владельцам Android, у нас хорошая новость: для iOS тоже есть продвинутое приложение-аутентификатор. Создатели OTP auth явно понимают проблемы тех, кто использует 2FA в большом количестве сервисов, поэтому в приложении есть система папок, которые позволяют упорядочить хранение токенов.

Помимо прочего, OTP auth позволяет настроить размер шрифта для одноразовых кодов
Также OTP auth позволяет в любой момент посмотреть секретный ключ или QR-код для любого токена — или экспортировать их все сразу в файл на смартфоне. Дополнительно поддерживается синхронизация через iCloud. Вход в приложение можно защитить как с помощью Touch ID или Face ID, так и помощью отдельного пароля именно для OTP auth — что будет более разумно с учетом легкости экспорта токенов из этого приложения. Из полезных функций не хватает разве что скрытия кодов от чужого взгляда — этого в OTP auth почему-то не предусмотрели.
Резюме: OTP auth — самый многофункциональный аутентификатор для iOS с очень простым и удобным экспортом токенов.
Встроенный аутентификатор iOS и macOS
Операционные системы: iOS (встроен в систему), macOS (встроен в браузер Safari)

С недавних пор в iOS и macOS появились встроенные аутентификаторы. Но отдельное приложение они не очень-то заменяют
Резюме: на первый взгляд, встроить аутентификатор прямо в ОС — неплохая идея; однако автозаполнение работает не очень стабильно, а для использования в качестве замены отдельного приложения-аутентификатора эту функцию слишком глубоко спрятали.
Физический доступ и подглядывание через плечо
Как минимизировать такие риски?
Cisco Duo Mobile
Операционные системы: Android, iOS
Duo Mobile — одно из старейших приложений-аутентификаторов, которое в 2018 году было куплено компанией Cisco. Главное его достоинство — очень простой и удобный интерфейс. Также Duo Mobile умеет скрывать коды от посторонних взглядов и не требует регистрации. Однако дополнительных функций Duo Mobile ощутимо не хватает, и в первую очередь — защиты входа в приложение: ее нет ни в версии для iOS, ни в версии для Android.

В Android-версии Cisco Duo Mobile есть галочка «временно разрешить скриншоты», так что для разнообразия здесь будут скриншоты обеих версий
Для облачного бэкапа Duo Mobile использует две разные системы: на платформе Android это Google Cloud, а на iOS — iCloud. Для этого используются аккаунты Google и Apple соответственно, которые в любом случае уже есть у пользователя смартфона. Так что новую учетную запись для работы с приложением заводить не придется. Но у этого решения есть и минус: синхронизировать данные между версиями для Android и iOS не получится, а экспорта в файл в Duo Mobile не предусмотрено, равно как нет и возможности посмотреть секретный ключ или QR-код для уже сохраненных токенов (что могло бы помочь в случае ручной синхронизации).
Резюме: Cisco Duo Mobile может подойти, если вы пользуетесь только одной мобильной операционкой и совершенно точно не планируете переезжать.
Насколько безопасна аутентификация кодом из приложения
Подытожим главные преимущества аутентификации с помощью одноразового кода из приложения.
Как видите, система хорошо продумана — ее разработчики сделали все возможное для того, чтобы она была максимально безопасной. Но, конечно, абсолютно безопасных решений не существует, так что даже при использовании аутентификации кодом из приложения стоит помнить о некоторых рисках — и принять определенные меры предосторожности. Об этом мы дальше и поговорим.
«Железные» аутентификаторы FIDO U2F
Если приложение, генерирующее одноразовые коды, кажется вам слишком эфемерным способом защитить свои аккаунты, и хочется чего-то более постоянного, надежного и материального — буквально запереть аккаунт на ключ и положить его в карман, — то у меня есть для вас хорошая новость: такой вариант также существует. Это аппаратные токены стандарта U2F (Universal 2nd Factor), созданного FIDO Alliance.
Как работают токены FIDO U2F
Аппаратные U2F-токены очень полюбились специалистам по безопасности — в первую очередь потому, что с точки зрения пользователя они работают очень просто. Для начала работы достаточно подключить U2F-токен к вашему устройству и зарегистрировать его в совместимом сервисе, причем делается это буквально в пару кликов.
Впоследствии при необходимости подтвердить вход в этот сервис нужно будет подключить U2F-токен к тому устройству, с которого вы входите, и нажать на токене кнопку (в некоторых устройствах — ввести PIN или приложить палец к сканеру). Все — никаких сложных настроек, ввода длинных последовательностей случайных символов и прочих танцев с бубном, которые обычно все себе представляют при упоминании слова «криптография».

Вставьте ключ и нажмите кнопку — и это действительно все
При этом «под капотом» все устроено очень умно и криптографически надежно: при регистрации токена на сервисе создается пара криптографических ключей — приватный и публичный. Публичный сохраняется на сервере, а приватный хранится в защищенном хранилище Secure Element, которое является сердцем U2F-токена, — и этот ключ никогда не покидает устройство.
Приватный ключ используется для того, чтобы зашифровать подтверждение входа, которое передается на сервер и может быть расшифровано с помощью публичного ключа. Если кто-то от вашего имени попытается передать подтверждение входа, зашифрованное неправильным приватным ключом, то при расшифровке с помощью известного сервису публичного ключа вместо подтверждения получится бессмыслица, и сервис не пустит его в аккаунт.
Какими бывают U2F-устройства
Наиболее известный и распространенный пример U2F — это «ключи» YubiKey, которые производит компания Yubico. Собственно, она и стояла у истоков этого стандарта, но предпочла сделать его открытым, для чего и был создан FIDO Alliance. А поскольку стандарт открытый, вы не ограничены в выборе: U2F-совместимые устройства производят и продают разные компании — в онлайн-магазинах можно найти множество разнообразных моделей.

YubiKey — вероятно, самые популярные U2F-токены
Например, Google недавно представила свой комплект аппаратных аутентификаторов Google Titan Security Keys. На самом деле это ключи производства Feitian Technologies (второй по популярности производитель U2F-токенов после Yubico), для которых в Google написали собственную прошивку.
Разумеется, все аппаратные аутентификаторы, совместимые со стандартом U2F, будут с одинаковым успехом работать со всеми сервисами, которые также с этим стандартом совместимы. Однако у разных моделей есть несколько важных различий, и самое важное из них — это интерфейсы, которыми оборудован «ключ». От этого напрямую зависит, с какими устройствами он сможет работать:
USB — для подключения к компьютерам (Windows, Mac или Linux — неважно, «ключи» работают без установки каких-либо драйверов). Помимо обычного USB-A бывают «ключи» с USB-C.
NFC — необходим для использования со смартфонами и планшетами на Android.
Bluetooth — понадобится на тех мобильных устройствах, в которых нет NFC. К примеру, аутентификатор с Bluetooth все еще нужен владельцам iPhone: несмотря на то, что в iOS уже разрешили приложениям использовать NFC (до 2018 года это было позволено только Apple Pay), разработчики большинства совместимых с U2F приложений еще не воспользовались этой возможностью. У Bluetooth-аутентификаторов есть пара минусов: во-первых, их нужно заряжать, а во-вторых, их подключение занимает гораздо больше времени.
В базовых моделях U2F-токенов обычно есть только поддержка собственно U2F — такой ключ обойдется в $10–20. Есть устройства подороже ($20–50), которые заодно умеют работать в качестве смарт-карты, генерировать одноразовые пароли (в том числе OATH TOTP и HOTP), генерировать и хранить ключи PGP-шифрования, могут использоваться для входа в Windows, macOS и Linux и так далее.
Приложения для двухфакторной аутентификации
У единожды сгенерированного набора одноразовых кодов есть один недостаток: рано или поздно он закончится, и вполне может так получиться, что вы останетесь без кода в самый неподходящий момент. Поэтому есть способ лучше: можно генерировать одноразовые коды на лету с помощью небольшого и, как правило, очень простого приложения — аутентификатора.
Как работают приложения-аутентификаторы
Работают приложения для двухфакторной аутентификации очень просто. Вот что придется сделать:

Коды создаются на основе ключа, который известен только вам и серверу, а также текущего времени, округленного до 30 секунд. Поскольку обе составляющие одинаковы и у вас, и у сервиса, коды генерируются синхронно. Этот алгоритм называется OATH TOTP (Time-based One-time Password), и в подавляющем большинстве случаев используется именно он.
Также существует альтернатива — алгоритм OATH HOTP (HMAC-based One-time Password). В нем вместо текущего времени используется счетчик, увеличивающийся на 1 при каждом новом созданном коде. Но этот алгоритм редко встречается в реальности, поскольку при его использовании гораздо сложнее обеспечить синхронное создание кодов на стороне сервиса и приложения. Проще говоря, есть немалый риск, что в один не очень прекрасный момент счетчик собьется и ваш одноразовый пароль не сработает.
Так что можно считать OATH TOTP де-факто индустриальным стандартом (хотя формально это даже не стандарт, на чем создатели этого алгоритма очень настаивают в его описании).
Совместимость приложений для двухфакторной аутентификации и сервисов
Подавляющее большинство приложений для двухфакторной аутентификации работает по одному и тому же алгоритму, так что для всех сервисов, которые поддерживают аутентификаторы, можно использовать любое из них — какое вам больше нравится.
Как и в любом добротном правиле, в этом тоже есть определенное количество исключений. Некоторые сервисы по каким-то причинам, ведомым только им одним, предпочитают делать свои собственные приложения для двухфакторной аутентификации, которые работают только с ними. Более того, сами сервисы не работают ни с какими другими приложениями, кроме своих собственных.
Особенно это распространено среди крупных издателей компьютерных игр — например, существуют несовместимые со сторонними сервисами приложения Blizzard Authenticator, Steam Mobile с встроенным аутентификатором Steam Guard, Wargaming Auth и так далее. Для этих сервисов придется ставить именно эти приложения.
Также по этому странному пути пошла Adobe, разработавшая Adobe Authenticator, который работает только с аккаунтами AdobeID. Но при этом вы можете использовать для защиты AdobeID и другие аутентификаторы, так что вообще непонятно, ради чего было городить огород.
Так или иначе, большинство нормальных ИТ-компаний не ограничивает пользователей в выборе 2FA-приложения. И даже если по каким-то соображениям им хочется контролировать этот процесс и создать свое приложение, то чаще всего они позволяют защищать с его помощью не только «свои» аккаунты, но и учетные записи сторонних сервисов.
Поэтому просто выбирайте приложение-аутентификатор, которое вам больше нравится по набору дополнительных функций — оно будет работать с большинством сервисов, которые вообще поддерживают 2FA-приложения.
Лучшие приложения для двухфакторной аутентификации
Выбор 2FA-приложений на удивление велик: поиск по запросу «authenticator» в Google Play или Apple App Store выдает не один десяток результатов. Мы не советуем устанавливать первое попавшееся приложение — это может быть небезопасно, ведь, по сути, вы собираетесь доверить ему ключи от своих аккаунтов (оно не будет знать ваши пароли, конечно, но ведь 2FA вы добавляете именно потому, что пароли имеют свойство утекать). В общем, стоит выбирать из приложений, созданных крупными и уважаемыми разработчиками.
Несмотря на то что базовая функция у всех этих приложений одна и та же — создание одноразовых кодов по одному и тому же алгоритму, некоторые аутентификаторы обладают дополнительными функциями или особенностями интерфейса, которые могут показаться вам удобными. Перечислим несколько самых интересных вариантов.
Google Authenticator
Поддерживаемые платформы: Android, iOS
Как отмечают буквально все публикации, Google Authenticator — это самое простое в использовании из всех существующих приложений для двухфакторной аутентификации. У него даже настроек нет. Все, что можно сделать, — это добавить новый токен (так называется генератор кодов для отдельного аккаунта) или удалить один из имеющихся. А чтобы скопировать код в буфер обмена, достаточно коснуться его пальцем на сенсорном экране смартфона или планшета. Все!
Однако у такой простоты есть и недостаток: если вам что-то не нравится в интерфейсе или хочется от аутентификатора чего-то большего — придется устанавливать другое приложение.
Очень просто использовать.
Duo Mobile также крайне прост в использовании, минималистичен и лишен дополнительных настроек. По сравнению с Google Authenticator у него есть одно преимущество: по умолчанию Duo Mobile скрывает коды — чтобы увидеть код, надо нажать на конкретный токен. Если вы, как и я, испытываете дискомфорт каждый раз, когда открываете аутентификатор и показываете всем окружающим кучу кодов от всех своих аккаунтов сразу, то вам эта особенность Duo Mobile наверняка понравится.
По умолчанию скрывает коды.
Microsoft Authenticator
В Microsoft тоже не стали усложнять и сделали свой аутентификатор на вид очень минималистичным. Но при этом Microsoft Authenticator заметно функциональнее, чем Google Authenticator. Во-первых, хоть по умолчанию все коды показываются, но каждый из токенов можно отдельно настроить так, чтобы при запуске приложения код был скрыт.
Во-вторых, Microsoft Authenticator упрощает вход в аккаунты Microsoft. В этом случае после ввода пароля достаточно будет нажать в приложении кнопку подтверждения входа — и все, можно даже не вводить одноразовый код.
Можно настроить, чтобы коды скрывались.
Дополнительные возможности для входа в аккаунты Microsoft.
FreeOTP
Есть четыре причины, по которым вам может понравиться этот аутентификатор, разработанный Red Hat. Во-первых, это ваш выбор, если вы любите программное обеспечение с открытым кодом. Во-вторых, это самое маленькое приложение из всех рассматриваемых — версия для iOS занимает всего 750 Кбайт. Для сравнения: минималистичный Google Authenticator занимает почти 14 Мбайт, а приложение Authy, о котором мы поговорим ниже, — аж 44 Мбайта.
В-третьих, по умолчанию приложение скрывает коды и показывает их только после касания. Наконец, в-четвертых, FreeOTP позволяет максимально гибко конфигурировать токены вручную, если вам это зачем-нибудь нужно. Разумеется, обычный способ создания токена с помощью сканирования QR-кода тоже поддерживается.
По умолчанию скрывает коды.
Приложение занимает всего 700 Кбайт.
Открытый код.
Максимум настроек при создании токена вручную.
Authy
Поддерживаемые платформы: Android, iOS, Windows, macOS, Chrome
Самое навороченное из приложений для двухфакторной аутентификации, основным достоинством которого является то, что все токены хранятся в облаке. Это позволяет получить доступ к токенам с любого из ваших устройств. Заодно это упрощает переезд на новые устройства — не придется заново активировать 2FA в каждом сервисе, можно продолжить пользоваться существующими токенами.
В облаке токены зашифрованы ключом, который создается на основе заданного пользователем пароля, — то есть данные хранятся безопасно, и украсть их будет нелегко. Также можно установить ПИН-код на вход в приложение — или защитить его отпечатком пальца, если ваш смартфон оснащен соответствующим сканером.
Основной недостаток Authy состоит в том, что приложение с ходу требует завести аккаунт, привязанный к вашему телефонному номеру, — без этого просто не получится начать с ним работать.
Токены хранятся в облаке, что позволяет использовать их на всех своих устройствах.
По той же причине очень удобно переезжать на новое устройство.
Вход в приложение защищен PIN-кодом или отпечатком пальца.
На экране показывается код только для последнего использованного токена.
В отличие от остальных приложений, поддерживает не только Android и iOS, но и Windows, macOS и Chrome.
«Яндекс. Ключ»
На мой взгляд, по концепции «Яндекс. Ключ» — это самое удачное из существующих приложений для двухфакторной аутентификации. С одной стороны, оно не требует с ходу регистрироваться — можно начать им пользоваться с той же легкостью, как и Google Authenticator. С другой стороны, в нем есть несколько дополнительных возможностей, которые открываются тем, кто не поленится зайти в настройки.
Во-первых, «Яндекс. Ключ» можно «запереть» на PIN-код или отпечаток пальца. Во-вторых, можно создать в облаке «Яндекса» резервную копию токенов, защищенную паролем (а вот на этом этапе уже придется указать номер телефона), и восстановить ее на любом из используемых вами устройств. Точно так же можно будет перенести токены на новое устройство, когда понадобится переезжать.
Получается, что «Яндекс. Ключ» сочетает в себе простоту Google Authenticator и расширенную функциональность Authy — в зависимости от того, что вы предпочитаете. Единственный недостаток приложения — не вполне удобный для использования с большим количеством токенов интерфейс.
Минимализм на старте, расширенная функциональность доступна через настройки.
Создание резервных копий токенов в облаке для использования на нескольких устройствах и переезда на новые.
Вход в приложение защищен PIN-кодом или отпечатком пальца.
На экране показывается код только для последнего использованного токена.
Заменяет постоянный пароль к аккаунту «Яндекса».
При большом количестве токенов не очень удобно искать нужный.
Утечки, взлом почты и обходные пути
Выше я сказала, что аутентификация с помощью одноразовых кодов из приложения отлично защищает от утечек паролей. И в идеальном мире это действительно так. К сожалению, живем мы не в нем, так что есть один важный нюанс. Связан он с тем, что сервисы, как правило, очень не хотят терять своих пользователей из-за такой досадной мелочи, как утрата аутентификатора (что может случиться с каждым). Поэтому на такой случай у них обычно предусмотрен альтернативный способ входа: очень часто это отправка одноразового кода или ссылки-подтверждения на электронную почту, к которой привязан аккаунт.
Это значит, что если произошла утечка и, следовательно, злоумышленникам известны и пароль от аккаунта, и почта, к которой эта учетная запись привязана, то они могут попытаться воспользоваться таким альтернативным способом входа в учетную запись. И если ваша почта плохо защищена — а особенно если вы используете для нее тот же самый пароль и не включили двухфакторную аутентификацию, — то весьма вероятно, что у злоумышленников получится обойти ввод одноразового кода из приложения.
Что по этому поводу стоит делать?
Опенсорсное приложение-аутентификатор, которое было создано после того, как исходный код Google Authenticator стал закрытым. Интерфейс FreeOTP крайне минималистичен, в нем вообще нет ничего лишнего. Особенно в iOS-версии — из нее убрали даже опцию создания токена на основе секретного ключа, оставив только сканирование QR-кода. А вот в Android-версии по-прежнему доступны оба варианта, причем при создании токена вручную его можно максимально гибко настроить: выбрать тип генерации (TOTP или HOTP), количество знаков в коде, алгоритм и временной интервал обновления кодов.

FreeOTP — самый минималистичный аутентификатор с открытым исходным кодом
Из недостатков следует отметить, что приложение ни в каком виде не поддерживает ни экспорт/импорт токенов в виде файла, ни синхронизацию через облако. Также в FreeOTP нельзя установить ПИН-код или еще как-либо защитить вход в приложение (в iOS-версии можно защитить отдельные токены с помощью Touch ID или Face ID). Зато приложение по умолчанию скрывает коды от взглядов из-за плеча, причем даже если вы отключите сокрытие, оно автоматически включится через 30 секунд бездействия. Наконец, есть и еще один плюс: FreeOTP занимает минимум памяти смартфона — около 2-3 Мбайт (для сравнения, Google Authenticator занимает 15-20 Мбайт, а Microsoft Authenticator — 150-200 Мбайт).
Резюме: как и все опенсорсное, FreeOTP — слегка своеобразное приложение, которому можно многое простить за минимализм в интерфейсе и объеме занимаемого дискового пространства.
Одноразовые коды в файле или на бумажке
Наиболее простая замена одноразовым паролям, присылаемым в SMS, — это те же самые одноразовые пароли, но заготовленные заранее. Это не самый плохой вариант, особенно для тех сервисов, в которых вам надо авторизовываться сравнительно редко. Собственно, даже для того же «Фейсбука» этот метод вполне может подойти, особенно в качестве резервного способа входа.
Работает это очень просто: по запросу сервис генерирует и показывает на экране десяток одноразовых кодов, которые в дальнейшем могут быть использованы для подтверждения входа в него. Дальше вы просто распечатываете или переписываете эти коды на бумагу и кладете в сейф. Или, что еще проще, сохраняете в зашифрованных записях в менеджере паролей.
В общем, не так важно, будете ли вы хранить эти коды на теплой ламповой бумаге или в бездушном цифровом виде — важно сохранить их так, чтобы они а) не потерялись и б) не могли быть украдены.
Microsoft Authenticator часто выбирают те, кто ищет альтернативу Google Authenticator — просто в силу известности компании-разработчика. Отчасти это может быть оправданно: приложение Microsoft добавляет к базовому набору функций пару полезных дополнений — например, оно умеет скрывать коды на экране, защищает вход в приложение и в iOS, и в Android-версии, а также позволяет сохранять токены в облаке. Особенно полезен Microsoft Authenticator для работы собственно с аккаунтами Microsoft — вводить код в этом случае вообще не потребуется, достаточно нажать кнопку подтверждения входа в приложении.

Microsoft Authenticator — все в принципе неплохо, но почему его так много?
Но есть и минусы. Во-первых, приложения для Android и iOS используют совершенно несовместимые системы бэкапа в облако, при этом переносить токены каким-то альтернативным способом вообще невозможно, так что если вы пользуетесь устройствами с разными ОС, будет очень неудобно. А во-вторых, Microsoft Authenticator занимает примерно в 10 раз больше места в памяти, чем Google Authenticator (150-200 Мбайт против 15-20 Мбайт).
Резюме: Microsoft Authenticator сильно упрощает вход в учетные записи Microsoft, но ему сложно простить несовместимость бэкапов для iOS и Android, а также чудовищный размер приложения.
Как оставаться в безопасности
Подведем итог. Сама по себе двухфакторная аутентификация, конечно, серьезно снижает риск угона ваших аккаунтов, но полной безопасности она не гарантирует. Поэтому стоит предпринять дополнительные меры предосторожности.
SMS, приложение или YubiKey?
Универсального ответа на этот вопрос не существует — для разных сервисов можно использовать разные варианты двухфакторной аутентификации в различных сочетаниях. Например, наиболее важные аккаунты (скажем, вашу основную почту, к которой привязаны остальные учетные записи) стоит защитить по максимуму — запереть на «железный» U2F-токен и запретить любые другие опции 2FA. Так можно быть уверенным, что никто и никогда не получит доступ к аккаунту без этого токена.
Хороший вариант — привязать к аккаунту два «ключа», как это делается с ключами от автомобиля: один всегда с собой, а другой лежит в надежном месте — на случай, если первый потеряется. При этом «ключи» могут быть разного типа: скажем, приложение-аутентификатор на смартфоне в качестве основного и U2F-токен или листочек с одноразовыми паролями, лежащий в сейфе, в качестве резервного средства.
Так или иначе, главный совет — по возможности избегать использования одноразовых паролей в SMS. Правда, получится это не всегда: например, финансовые сервисы в силу своей консервативности продолжают использовать SMS и крайне редко позволяют пользоваться чем-либо еще.
Яндекс. Ключ немного похож на Microsoft Authenticator. Это приложение также не требует обязательной регистрации — в «оффлайновом режиме» им можно пользоваться без всякого аккаунта. И в теории оно также упрощает вход в учетную запись компании-разработчика: для входа в аккаунт «Яндекса» больше не будет использоваться пароль, а надо будет либо сканировать в Яндекс. Ключе QR-код подтверждения входа, либо вводить генерируемый аутентификатором одноразовый код. Этот код, кстати, отличается от кодов других сервисов — он состоит из восьми букв вместо обычных шести цифр (то есть возможных комбинаций в 200 000 раз больше — видимо, в «Яндексе» решили слегка перестраховаться).

Яндекс. Ключ — это в первую очередь аутентификатор для аккаунтов «Яндекса», хранение других токенов следует расценивать скорее как приятный бонус
Резюме: Яндекс. Ключ существенно упрощает вход в аккаунты «Яндекса», но интерфейс не самый удобный для тех, у кого много токенов.
WinAuth
Операционные системы: Windows
WinAuth в первую очередь заточен под геймеров. Дело в том, что у него есть уникальная суперспособность: это приложение поддерживает нестандартные токены для аутентификации в Steam, Battle.net и играх производства Trion/Gamigo. Так что если вы ищете альтернативу Steam Guard, Battle.net Authenticator или Glyph Authenticator / RIFT Mobile Authenticator, то вот вы ее и нашли.

WinAuth — редкий случай приложения-аутентификатора для Windows
Резюме: WinAuth явно понравится геймерам, поскольку позволяет создавать нестандартные токены, которые почему-то очень любят использовать издатели игр.
Зловреды-стилеры
Люди, мягко говоря, не очень любят проходить полную процедуру аутентификации. Поэтому сервисы стараются лишний раз не приставать к своим пользователям с такими вопросами. По сути, полностью аутентифицироваться — с вводом пароля и кода подтверждения — в большинстве случаев приходится лишь при первом входе в аккаунт на устройстве. Ну или, может быть, еще раз, если вы по неосторожности почистили cookie в браузере.
Дело в том, что после успешного входа сервис сохраняет на вашем компьютере небольшой cookie-файл, в котором содержится длинное и очень секретное число. В дальнейшем этот файл ваш браузер и будет предъявлять сервису для аутентификации. И если этот файл кому-то удастся выкрасть, то его можно использовать для входа в ваш аккаунт — ни пароль, ни одноразовый код при этом вообще не понадобятся.
Кражей таких файлов (вместе с кучей другой информации вроде сохраненных в браузере паролей, ключей от криптокошельков и тому подобных вкусностей) занимаются трояны-стилеры. Если вам не повезет заполучить стилера на свой компьютер, есть очень немаленькая вероятность угона ваших аккаунтов — даже несмотря на все прочие меры предосторожности.
Чтобы этого не произошло:
В самом общем виде принцип работы таких приложений выглядит следующим образом: сервис, в котором вы аутентифицируетесь, и ваш аутентификатор запоминают некое число — секретный ключ (он содержится в в QR-коде, с помощью которого вы подключаете аутентификацию для данного сервиса в приложении). В дальнейшем на основе этого числа, а также текущего времени, по одинаковому алгоритму генерируются одноразовые коды — одновременно и на стороне аутентификатора, и на стороне сервиса.
Дальше вы вводите код, который сгенерировало ваше приложение, и сервис сравнивает его с тем, что сгенерировал он сам. Если коды совпадают, то все отлично, вас можно пустить в аккаунт (а если нет — то нельзя). Кроме того, при подключении приложения-аутентификатора через QR-код передается масса информации помимо секретного ключа. В том числе период времени, через который истекает «срок годности» одноразового кода — как правило, 30 секунд.
Самая важная информация — секретный ключ — передается всего один раз, в момент подключения аутентификатора, в дальнейшем же обе стороны его помнят. То есть при каждом новом входе в аккаунт никакой информации от сервиса к вашему аутентификатору вообще не передается, так что и перехватывать тут нечего. Собственно, приложениям-аутентификаторам для выполнения их основной функции даже не нужен доступ в Интернет. Так что все, что может в теории заполучить злоумышленник — это конечный продукт работы этой системы: собственно одноразовый код, который вы вводите. И даже этот код будет действителен буквально несколько десятков секунд.
Подробнее о том, как работают приложения-аутентификаторы, я уже рассказывала в отдельном посте — почитайте, если интересно узнать о стандартах аутентификации, информации, содержащейся в QR-кодах для подключения приложений, и о сервисах, несовместимых с наиболее распространенными аутентификаторами.
Twilio Authy
Операционные системы: Android, iOS, Windows, macOS, Linux
Главное преимущество Twilio Authy — тотальная мультиплатформенность. И дело не только в том, что у Authy есть версии под все актуальные операционные системы, а еще и в том, что в приложении прекрасно организована синхронизация между ними. Правда, из этого вытекает одно не самое приятное следствие: для использования приложения необходимо завести аккаунт, привязанный к номеру телефона, — без него оно просто не будет работать.

У Twilio Authy есть приложения под все операционные системы
Интерфейс у приложения заметно отличается от привычного по другим аутентификаторам. Вместо списка здесь использовано что-то вроде вкладок — в любой момент времени отображается только один выбранный токен, а все остальные представлены мелкими иконками в нижней части экрана, и между ними можно переключаться. При большом количестве токенов это не очень удобно. Причем в десктопной версии есть возможность выбрать отображение токенов списком, а вот в мобильной этого почему-то нет.
Резюме: Twilio Authy — ни шагу без регистрации и не самый удобный интерфейс на смартфонах, но зато есть приложения для любых операционных систем, и синхронизация между ними работает просто идеально.
Если вы оказались в этом посте, то, скорее всего, вы уже знаете о Google Authenticator и ищете ему альтернативу. Однако не упомянуть об этом приложении было бы как минимум странно — все-таки оно до сих пор остается невероятно популярным. Кроме того, аутентификатор Google удобно рассматривать как базовый вариант, по сравнению с которым другие программы имеют те или иные достоинства и недостатки.

Просто Google Authenticator в версии для iOS, ничего интересного
В целом Google Authenticator — вполне удобный аутентификатор для тех, кто не хочет связываться с синхронизацией токенов через облако. Вместо этого приложение позволяет легко экспортировать все заведенные в нем токены в одном гигантском QR-коде и так же легко импортировать их на новом устройстве. Версия для iOS не так давно успела обзавестись поиском по тегам и защитой входа с помощью Touch ID / Face ID, а вот в Android-версии ни поиска, ни защиты нет. Скрывать сгенерированные коды от посторонних глаз Google Authenticator по-прежнему не умеет, что может быть не очень удобно, если вы пользуетесь им в людном месте. Кстати, все аутентификаторы для Android блокируют снятие скриншотов, поэтому здесь и далее использованы скриншоты iOS-версий приложений.
Резюме: в Google Authenticator уже ощутимо не хватает полезных функций, но если не хотите связываться с хранением токенов в облаке — это все еще неплохой вариант.
Бэкапы аутентификаторов (а точнее, их отсутствие)
Обстоятельств, при которых можно лишиться аутентификатора, на самом деле не так уж мало.
Все это непредсказуемые события, поэтому лучше подготовиться к ним заранее, чтобы избежать неприятных последствий.
Не забудьте сделать резервную копию
Напоследок несколько советов. Во-первых, вовсе не обязательно использовать только одно приложение-аутентификатор. Для каких-то целей может больше подходить один вариант, а для каких-то других целей — другой. Их можно и нужно комбинировать в зависимости от ваших потребностей.
Во-вторых, советуем позаботиться о безопасности: установите надежную блокировку устройства и обязательно включите защиту входа в приложение. Особенно если вы собираетесь пользоваться одним из аутентификаторов, которые позволяют легко экспортировать токены: Google Authenticator, andOTP, OTP auth и WinAuth. C ними риски значительно выше, так как потенциальный злоумышленник может не просто подсмотреть одноразовый код, который действует 30 секунд, но полностью клонировать все токены.
В-третьих, не забудьте сделать резервную копию токенов — особенно если ваш выбор пал на одно из приложений, в которых нельзя ни посмотреть секретный ключ или QR-код, ни экспортировать токены в файл (а таких большинство). Резервная копия пригодится на случай, если вы потеряете смартфон или, например, приложение перестанет корректно работать после очередного обновления. В большинстве случаев восстановить аутентификатор без резервной копии будет значительно сложнее.
Step Two
Если andOTP вам кажется явным перебором, Twilio Authy отпугивает необходимостью регистрации, но при этом у вас есть потребность в аутентификаторе одновременно для iOS и macOS, то логичным шагом будет присмотреться к Step Two. Интерфейс минималистичен: что в iOS, что в macOS приложение больше всего напоминает калькулятор Apple — и этим по-своему прекрасно.

Step Two — образец минимализма
Настроек и функций тут тоже самый-самый минимум, но есть опция синхронизации через iCloud. Кроме того, десктопное приложение поддерживает сканирование QR-кодов — делает оно это через захват экрана, на что нужно разрешение пользователя (функция довольно опасная, поскольку в теории позволяет программе подсматривать за всем, что делает человек).
Резюме: Step Two — минималистичный аутентификатор для тех, у кого Mac и iPhone, а больше ничего не надо.
AndOTP
В аутентификаторе andOTP есть все, что только можно придумать для удобного и безопасного хранения токенов, и даже немного больше. Например, среди функций andOTP есть поддержка тегов и поиск токенов по названию. А также возможность подключения «тревожной кнопки», позволяющей в случае опасности стереть из приложения все токены и сбросить настройки.

Как и все аутентификаторы для Android, andOTP блокирует скриншоты на экране с кодами, поэтому здесь мы продемонстрируем меню настроек
Приложение позволяет посмотреть секретный ключ или QR-код для каждого токена по отдельности. Также можно сохранить сразу все токены в зашифрованный файл на Google Диск — то есть одновременно реализован и облачный бэкап, и нормальный экспорт в файл. Можно защитить вход в приложение паролем или отпечатком пальца, с помощью которых вы входите в Android. Но если хочется большей безопасности, можно установить отдельный ПИН-код или даже длинный пароль на вход именно в andOTP, плюс автоблокировку после определенного периода бездействия, точную длительность которого вы выберете сами. И еще примерно три-четыре экрана разнообразных настроек — одним словом, мечта настоящего гика.
Резюме: andOTP — самый многофункциональный аутентификатор для Android, который явно понравится гикам: если вам когда-нибудь чего-нибудь не хватало в приложении-аутентификаторе, можете быть уверены, что в andOTP это есть.
Фишинговые сайты
К сожалению, несмотря на видимую простоту, фишинг остается крайне эффективным трюком преступников, и защититься от особо качественно сделанных образчиков может быть нелегко. Общие советы тут такие.

