что такое код авторизации на телефоне

Как пользователь может выполнить авторизацию в мобильном приложении?

Опубликовано nord cloud soft в 30/05/2021

Как пользователь может выполнить авторизацию в мобильном приложении?

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

Выбор способа авторизации

Если нужно хранить данные пользователей, то авторизация в мобильном приложении необходима. Существует несколько вариантов выполнения авторизации.

1. Авторизация по номеру телефона
2. Авторизация по номеру телефона и паролю
3. Авторизация по номеру телефона/e-mail и паролю
4. Авторизация по логину (имени) и паролю
5. Авторизация через социальную сеть Facebook и ВК
6. Авторизация через Google-аккаунт

Разберем существующие варианты авторизации, чтобы было проще выбирать тот метод, который вас устраивает.

1. Авторизация по номеру телефона

При такой авторизации требуется подтвердить номер телефона, вводом кода подтверждения, полученного по SMS. Отдельный экран «Регистрация» не требуется, так как при авторизации сервер сам может определить является ли данный пользователь новым или ранее он уже регистрировался. Если сервер определит пользователя, как нового, то выполняется его регистрация, иначе пользователь авторизуется, как ранее существующий.

Плюсы: простота авторизации, минимум запрашиваемых у пользователя данных, сразу получаете достоверный номер телефон.что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

Минусы: не подходит для приложений, которые используют миллионы, рассылка SMS требует затрат. По состоянию на 01.04.2021 средняя стоимость SMS 3,5-4 рубля.

Авторизация с применением только номера телефона очень проста, но может быть использована, если количество пользователей приложения не превышает несколько сотен. Лучше если аудитория приложения локализована в рамках одной страны. Например, России. Это связано с необходимостью рассылки SMS. При вводе номера телефона в поле ввода надо создать маску ввода, чтобы исключить добавление лишних символов (например, пробелов) и привести формат вводимых номеров телефонов к одному формату.

Нет необходимости реализовывать процедуру восстановления пароля (сброс пароля), так как пароль не используется.

Смена номера телефона для пользователя не доступна. Сменить номер телефона пользователя может только администратор через Админ панель.

2. Авторизация по номеру телефона и паролю

При авторизации нет необходимости проверять сразу телефон. Проверку достоверности номера телефона легко можно проверить позднее. Например, при возникновении подозрительной активности или при очередной авторизации. При регистрации пароль пользователь вводит сам. Чтобы избежать ошибки при вводе пароля используются два поля ввода, для пароля и для повторного ввода пароля.

Сейчас популярно использовать при регистрации одно поле для ввода пароля, без повторного ввода пароля в отдельном поле, но при этом надо обязательно сразу выполнять подтверждение номера телефона кодом, полученным в виде SMS- сообщения. Если пользователь забудет пароль, то он может выполнить инициализацию сброса пароля и ему на телефон придет SMS-сообщение, содержащие временный пароль.

3. Авторизация по номеру телефона/e-mail и паролю

Facebook и ВК используют авторизацию пользователей по телефона/e-mail и паролю. При регистрации пользователь может указать e-mail и пароль или телефон и пароль. Подтверждение номера телефона/e-mail при регистрации может не проводиться. Очень демократичный способ авторизации, который удобен для мобильных приложений ориентированных на миллионную аудиторию.что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

В наше время распространяется тренд, когда люди (не занимающиеся бизнесом) не имеют e-mail. Скорее всего это происходит в связи с сильным развитием социальных сетей и мессенджеров.

Восстановление пароля можно выполнить только если пользователь выполнил подтверждение e-mail или номера телефона.

4. Авторизация по логину (имени) и паролю

На некоторых онлайн-сервисах применяют способ авторизации по логину и паролю. Довольно старый способ авторизации, который имеет ряд недостатков, но благодаря своей лояльности к пользователю популярен. Пользователь сам решает, какой логин (имя) ему выбрать. Система не накладывает ограничений на вид логина, выбранного пользователем. Пароль при такой регистрации нужно вводить два раза, так как осложнено восстановление доступа сразу после регистрации из-за того, нет не подтвержденного e-mail, не номера телефона.что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

Такой способ авторизации подойдет для миллионной аудитории, но он чаще используется для онлайн-сервисов, потеря доступа к которым не является критичным для пользователя. Также такой способ авторизации характерен для мессенджеров, трекеров задач, CRM систем, т.е. для систем в которых интенсивно используется имя пользователя. В процессе использования приложения необходимо предусмотреть возможность получения дополнительной идентификации пользователя, например, e-mail, или телефон, или набора ключевых вопросов, для реализации процедуры восстановления пароля.

5. Авторизация через социальную сеть Facebook и ВК

Дополнительным способом авторизации пользователей может авторизация в мобильном приложении через аккаунт в социальной сети Facebook или ВКонтакте. Для этого пользователю предлагается открыть доступ к своему аккаунту в соответствующей социальной сети, ввести логин и пароль соответствующей сети и тем самым авторизоваться в мобильном приложении.

Данный метод авторизации применяется, как дополнительный, так многие не имеют аккаунтов в социальных сетях.что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

Минусы авторизации через социальную сеть

Плюсы авторизации через социальную сеть

6. Авторизация через Google-аккаунт

В данный момент такой вид авторизации в мобильных приложениях распространяемых в России встречается редко.

Выбор способа авторизации

Для выбора способов авторизации надо ответить на следующие вопросы.

Ответив на эти вопросы можно легко выбрать способ авторизации. Если планируется разработка мобильного приложения с «нуля», то лучше сразу спроектировать сервер Админ панели приложения с учетом поддержки выбранных способов авторизации.

Источник

Лучшие практики: Авторизация в мобильных приложениях Статьи редакции

Директор студии Surf Владимир Макеев написал для ЦП обзор форм авторизации, которые используются в мобильных приложениях — как её показывать, как сократить для пользователя время заполнения, что нельзя забыть при входе через соцсети и как сделать авторизацию через смартфон проще.

Как в сексе: чем позже — тем лучше

Заставляете пользователя проходить авторизацию или регистрироваться в вашем приложении сразу после того, как он его загрузил и открыл в первый раз? Значит, увеличиваете шансы приложения незамедлительно оказаться в корзине. Это подтверждается статистикой, поэтому наш первый совет: вставляйте авторизацию до момента, когда она действительно необходима. Это может быть отправка заказа или создание комментария. Вот небольшая статья на тему.

Основные способы входа в приложение, которые сегодня широко используются, — это логин и пароль, соцсети, телефон и код из SMS. Разберем подробнее первый из названных способов.

Логин и пароль

Если пользователю приходится вводить личные данные, наша задача — упростить для него этот процесс.

Подсказки к полям ввода

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне Немного терминологии

В простых формах, например, если мы используем привычный ввод логина и пароля, мы можем расположить названия полей в placeholders — это достаточно очевидно для пользователя. В более сложной форме, где есть ограничения на ввод данных, мы должны использовать labels и placeholder — например, пояснение к длине пароля. Labels и placeholders лучше размещать над полем ввода, так для пользователя в любой момент очевидно, что он заполняет, и как это следует делать.

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

В мобильных приложениях не лучшая практика — располагать label в одной строке с полем ввода. Это съедает полезное горизонтальное пространство. Например, форма регистрации Lamoda iPhone.

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

Автодополнения

Пароли

В приложении сложно вводить пароль дважды. Достаточно это делать один раз, а если ввод произошёл с ошибкой, у пользователя должна быть возможность изменить или восстановить пароль.

Пароль при вводе принято скрывать точками. Полезна кнопка «показать пароль» — она особенно важна на экране регистрации, если мы не просим пользователя ввести пароль дважды. Это интересно реализовано в спортивных трекерах Runtastic: пароль отображается, кнопка «глаз» зажата.

Восстановление пароля — задача не первостепенная. В большинстве топовых приложений пользователя для этого отправляют на веб-страницу. Восстановление не должно быть отдельным экраном, открывающимся в браузере, его можно реализовать на экране авторизации с помощью простых анимаций. Отличные примеры: Airbnb, Tumblr, Runtastic.

Проверка полей, клавиатуры и оферта

Правильность заполнения полей важно проверять в самом приложении. Валидация на стороне сервера занимает время пользователя, и это его раздражает. Это правило относится и к проверке доступных логинов и email, которая должна работать «на лету». Хорошие примеры — « Яндекс.Музыка», Twitter.

Для всех разных типов полей важно использовать соответствующие типы клавиатуры: iOS, Android. Если пользователь вводит почту, на клавиатуре должен быть знак @, цифры для ввода номера и прочее. Вы знаете, что никто не читает оферту. Думаю, что чекбокс соглашения с ней избыточен — он отвлекает пользователя от контента. Достаточно разместить текст «Зарегистрировавшись, вы соглашаетесь с политикой конфиденциальности и условиями предоставления услуг», нужное выделив ссылками.

Соцсети

Это простейший для пользователя способ входа: ему не нужно заполнять логин и пароль вручную. Кнопки соцсетей резонно сортировать по частоте использования в зависимости от платформы и страны. Google+ удобнее для Android, «ВКонтакте» есть у большинства пользователей в России. Так поступает сервис Foursquare в Android.

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

Когда пользователь входит через соцсеть, он ожидает, что сразу попадёт в приложение. Многие приложения просят ввести дополнительную информацию, что раздражает.

Со стороны технологий для реализации входа можно использовать универсальные OAuth-библиотеки, либо официальные SDK соцсетей. У официальных SDK есть важное преимущество: они производят авторизацию через установленные приложения либо через аккаунты пользователя в системных настройках. Если пользователь авторизуется через соцсеть, с большой вероятностью у него установлено соответствующее приложение.

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

Номер телефона и код подтверждения

Валидация ввода номера — задача непростая из-за проверки страны и маски ввода. Здесь отчасти может помочь библиотека от Google.

В Android можно сделать автокомплит номера из SIM-карты, однако это работает не на всех устройствах, поэтому в коде нужно учитывать возможные ошибки. На практике я не нашёл приложений, которые так делают, но применение такого способа вполне допустимо.

После ввода и отправки номера пользователю нужно ввести код из SMS. Android-приложение может делать это автоматически. Этот прием используют Viber, Telegram, Rocketbank. Важно лишь объяснить пользователю, что скоро придёт SMS, нужно только немного подождать.

Fabric Digits. У Twitter есть бесплатное готовое решение для авторизации через телефонный номер. Это SMS-шлюз, мобильные и веб-SDK. Внешний вид интерфейса в определённых рамках можно настраивать. Это наиболее простое решение задачи из коробки.

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне Fabric Digits

Источник

Коды в SMS небезопасны — рекомендуем пользоваться другими вариантами двухфакторной аутентификации

Почему SMS — не лучший выбор для двухфакторной аутентификации, и какие существуют альтернативы.

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

За последние пару лет идея двухфакторной аутентификации, о которой так долго говорили гики, сильно продвинулась в массы. Однако до сих пор в большинстве случаев речь идет о двухфакторной аутентификации при помощи одноразовых паролей, приходящих в SMS. А это, к сожалению, не очень-то надежный вариант. Вот что может пойти не так:

Надо заметить, что даже самый трудоемкий и высокотехнологичный из перечисленных методов перехвата пароля в SMS — с помощью взлома протокола SS7 — уже был использован на практике. Так что речь не о теоретической возможности возникновения неприятностей, а о вполне практической угрозе.

В общем, пароли в SMS — это не очень-то безопасно, а иногда даже и очень небезопасно. Поэтому есть смысл озаботиться поиском альтернативных вариантов двухэтапной аутентификации, о чем мы сегодня и поговорим.

Одноразовые коды в файле или на бумажке

Наиболее простая замена одноразовым паролям, присылаемым в SMS, — это те же самые одноразовые пароли, но заготовленные заранее. Это не самый плохой вариант, особенно для тех сервисов, в которых вам надо авторизовываться сравнительно редко. Собственно, даже для того же «Фейсбука» этот метод вполне может подойти, особенно в качестве резервного способа входа.

Работает это очень просто: по запросу сервис генерирует и показывает на экране десяток одноразовых кодов, которые в дальнейшем могут быть использованы для подтверждения входа в него. Дальше вы просто распечатываете или переписываете эти коды на бумагу и кладете в сейф. Или, что еще проще, сохраняете в зашифрованных записях в менеджере паролей.

В общем, не так важно, будете ли вы хранить эти коды на теплой ламповой бумаге или в бездушном цифровом виде — важно сохранить их так, чтобы они а) не потерялись и б) не могли быть украдены.

Приложения для двухфакторной аутентификации

У единожды сгенерированного набора одноразовых кодов есть один недостаток: рано или поздно он закончится, и вполне может так получиться, что вы останетесь без кода в самый неподходящий момент. Поэтому есть способ лучше: можно генерировать одноразовые коды на лету с помощью небольшого и, как правило, очень простого приложения — аутентификатора.

Как работают приложения-аутентификаторы

Работают приложения для двухфакторной аутентификации очень просто. Вот что придется сделать:

что такое код авторизации на телефоне. Смотреть фото что такое код авторизации на телефоне. Смотреть картинку что такое код авторизации на телефоне. Картинка про что такое код авторизации на телефоне. Фото что такое код авторизации на телефоне

Коды создаются на основе ключа, который известен только вам и серверу, а также текущего времени, округленного до 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 вы добавляете именно потому, что пароли имеют свойство утекать). В общем, стоит выбирать из приложений, созданных крупными и уважаемыми разработчиками.

Несмотря на то что базовая функция у всех этих приложений одна и та же — создание одноразовых кодов по одному и тому же алгоритму, некоторые аутентификаторы обладают дополнительными функциями или особенностями интерфейса, которые могут показаться вам удобными. Перечислим несколько самых интересных вариантов.

1. Google Authenticator

Поддерживаемые платформы: Android, iOS

Как отмечают буквально все публикации, Google Authenticator — это самое простое в использовании из всех существующих приложений для двухфакторной аутентификации. У него даже настроек нет. Все, что можно сделать, — это добавить новый токен (так называется генератор кодов для отдельного аккаунта) или удалить один из имеющихся. А чтобы скопировать код в буфер обмена, достаточно коснуться его пальцем на сенсорном экране смартфона или планшета. Все!

Однако у такой простоты есть и недостаток: если вам что-то не нравится в интерфейсе или хочется от аутентификатора чего-то большего — придется устанавливать другое приложение.

+ Очень просто использовать.

2. Duo Mobile

Поддерживаемые платформы: Android, iOS

Duo Mobile также крайне прост в использовании, минималистичен и лишен дополнительных настроек. По сравнению с Google Authenticator у него есть одно преимущество: по умолчанию Duo Mobile скрывает коды — чтобы увидеть код, надо нажать на конкретный токен. Если вы, как и я, испытываете дискомфорт каждый раз, когда открываете аутентификатор и показываете всем окружающим кучу кодов от всех своих аккаунтов сразу, то вам эта особенность Duo Mobile наверняка понравится.

+ По умолчанию скрывает коды.

3. Microsoft Authenticator

Поддерживаемые платформы: Android, iOS

В Microsoft тоже не стали усложнять и сделали свой аутентификатор на вид очень минималистичным. Но при этом Microsoft Authenticator заметно функциональнее, чем Google Authenticator. Во-первых, хоть по умолчанию все коды показываются, но каждый из токенов можно отдельно настроить так, чтобы при запуске приложения код был скрыт.

Во-вторых, Microsoft Authenticator упрощает вход в аккаунты Microsoft. В этом случае после ввода пароля достаточно будет нажать в приложении кнопку подтверждения входа — и все, можно даже не вводить одноразовый код.

+ Можно настроить, чтобы коды скрывались.
+ Дополнительные возможности для входа в аккаунты Microsoft.

4. FreeOTP

Поддерживаемые платформы: Android, iOS

Есть четыре причины, по которым вам может понравиться этот аутентификатор, разработанный Red Hat. Во-первых, это ваш выбор, если вы любите программное обеспечение с открытым кодом. Во-вторых, это самое маленькое приложение из всех рассматриваемых — версия для iOS занимает всего 750 Кбайт. Для сравнения: минималистичный Google Authenticator занимает почти 14 Мбайт, а приложение Authy, о котором мы поговорим ниже, — аж 44 Мбайта.

В-третьих, по умолчанию приложение скрывает коды и показывает их только после касания. Наконец, в-четвертых, FreeOTP позволяет максимально гибко конфигурировать токены вручную, если вам это зачем-нибудь нужно. Разумеется, обычный способ создания токена с помощью сканирования QR-кода тоже поддерживается.

+ По умолчанию скрывает коды.
+ Приложение занимает всего 700 Кбайт.
+ Открытый код.
+ Максимум настроек при создании токена вручную.

5. Authy

Самое навороченное из приложений для двухфакторной аутентификации, основным достоинством которого является то, что все токены хранятся в облаке. Это позволяет получить доступ к токенам с любого из ваших устройств. Заодно это упрощает переезд на новые устройства — не придется заново активировать 2FA в каждом сервисе, можно продолжить пользоваться существующими токенами.

В облаке токены зашифрованы ключом, который создается на основе заданного пользователем пароля, — то есть данные хранятся безопасно, и украсть их будет нелегко. Также можно установить ПИН-код на вход в приложение — или защитить его отпечатком пальца, если ваш смартфон оснащен соответствующим сканером.

Основной недостаток Authy состоит в том, что приложение с ходу требует завести аккаунт, привязанный к вашему телефонному номеру, — без этого просто не получится начать с ним работать.

+ Токены хранятся в облаке, что позволяет использовать их на всех своих устройствах.
+ По той же причине очень удобно переезжать на новое устройство.
+ Вход в приложение защищен PIN-кодом или отпечатком пальца.
+ На экране показывается код только для последнего использованного токена.
+ В отличие от остальных приложений, поддерживает не только Android и iOS, но и Windows, macOS и Chrome.

− Требуется зарегистрироваться в Authy, используя номер телефона, — без этого приложение не работает.

6. «Яндекс.Ключ»

Поддерживаемые платформы: Android, iOS

На мой взгляд, по концепции «Яндекс.Ключ» — это самое удачное из существующих приложений для двухфакторной аутентификации. С одной стороны, оно не требует с ходу регистрироваться — можно начать им пользоваться с той же легкостью, как и Google Authenticator. С другой стороны, в нем есть несколько дополнительных возможностей, которые открываются тем, кто не поленится зайти в настройки.

Во-первых, «Яндекс.Ключ» можно «запереть» на PIN-код или отпечаток пальца. Во-вторых, можно создать в облаке «Яндекса» резервную копию токенов, защищенную паролем (а вот на этом этапе уже придется указать номер телефона), и восстановить ее на любом из используемых вами устройств. Точно так же можно будет перенести токены на новое устройство, когда понадобится переезжать.

Получается, что «Яндекс.Ключ» сочетает в себе простоту Google Authenticator и расширенную функциональность Authy — в зависимости от того, что вы предпочитаете. Единственный недостаток приложения — не вполне удобный для использования с большим количеством токенов интерфейс.

+ Минимализм на старте, расширенная функциональность доступна через настройки.
+ Создание резервных копий токенов в облаке для использования на нескольких устройствах и переезда на новые.
+ Вход в приложение защищен PIN-кодом или отпечатком пальца.
+ На экране показывается код только для последнего использованного токена.
+ Заменяет постоянный пароль к аккаунту «Яндекса».

− При большом количестве токенов не очень удобно искать нужный.

«Железные» аутентификаторы FIDO U2F: YubiKey и все-все-все

Если приложение, генерирующее одноразовые коды, кажется вам слишком эфемерным способом защитить свои аккаунты, и хочется чего-то более постоянного, надежного и материального — буквально запереть аккаунт на ключ и положить его в карман, — то у меня есть для вас хорошая новость: такой вариант также существует. Это аппаратные токены стандарта 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-аутентификаторов есть пара минусов: во-первых, их нужно заряжать, а во-вторых, их подключение занимает гораздо больше времени.

Что же выбрать: SMS, приложение или YubiKey?

Универсального ответа на этот вопрос не существует — для разных сервисов можно использовать разные варианты двухфакторной аутентификации в различных сочетаниях. Например, наиболее важные аккаунты (скажем, вашу основную почту, к которой привязаны остальные учетные записи) стоит защитить по максимуму — запереть на «железный» U2F-токен и запретить любые другие опции 2FA. Так можно быть уверенным, что никто и никогда не получит доступ к аккаунту без этого токена.

Хороший вариант — привязать к аккаунту два «ключа», как это делается с ключами от автомобиля: один всегда с собой, а другой лежит в надежном месте — на случай, если первый потеряется. При этом «ключи» могут быть разного типа: скажем, приложение-аутентификатор на смартфоне в качестве основного и U2F-токен или листочек с одноразовыми паролями, лежащий в сейфе, в качестве резервного средства.

Так или иначе, главный совет — по возможности избегать использования одноразовых паролей в SMS. Правда, получится это не всегда: например, финансовые сервисы в силу своей консервативности продолжают использовать SMS и крайне редко позволяют пользоваться чем-либо еще.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *