Google Authenticator

редактировать
Приложение для двухэтапной проверки
Google Authenticator
Google Authenticator для Android icon.svg
Разработчик (и) Google
Первый выпуск20 сентября 2010 г.; 10 лет назад (20.09.2010)
Репозиторий github.com / google / google-authentication
Операционная система Android, iOS, BlackBerry OS
Платформа Мобильная
Лицензия Собственная бесплатное ПО (предыдущие версии находились под лицензией Apache 2.0)
Веб-сайтplay.google.com / store / apps / details? Id = com.google.android.apps.authenticator2

Google Authenticator - это программный аутентификатор от Google, который реализует службы двухэтапной проверки. с использованием алгоритма одноразового пароля на основе времени (TOTP; указано в RFC 6238 ) и алгоритма одноразового пароля на основе HMAC (HOTP; указано в RFC 4226 ) для аутентификации пользователей программных приложений.

При входе на сайт, поддерживающем Authenticator (включая службы Google), или при использовании сторонних приложений, поддерживающих Authenticator, таких как пароль менеджеры или сервер файлового хостинга ices, Authenticator генерирует одноразовый пароль , состоящий из шести-восьми цифр,, который пользователи должны вводить в дополнение к своим обычным данным для входа.

Предыдущие версии программного обеспечения были с открытым исходным кодом, но с 2013 года выпуски проприетарные.

Содержание
  • 1 Типичный вариант использования
  • 2 Техническое описание
    • 2.1 Подводные камни
  • 3 Другое программное обеспечение для аутентификации
  • 4 См. Также
  • 5 Ссылки
  • 6 Внешние ссылки
Типичный вариант использования

Чтобы использовать Authenticator, приложение сначала устанавливается на смартфон. Его необходимо настроить для каждого сайта, с которым он будет использоваться: сайт предоставляет пользователю общий секретный ключ по защищенному каналу, который будет храниться в приложении Authenticator. Этот секретный ключ будет использоваться для всех будущих входов на сайт.

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

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

Техническое описание

Во время установки поставщик услуг генерирует 80-битный секретный ключ для каждого пользователя (тогда как RFC 4226 §4 требует 128 бит и рекомендует 160 бит). Он передается в приложение Authenticator в виде строки base32 из 16, 26 или 32 символов или в виде QR-кода.

. Впоследствии, когда пользователь открывает приложение Authenticator, он вычисляет HMAC - SHA1 хеш-значение с использованием этого секретного ключа. Сообщение, которое редактируется HMAC, может быть:

  • числом 30-секундных периодов с эпохи Unix (TOTP ); или
  • счетчик, который увеличивается с каждым новым кодом (HOTP ).

Часть HMAC извлекается и отображается пользователю в виде шестизначного кода.

Ловушки

Google Authenticator использует параметры по умолчанию, которые слабее, чем предложенные в RFC 6238. Такие значения по умолчанию могут быть разумно использованы, как показано в механизме взлома TOTP Hashcat. По этой причине операторы, использующие Google Authenticator, должны позаботиться об используемых секретах.

Другое программное обеспечение для аутентификации

Приложение Google Authenticator для Android изначально было с открытым исходным кодом, но позже стал проприетарным. Google сделал более ранний исходный код своего приложения Authenticator доступным в своем репозитории GitHub ; на соответствующей странице разработки говорится:

«Этот проект с открытым исходным кодом позволяет вам загрузить код, который поддерживает версию 2.21 приложение. Последующие версии содержат специфические для Google рабочие процессы, которые не являются частью проекта ".

Согласно Google A uthenticator перестал быть открытым исходным кодом, был создан клон бесплатного программного обеспечения под названием FreeOTP, преимущественно заново переписанный, но включающий некоторый код из оригинала.

Google предоставляет версии Authenticator для Android, BlackBerry и iOS.

Доступно несколько других версий программного обеспечения для аутентификации. Те, кто использует TOTP и HMAC в дополнение к другой двухфакторной аутентификации, могут аутентифицироваться на тех же сайтах и ​​процессах, что и Google Authenticator. Некоторые из перечисленных программ доступны в версиях для нескольких платформ.

  • Windows Phone 7.5 / 8 / 8.1 / 10: Microsoft Authenticator, Virtual TokenFactor
  • Windows Mobile: Google Authenticator для Windows Mobile
  • Java CLI: Authenticator.jar
  • GUI Java: JAuth, FXAuth
  • J2ME: gauthj2me, lwuitgauthj2me, Mobile-OTP (только китайский язык), totp-me
  • Palm OS: gauthj2me
  • Python: onetimepass pyotp
  • PHP: GoogleAuthenticator.php
  • Ruby: rotp, twofu
  • Rails: active_model_otp
  • webOS: GAuth
  • Windows: gauth4win, MOS Authenticator, WinAuth
  • .NET: TwoStepsAuthenticator
  • Многоплатформенный: SAASPASS Authenticator
  • HTML5: html5- google-Authenticator
  • MeeGo / Harmattan (Nokia N9): GAuth
  • Sailfish OS: SGAuth, SailOTP
  • Apache: Google Authenticator Apache Module
  • PAM: Модуль подключаемой аутентификации Google, oauth-pam
  • Backend: LinOTP (Management Backend реализован на python)
  • Brow расширение ser: Authenticator
  • Мультиплатформенность: Authy
  • Мультиплатформенность: Duo Mobile
  • Android, Apple iOS и iPadOS: IBM Verify
  • Apple iOS и iPadOS (с z / OS): IBM TouchToken
  • OTP Auth
См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-22 14:01:08
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте