Назад в библиотеку

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

Автор: А. Ж. Абденов, С. А. Голяков

Учреждение Российской академии наук Институт систем обработки изображений РАН
Источник: СБОРНИК НАУЧНЫХ ТРУДОВ НГТУ. – 2013. – № 2(72). – c. 78–83.

Аннотация

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

Введение

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

Допустим, в настройках мобильного устройства мы указали метод разблокировки – графический пароль. Это значит, что мы придумываем пароль, например «A?BC? » – секретный пароль (постоянный). Введем понятие динамического пароля – пароль, который генерируется на основе секретного(постоянного) пароля.

Динамический графический пароль – аутентификация пользователя на устройстве без отображения постоянного пароля в каком-либо виде так, чтобы, например, посторонний человек не смог понять, что за пароль был введен, даже запомнив все действия, которые легальный пользователь выполнил при вводе пароля, и даже запомнив динамический пароль. Данная область защиты информации содержит очень мало публикаций, один из методов динамического пароля хорошо описан в статье «Динамический пароль» [1]. В данной работе речь пойдет именно о динамическом графическом пароле. Особенность разработанного метода заключается в том, что он может применяться не только для устройств с сенсорным экраном, но и для обычных устройств, например, как замена стандартного пароля на доступ к операционной системе или какой-либо программе.

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

Суть разработанного метода состоит в следующем. При нажатии кнопки включения экрана устройства псевдослучайным образом генерируется сетка, состоящая в простейшем случае из букв простого алфавита и других символов, рассмотрим пример пароля – «A?BC? ». Таким образом, в усложненном варианте это может быть сетка с символами, картинками, смайликами, цветные элементы и т. п. Эта сетка выводится на экран устройства. Пример сетки представлен на рис. 1. Среди символов в этой сетке обязательно присутствуют символы нашего постоянного пароля. Рассмотрим работу алгоритма на примере программы, реализующей данный метод [2].

Рисунок 1 – Экран приветствия устройства

Рисунок 1 – Экран приветствия устройства

Для разблокировки устройства в поле «Динамический пароль» необходимо ввести значение динамического пароля, полученное для данной псевдослучайной сетки. В идеале никаких действий, кроме определения значения динамического пароля и его ввода, выполнять не нужно.

1. МЕТОД ОПРЕДЕЛЕНИЯ ДИНАМИЧЕСКОГО ПАРОЛЯ ПУТЕМ МЫСЛЕННЫХ ВЫЧИСЛЕНИЙ

  1. Необходимо найти буквы нашего пароля на сетке.
  2. Мысленно соединить эти буквы линией (рис. 2), двигаясь вверх, вниз,влево или вправо.
  3. Посчитать количество пройденных клеток, последовательно пройдя по всем буквам секретного пароля – в приведенном примере динамический пароль должен получится равным цифре 36. Другими словами: необходимо вычислить расстояние в клетках между буквами постоянного пароля, выведенными среди других букв в сетке. Полученное расстояние будет являться значением динамического пароля.
  4. Ввести значение динамического пароля в поле «Динамический пароль».
  5. Нажать кнопку «ОК», подтвердив тем самым ввод динамического пароля.
Рисунок 2 – Случай мысленного подсчета цифр и ввод динамического пароля

Рисунок 2 – Случай мысленного подсчета цифр и ввод динамического пароля

2. МЕТОД ОПРЕДЕЛЕНИЯ ДИНАМИЧЕСКОГО ПАРОЛЯ ПУТЕМ ЕГО ОТОБРАЖЕНИЯ НА ЭКРАНЕ

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

  1. Нам необходимо найти буквы нашего пароля на сетке.
  2. Провести по ним пальцем, устройство само выделяет помеченные пальцем клетки и само вводит цифру 36 в поле «Динамический пароль». На рис. 3 приведены два из возможных правильных способов выделения клеток.
  3. Нажать кнопку «ОК», подтвердив тем самым ввод динамического пароля.
  4. В случае верно введенного динамического пароля устройство будет разблокировано.
Рисунок 3 – Случаи ввода с отображением пароля

Рисунок 3 – Случаи ввода с отображением пароля

3. ПРОВЕРКА ВВЕДЕННОЙ ЦИФРЫ (ДЕЙСТВИЯ НА СТОРОНЕ УСТРОЙСТВА)

  1. Программа (операционная система мобильного устройства) генерирует сетку и выводит на экран.
  2. Дожидается подтверждения пользователем введенного им динамического пароля.
  3. Считывает из памяти пароль, разбивает на буквы.
  4. Находит буквы на сетке.
  5. Сама высчитывает расстояния в клетках между буквами алфавита.
  6. Сверяет вычисленное число с введенным пользователем.
  7. Разблокирует устройство в случае правильного ввода, блокирует устройство и/или возвращается к п. 1.

4. ПРИМЕР ОШИБОЧНОГО ВВОДА

На рис. 4 представлены два примера ошибочного ввода. В попытке подбора или при ошибочном вводе, человек в данном случае вводит цифру 40 или 39, а нужно ввести 36.

Рисунок 4 – Пример ошибочного ввода

Рисунок 4 – Пример ошибочного ввода

5. ВОЗМОЖНЫЕ МОДИФИКАЦИИ

  1. Длинный пароль, соответственно некоторые буквы могут засчитываться дважды – так, как в приведенном примере.
  2. Изменение размера сетки, например 20 х 20.
  3. Трехкратное повторение ввода, для уменьшения вероятности подбора.
  4. Трехкратное повторение ввода, но каждый раз разных паролей(три пароля или три части одного пароля).
  5. Использование различных символов, картинок, цветов, разноцветных картинок вместо обычных символов алфавита.
  6. Использование данного метода в качестве двухфакторной аутентификации (PIN + динамический графический пароль).

В качестве дополнения к алгоритму была разработана программа, реализующая данный механизм. Программа доступна по адресу в Интернете [2].

ЗАКЛЮЧЕНИЕ

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

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

Список использованной литературы

1. Радион Нигматулин. Динамический пароль [Электронный ресурс]. 2012. – Режим доступа: http://habrahabr.ru/post/136580/ / (дата обращения:26.03.2013).
2. Динамический графический пароль. Пример реализации [сайт]. [Электронный ресурс]. – Режим доступа:https://sites.google.com/site/coolprogramms/ arhiv-besplatnyh-programm (дата обращения: 26.03.2013).