Отправьте статью сегодня! Журнал выйдет 2 августа, печатный экземпляр отправим 6 августа
Опубликовать статью

Молодой учёный

QR-код как элемент защиты данных при помощи двухфакторной аутентификации

Информационные технологии
09.06.2022
504
Поделиться
Библиографическое описание
Лисицына, А. В. QR-код как элемент защиты данных при помощи двухфакторной аутентификации / А. В. Лисицына, А. С. Овсянникова. — Текст : непосредственный // Молодой ученый. — 2022. — № 23 (418). — С. 41-42. — URL: https://moluch.ru/archive/418/92852/.


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

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

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

QR на английском означает «QuickResponse», что переводится как «Быстрый ответ», данный перевод говорит сам за себя. Этот вид штрих-кода при наведении на него камеры смартфона, соответствующего минимальным требованиям для установки приложения, считывающего QR-коды, у пользователя открывается ссылка на сайт, приложение или любая другая информация, зашифрованная в наборе пикселей.

QR-код, в отличие от штрих-кода, читается в двух направлениях — по горизонтали и по вертикали. Это позволяет хранить в нем больше данных. При сканировании QR-кода пользователь получает доступ к этим данным мгновенно [1].

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

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

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

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

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

QR-код для обмена секретным ключом [2]

Рис. 1. QR-код для обмена секретным ключом [2]

Тот же самый секретный ключ представлен в текстовом виде на рис.2.

Текстовое представление секретного ключа из QR-кода [2]

Рис.2. Текстовое представление секретного ключа из QR-кода [2]

Для получения «какого-то» числа раньше применялся алгоритм HOTP, генерирующий число на основе счетчика событий (иначе говоря, самого факт генерации). При каждом последующем создании пароля счетчик монотонно увеличивал значение на единицу. Главный минусами этого метода заключался в том, что счетчик мог сбиваться, тогда требовалось настраивать его заново. Сейчас же чаще всего используется другой алгоритм — TOTP. В его основе — текущее время.

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

Таким образом, нам удалось понять и описать, на сколько актуальна и важна технология QR-кодов в таком распространенном и нужном в современном мире механизме, как двухфакторная аутентификация.

Литература:

  1. Визитки, реклама, платежи: как возникли и для чего используются QR-коды. — Текст: электронный // РБК. Тренды: [сайт]. — URL: https://trends.rbc.ru/trends/industry/6189517c9a79475deb5dbf9a (дата обращения: 08.06.2022).
  2. Справочник анонима. Как работают токены аутентификации и в чем их отличия от паролей. — Текст: электронный // Хакер: [сайт]. — URL: https://xakep.ru/2019/10/17/jwt-howto/ (дата обращения: 08.06.2022).
Можно быстро и просто опубликовать свою научную статью в журнале «Молодой Ученый». Сразу предоставляем препринт и справку о публикации.
Опубликовать статью
Ключевые слова
QR-код
двухфакторная аутентификация
одноразовый пароль
Молодой учёный №23 (418) июнь 2022 г.
Скачать часть журнала с этой статьей(стр. 41-42):
Часть 1 (стр. 1-59)
Расположение в файле:
стр. 1стр. 41-42стр. 59

Молодой учёный