Компания Google внедрила в свои сервисы новую форму двухфакторной аутентификации, позволяющую использовать смартфон в качестве аппаратного токена. Технология позволяет смартфону и компьютеру связываться напрямую по Bluetooth, а не через интернет-сервер. Пока функция работает только для входа в сервисы Google через браузер Chrome, но компания уже подала код и документацию в консорциум FIDO Alliance для того, чтобы функцию смогли поддерживать другие сервисы и браузеры, сообщает Venture Beat.
Традиционным методом аутентификации в интернете считается ввод логина и пароля. В случае применения сложного пароля такой метод в целом можно считать безопасным, однако он не защищает от утечек паролей с самого сайта или компьютера пользователя. Для повышения безопасности достаточно давно используется механизм многофакторной аутентификации, который на данный момент поддерживается большинством крупных интернет-сервисов. При использовании такого метода пароль выступает в качестве лишь одного из факторов, подтверждающих, что войти пытается именно владелец аккаунта. В качестве других факторов может выступать одноразовый пароль из SMS или приложения для генерации кодов, а также физические токены, подключаемые к компьютеру по USB или Bluetooth. Использование физических токенов значительно повышает безопасность аккаунтов, но большинство пользователей не использует их из-за цены и необходимости носить с собой токен.
Компания Google решила реализовать механизм двухфакторной аутентификации с помощью физического токена, используя смартфоны, которые уже есть у абсолютного большинства ее пользователей. Google уже использует подтверждение входа с помощью смартфона, но эта функция сейчас работает через сервера компании — во время входа сервер Google присылает запрос на смартфон и получает ответ через интернет,. В новой функции это взаимодействие реализовано через Bluetooth и происходит локально.
После ввода логина и пароля браузер ищет расположенные рядом устройства и присылает на привязанный к аккаунту смартфон запрос. После этого на экране смартфона появляется окно с вопросом, действительно ли он пытается войти и кнопки подтверждения или отказа. На смартфонах Google Pixel 3 и Pixel 3 XL вместо кнопки на экране для подтверждения используется аппаратная кнопка уменьшения громкости, потому что она связана с чипом Titan M, через который проходит подтверждение входа. После подтверждения входа смартфон пересылает ответ браузеру через Bluetooth, а не сервер Google.
Для активации функции необходимо перейти на страницу настроек безопасности аккаунта Google, а затем перейти на вкладку настройки двухэтапной аутентификации и выбрать пункт «Электронный ключ». После этого сервис предложит добавить в качестве электронного ключа специальный USB- или Bluetooth-токен, или смартфон, привязанный к аккаунту.
Стоит отметить, что пока функция доступна лишь для аккаунта Google и совместима со смартфонами с версией Android 7.0 и выше, а также браузером Google Chrome (а не со всеми браузерами на базе Chromium), установленном на Windows 10, macOS или Chrome OS. При этом функция реализована с помощью открытого протокола FIDO CTAP API и протокола cloud-assisted Bluetooth Low Energy (caBLE), разработанного в Google. Компания уже передала код и документацию по обоим технологиям специалистам консорциума FIDO Alliance для того, чтобы в будущем функция стала общеотраслевым стандартом, поддерживаемым популярными браузерами и операционными системами.
Ранее для двухфакторной аутентификации предлагались другие необычные механизмы. К примеру, в 2017 году американские исследователи предложили использовать в качестве физических токенов обычные предметы, сканируемые с помощью камеры смартфона через специальное приложение. А в 2018 году компания TypingDNA создала для браузера Google Chrome расширение, использующее в качестве второго фактора скорость печати, интервалы между нажатиями и другие характеристики клавиатурного почерка во время ввода логина и пароля.
Григорий Копиев