Научная статья на тему 'ПОВЕДЕНЧЕСКАЯ МОДЕЛЬ ВВОДА ТЕКСТА В ЗАДАЧЕ АУТЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЕЙ МОБИЛЬНЫХ УСТРОЙСТВ'

ПОВЕДЕНЧЕСКАЯ МОДЕЛЬ ВВОДА ТЕКСТА В ЗАДАЧЕ АУТЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЕЙ МОБИЛЬНЫХ УСТРОЙСТВ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
98
16
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДИНАМИКА НАЖАТИЙ КЛАВИШ / СТАТИЧЕСКАЯ И ФОНОВАЯ АУТЕНТИФИКАЦИЯ / ОБНАРУЖЕНИЕ И ИСПРАВЛЕНИЕ ВЫБРОСОВ / КВАНТИЛЬ / НЕЧЕТКИЙ МЕТОД ПОИСКА ИСКЛЮЧЕНИЙ НА ОСНОВЕ ПОТЕНЦИАЛЬНЫХ ФУНКЦИЙ / ПРОТОТИП СИСТЕМЫ АУТЕНТИФИКАЦИИ / KEYSTROKE DYNAMICS / STATIC AND CONTINUOUS AUTHENTICATION / EMISSION DETECTION AND CORRECTION / QUANTILE / FUZZY METHOD OF SEARCHING FOR EXCEPTIONS BASED ON POTENTIAL FUNCTIONS / AUTHENTICATION SYSTEM PROTOTYPE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Галков А.В., Машечкин И.В., Попов И.С.

Данная работа посвящена исследованию индивидуальных поведенческих характеристик ввода текста, основанных на динамике нажатий клавиш в процессе работы с виртуальной клавиатурой, и их применению в задаче аутентификации пользователей мобильных устройств. В качестве признаков для построения модели пользователя используются время удержания клавиши, время между нажатиями двух последовательных клавиш и сила нажатия. Построение признакового описания ввода свободно набираемого текста осуществляется с помощью адаптирующегося под пользователя алгоритма разбиения диграфов на группы по скорости нажатия в совокупности с разделением клавиш на группы по функциональности. Проводится поиск и исправление выбросов на основе квартилей с последующей стандартизацией значений. Для решения задачи классификации в условиях отсутствия примеров нажатий клавиш злоумышленником в обучающей выборке используется нечеткий метод поиска исключений на основе потенциальных функций (Fuzzy). С помощью разработанного программного стенда, состоящего из интегрирующейся в операционную систему Android OS системной клавиатуры, осуществляется сбор данных и экспериментальная оценка качества предложенного подхода к построению поведенческой модели пользователя, доказывающая его эффективность. На основе программного стенда разрабатывается прототип системы аутентификации пользователей, использующий биометрические характеристики работы с экранной клавиатурой для защиты всех приложений на мобильном устройстве, использующих стандартную системную клавиатуру.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Галков А.В., Машечкин И.В., Попов И.С.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

APPLYING BEHAVIORAL MODEL BASED ON KEYSTROKE DYNAMICS FOR THE MOBILE DEVICE USERS AUTHENTICATION

This work is devoted to the investigation of individual behavioral characteristics of text input, based on the keystroke dynamics while working with device on-screen keyboard, and also their application in the task of mobile devices user authentication. Key holding time, the time between pressing two consecutive keys and the pressure force are used as features for creation the user model. For construction of feature space for typed text the user-adaptive algorithm was proposed, which uses digraph groups depending of pressing speed in conjunction with dividing the keys into groups by functionality. Also an algorithm of searching and correction of emissions based on quartiles with the subsequent standardization of values was used. For situation when attacker samples are not presented in the training set, the fuzzy method of searching for exceptions based on potential functions (Fuzzy) was used for classification. Software system was developed integrated as the system keyboard into Android operating system, which allows to collect the dataset with examples of user keystrokes and to perform an experimental evaluation of the proposed approach to building the user’s behavioral model, which proves its effectiveness. Also the prototype of the user authentication system was developed based on the biometric characteristics of interaction with the on-screen keyboard to protect all applications on a mobile device which uses system keyboard.

Текст научной работы на тему «ПОВЕДЕНЧЕСКАЯ МОДЕЛЬ ВВОДА ТЕКСТА В ЗАДАЧЕ АУТЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЕЙ МОБИЛЬНЫХ УСТРОЙСТВ»

УДК 517.967.23

А. В. Галков1 , И. В. Машечкин2 , И. С. Попов3

ПОВЕДЕНЧЕСКАЯ МОДЕЛЬ ВВОДА ТЕКСТА В ЗАДАЧЕ АУТЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЕЙ МОБИЛЬНЫХ УСТРОЙСТВ

Данная работа посвящена исследованию индивидуальных поведенческих характеристик ввода текста, основанных на динамике нажатий клавиш в процессе работы с виртуальной клавиатурой, и их применению в задаче аутентификации пользователей мобильных устройств. В качестве признаков для построения модели пользователя используются время удержания клавиши, время между нажатиями двух последовательных клавиш и сила нажатия. Построение признакового описания ввода свободно набираемого текста осуществляется с помощью адаптирующегося под пользователя алгоритма разбиения диграфов на группы по скорости нажатия в совокупности с разделением клавиш на группы по функциональности. Проводится поиск и исправление выбросов на основе квартилей с последующей стандартизацией значений. Для решения задачи классификации в условиях отсутствия примеров нажатий клавиш злоумышленником в обучающей выборке используется нечеткий метод поиска исключений на основе потенциальных функций (Fuzzy). С помощью разработанного программного стенда, состоящего из интегрирующейся в операционную систему Android OS системной клавиатуры, осуществляется сбор данных и экспериментальная оценка качества предложенного подхода к построению поведенческой модели пользователя, доказывающая его эффективность. На основе программного стенда разрабатывается прототип системы аутентификации пользователей, использующий биометрические характеристики работы с экранной клавиатурой для защиты всех приложений на мобильном устройстве, использующих стандартную системную клавиатуру.

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

1. Введение. Сегодня через мобильные устройства пользователям доступно все больше весьма ценных сервисов, требующих внимательного отношения к безопасности, в числе которых мобильный банкинг, мессенджеры и приложения, хранящие личные данные. Соответственно, пройдя тем или иным способом процедуру аутентификации (взломав пароль или подделав отпечаток пальца), злоумышленник может получить неавторизованный доступ к конфиденциальным данным на мобильном устройстве: финансовой информации, учетным данным для доступа к социальным сетям, данным контактов в сетях мобильной связи. Этого может оказаться достаточно для полноценного осуществления кражи личных данных. Эта угроза становится особенно актуальной в настоящее время, когда мы наблюдаем значительный рост числа кибератак, а следовательно, и убытков, которые понесли именно пользователи мобильных устройств. Так, согласно отчету ФинЦЕРТ Банка России, объем несанкционированных операций с платежными картами в 2018 г. составил 1384,7 млн рублей, это на 44% больше, чем в 2017-м (961,3 млн рублей). В эту статистику входят операции, совершенные с помощью систем мобильных платежей, доля которых достигает 60% от общего числа безналичных операций [1]. Таким образом, существует неоспоримая потребность в надежной защите персональных данных пользователей и интеллектуальной собственности компаний, доступ к которым осуществляется через мобильные устройства.

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

1 Факультет ВМК МГУ, студ., e-mail: galkovl996alexQmail.ru

2 Факультет ВМК МГУ, проф., д.ф.-м.н., e-mail: mashQcs.msu.su

3 Факультет ВМК МГУ, м.н.с., e-mail: ivanQjaffar.cs.msu.su

утеряны, случайно показаны или нелегально переданы авторизованным пользователем неавторизованному. Более того, согласно отчету компании Positive Technologies [2] 53% мобильных приложений, осуществляющих проверку на стороне клиента, используют небезопасное хранение аутентификационных данных, 29% серверных частей мобильных приложений имеют недостатки реализации двухфакторной аутентификации, 18% всех приложений не ограничивают число попыток ввода аутентификационных данных.

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

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

• Не оказывает существенного влияния на работу пользователя с мобильным устройством.

• Невоспроизводимость. С помощью программного обеспечения можно измерить время нажатия клавиш с точностью до наносекунд. Такая точность исключает возможность искусственного воспроизведения динамики ввода одного пользователя другим.

• Может выполнять роль дополнительного уровня защиты при использовании паролей [3,4]. Это позволит объединить простоту схемы использования пароля с повышенной надежностью биометрии. Свойство невоспроизводимости динамики ввода сделает подбор или хищение пароля несущественным, так как он является только частью аутентификационного шаблона.

• Может обеспечивать фоновую аутентификацию на протяжении всего взаимодействия пользователя с устройством [5].

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

В данной работе рассматривается прикладная задача построения поведенческой модели пользователя на основе динамики нажатия клавиш в процессе работы с системной клавиатурой и применение полученной модели для статической и фоновой аутентификации пользователей мобильных устройств под управлением Android OS. Статья состоит из следующих разделов. Раздел 2 описывает существующие подходы к построению поведенческой модели пользователя на основе динамики ввода фиксированного и свободно набираемого текста на физической и виртуальной

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

2. Обзор существующих решений. Исследование данных нажатия клавиш не является новой темой [6-10]. Работы в этой области уже велись либо для того, чтобы выявить типичное поведение пользователя при работе с системой, либо для сравнения различных шаблонов поведения. С другой стороны, измерение данных нажатия клавиш на мобильных устройствах является относительно новой темой исследования [11,12].

Дадим определения используемым терминам и введем необходимые обозначения.

Фиксированный текст — заданная последовательность символов (клавиш), предлагаемая пользователю для ввода.

Свободно набираемый текст — случайная последовательность символов, вводимая пользователем в течение некоторого периода времени.

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

Динамическая (фоновая) аутентификация — проверка подлинности по свободно набираемому тексту.

Исследование динамики нажатия клавиш опирается на следующие характеристики: время нажатия клавиши А (РтеззТгшеА) в наносекундах, время отпускания клавиши А (Ке1еазеТгшеА) в наносекундах, сила нажатия на клавишу А (РтеззитеХ)-

Выполняя простые математические операции над временными метками, получим следующие возможные признаки, которые являются основными характеристиками, используемыми при анализе динамики нажатия клавиш как на физических [13], так и на виртуальных клавиатурах [14]:

• Ио1(1ТгшеА = На = Яе1еазеТгшеА — РтеззТгшеА — время между нажатием и отпусканием

А

• Ве1"юеепТгшеАВ = ЬАв = РтеззТгшев — РтеззТгшеА — время между нажатием клавиши А и клавиши В;

• Ве1,шеепТ1шеАв = ЬАв = Яе1еазеТгшев — РтеззТгшеА — время между нажатием клавиши АВ

• Ве1-шеепТгшеАВ = ЬвВ = РтеззТгшев — Ке1еазеТгшеА — время между отпусканием кла-

АВ

• ВеЬтеепТгше1^ = ЬвВ = Яе1еазеТгшев — Ке1еазеТгшеА — время между отпусканием

АВ

Pressureд

PressTimeд ReleaseTime^ PressTimeß ReleaseTtrneg epern, tic

Ho Id Л/лед

BetweenTime^BPP

Between Timeдв р^

iB^hveen Утедв ^

Behveen Ътедв RR

Рис. 1. Возможные признаки

Отличительной особенностью построения поведенческой модели пользователя но фиксированному тексту является то, что текст (контрольное слово), вводимый пользователем, известен заранее, что позволяет использовать особенности ввода конкретной фразы, а не символов в отдельности: измеряются признаки, связанные с нажатием первой клавиши, второй и т.д. В исследованных работах основным подходом является использование признаков ИоМТгше и BetweenTimePP. Отдельным направлением исследований является подбор контрольного слова с оптимальным составом символов, позволяющим наилучшим образом дифференцировать пользователей.

Для свободно набираемого текста, используемого в случае фоновой аутентификации, нет информации ни о составе встречаемых символов, ни об их частоте. Следовательно, необходимо анализировать ввод каждого конкретного символа. Основным подходом здесь является использование особенностей нажатий отдельных клавиш и пар (диграфов). Однако при таком подходе возникает проблема размерности вектора признаков: если рассматривать только буквы латинского алфавита (26) и цифры (10), то размерность вектора признаков у^ке ^ 1400.

В ряде рассмотренных работ в качестве альтернативы для отбора наиболее часто используемых дшрафов применяется разбиение всех клавиш или дшрафов на группы и вычисление указанных выше признаков (рис. 1) для групп в целом, что позволяет лучше сохранить индивидуальные характеристики печати пользователя. Одно из простейших разбиений клавиш физической клавиатуры по расположению заключается в выделении трех непересекающихся областей: клавиш, набранных левой рукой (Ь), клавиш, набранных правой рукой (И), и пробела (Б). Далее, все диграфы подразделяются на одну из следующих восьми групп: 1,-1,. 1,-1». Ь-Б, Ы-Ь, Г» - Г». И-Б, Б-Ь и Б-Ы; и вычисляется среднее время Ьрр для каждой группы, которое используется как одно значение признака.

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

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

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

Одной из основных проблем при построении модели пользователя, способной обнаруживать вторжение, является отсутствие примеров нажатий клавиш злоумышленником в обучающей выборке, что приводит к необходимости использования одноклассовых моделей [15]. Наиболее часто используемыми алгоритмами классификации в работах, посвященных исследованию динамики нажатий клавиш, являются метрические (одноклассовый KNN) и вероятностные (одноклассовый SVM, смешанные гауссовские модели, байесовские сети) методы. Наилучшие результаты достигаются при использовании одноклассовых классификаторов KNN и SVM.

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

3.1. Анализ признаков для фиксированного текста. Рассмотрим следующее признаковое описание объекта х, полученного в результате сеанса ввода контрольного слова длины и:

f (x) = {HoldTimel,HoldTime2,..., HoldTimen, BetweeuTimeRP, BetweeuTimeRP,..., BetweeuTimeRpl, (1)

Pressurei, Pressure2,..., Pressuren}.

Размерность такого вектора признаков равна 3n — 1.

Среди четырех возможных способов измерения времени между нажатиями двух последовательных клавиш был выбран BetweeuTimeRP (раздел 2). Другие варианты включают в свои значения время удержания клавиши, что лишено смысла (так как HoldTime вынесено в отдельный признак) и может испортить значения признаков за счет нежелательного влияния, что отразится на общем качестве классификации. Отметим: в процессе обзора было установлено, что в других работах по данной тематике используется вариант BetweeuTimePP без какой-либо аргументации такого выбора. В разделе 4 будут представлены результаты проведенных экспериментов по сравнению BetweeuTimeRP и BetweeuTimePP, подтверждающие указанные выше предположения.

В результате построения графиков значений признаков (1) и их анализа был сделан ряд важных выводов:

• в исходных данных наблюдается большое количество выбросов, значения которых сильно отклоняются от среднего;

• наибольшие отклонения в данных наблюдаются при вводе первого символа, а также при вводе цифр;

Pressure

зано с некачественным сенсором на мобильном устройстве или общей неинформативностью признака;

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

Далее, проведем предобработку полученных значений признаков. Обнаружение и исправление выбросов осуществляется по следующему алгоритму:

• для каждого признака вычисляется первый и третий квартиль (хо.25 и Х0.75) и межквар-тильный диапазон d = х075 — х0,25;

• если значение признака х < х0,25 + 1.5d или х > х075 + 1.5d, то оно определяется как выброс;

• выброс заменяется случайной величиной с равномерным распределением U(xo.25 , xo.75).

При альтернативном подходе выбросами объявляется фиксированное количество крайних значений (например, все значения ж, удовлетворяющие одному из условий: x > xo.95 или x < xo.05)• В таком случае к выбросам могут быть отнесены значения, таковыми не являющиеся, что ухудшит качество данных в обучающей выборке.

Ниже представлены графики значений признака BetweenTimeRP до и после исправления выбросов для нескольких вводов контрольного слова ' GoogleV (рис. 2). Каждая кривая соответствует одному вводу контрольной фразы, на оси X отмечены все диграфы контрольного слова, на оси Y — значение BetweenTimeRP для соответствующего диграфа.

про Between times 1pq Between times

IU -1-1-1-1-1-1-1-1- U.UU J-1-1-1-1-1-1-1—

1: Shift + G 2: Go 3: oo 4: og 5: gl 6: le 7: el 1: Shift + G 2: Go 3: oo 4: og 5: gl 6: le 7: el

Character Character

Рис. 2. Графики значений признака BetweenTimeRP до и после исправления выбросов

Стандартизация значений признаков проводится по формуле

х — Ех

Хп = (2)

где Е х и Б х — оценки математического ожидания и дисперсии, полученные из обучающей выборки.

Полученные векторы признаков подаются на вход классификатору.

3.2. Анализ признаков для свободно набираемого текста. Перейдем к построению признакового описания свободно набираемого текста. В него войдет признак ИоЫТгте для всех букв латинского алфавита и цифр и Бе1гшеепТгтерр для фиксированного набора наиболее используемых диграфов.

Введем следующее разбиение клавиш экранной клавиатуры на группы по расположению (рис. 3). Для каждой из 5 групп О1О5 вычисляются следующие значения, которые также добавляются к пространству признаков:

Пг

• ИоМТ1теог = ^^ ИоМТ1теАг к — среднее время удержания внутри группы;

к=1

пг пг

• БеЬ'теепТгтес, = ^^ ^^ БеЬ,теепТ%теА1 кАг г _ среднее время между нажатиями клавиш

к=11=1

внутри группы;

пг пj

• БеЬ,теепТ%тес1 = ^^ ^^ Ъах ка, г _ среднее время между нажатиями клавиш из разных

к=1 1=1

групп.

1 2 3 4 Ь 6 7 jj f 1 9 0

q : W е : г t у u ; 5 о p

— H-Hi ++Н--Н--Н--Н- -44- ±а± Y//////V//////////////////////////z.

■— а s d f g ; \ ? J k i p

—111111— # 1! г х С Vit n m <x]

Ш 123 RU lb-) «J

Рис. 3. Объединение клавиш в группы

Для выделения характерных для каждого пользователя особенностей ввода текста, встроенных в относительные скорости набора различных диграфов, упорядочим все диграфы но убыванию BetweenTimeRP и разобьем на группы. Для данной задачи оптимальным оказалось разбиение на 6 групп. Аналогично разбиению на группы по расположению вычисляются HoldTimeci: BetweenTimeGi и BetweenTimeCiC • Преимущества и эффективность данного подхода были подробно описаны в разделе 2.

Обнаружение и исправление выбросов и стандартизация проводятся таким же образом, как описано в разделе 3.1.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3.3. Методы классификации. В данной работе для решения задачи классификации полученных признаковых описаний вводов пользователя в дополнение к одноклассовому методу KNN и одноклассовому SVM используется нечеткий метод поиска исключений на основе потенциальных функций (Fuzzy), который не применялся в исследованных статьях, но показывает на ряде задач результаты выше, чем у представленных классификаторов [16].

Основная идея нечеткого метода поиска исключений на основе потенциальных функций родственна одноклассовому SVM. Основное отличие заключается в том, что вместо построения гиперплоскости для описания множества обучающих векторов ищется один общий нечеткий кластер, который объединяет большую часть обучающих векторов, минимизируя штрафы от непо-павших внутрь кластера векторов. Объекты {x{}l<i<N из исходного пространства X с помощью потенциальной функции K : X х X ^ R отображаются в пространство характеристик более высокой размерности ф : X ^ H. Далее в этом пространстве строится кластер, и для каждого вектора из образа множества обучающих векторов вычисляется дистанция до центра кластера. Такие дистанции будут задавать степень принадлежности вектора к кластеру: чем ближе вектор к центру, тем выше его принадлежность. При достижении определенного порога дистанции будем считать, что вектор не принадлежит кластеру (имеет нулевую степень принадлежности).

Для определения степени принадлежности Ui образов ф(хг) общему нечеткому кластеру решается следующая задача оптимизации:

min J (U,a), (3)

a€H,U eRN N N

J(U, a) = (Ui)т\\ф(хг) - а\\н2 + n E (1 - иг)т, (4)

i=1 i=1

где a € H — центр построенного кластера, m > 1 ж n > 0 — параметры кластеризации, подбирающиеся, строго говоря, экспериментально.

Степень принадлежности произвольного вектора х при этом вычисляется по формуле:

1/(т-1) ^ -1

u(x) =

I N

1 +

N

N

=1

i=1

uTK (Xi ,Xj) Y^u^K (x,Xi)

\

V

N

£

4i=1

-2-

i=1

ui

N

i=1

u? +

K(x, x)

n

/

(5)

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

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

• StaticDataset: набор данных содержит информацию о вводе трех контрольных слов: ' Google 1'. 'МойПароль1, '4-7915'. Для каждого из 37 пользователей, участвовавших в экспериментах, собраны данные о 100 вводах каждого контрольного слова: 50 одной рукой и 50 двумя.

DynamicDataset:

10000

— данные б пользователей, взаимодействовавших с клавиатурой в течение недели символов на одного пользователя;

— 15 пользователей, осуществлявших ввод текста 1000 символов) одной и двумя руками.

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

Таблица 1

Сравнение BetweenTimeRP и BetweenTimePP

BetweenTimepp BetweenTimeRP

Алгоритм классификации FAR FRR FAR FRR

KNeighbors 0.01 0.271 0.01 0.243

OneClassSVM 0.01 0.159 0.01 0.144

Fuzzy 0.01 0.147 0.01 0.136

Далее, проводилось экспериментальное сравнение трех подходов к обнаружению и исправлению выбросов:

• сохранение выбросов;

• удаление выбросов по правилу х > Х0.95 или х < Хо.о5;

• обнаружение выбросов по правилу х < хо.25 + 1.5^ или х > хо.75 + 1-Ъй и замена случайной величиной с равномерным распределением Я(хо.25, хо.75)•

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

Таблица 2

Сравнение различных подходов к обработке выбросов

Сохранение выбросов Удаление выбросов Исправление выбросов

Алгоритм классификации FAR FRR FAR FRR FAR FRR

KNeighbors 0.01 0.243 0.01 0.239 0.01 0.237

OneClassSVM 0.01 0.144 0.01 0.112 0.01 0.096

Fuzzy 0.01 0.136 0.01 0.106 0.01 0.081

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

Таблица 3

Сравнение различных вариантов контрольных слов

Без силы нажатия Googlel МойПароль 47915

FAR FRR FAR FRR FAR FRR

OneClassSVM 0.01 0.102 0.01 0.098 0.01 0.117

Fuzzy 0.01 0.091 0.01 0.083 0.01 0.111

С силой нажатия Googlel МойГ пароль 47915

FAR FRR FAR FRR FAR FRR

OneClassSVM 0.01 0.1 0.01 0.093 0.01 0.104

Fuzzy 0.01 0.085 0.01 0.078 0.01 0.092

Можно сделать ряд важных выводов:

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

• использование силы нажатия дает небольшое улучшение качества распознавания; добиться существенного улучшения не удается из-за сильной зашумленности данных (как было показано в разделе 3.1);

• метод Fuzzy показал лучшие результаты относительно используемых метрик качества, чем ранее применявшиеся методы.

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

Таблица 4 Оценка качества фоновой аутентификации

Фиксированный набор диграфов, разбиение на группы не используется Свободный ввод Заданный текст

Две руки Одна рука

FAR FRR FAR FRR FAR FRR

OneClassSVM 0.01 0.363 0.01 0.354 0.01 0.354

Fuzzy 0.01 0.339 0.01 0.331 0.01 0.327

Адаптивный выбор диграфов, адаптивное разбиение на группы Свободный ввод Заданный текст

Две руки Одна рука

FAR FRR FAR FRR FAR FRR

OneClassSVM 0.01 0.179 0.01 0.164 0.01 0.16

Fuzzy 0.01 0.163 0.01 0.148 0.01 0.144

5. Разработка прототипа системы аутентификации пользователей. На основе экспериментального программного стенда для сбора данных и результатов проведенных экспериментов был разработан прототип системы аутентификации пользователя. В его состав входят три компоненты: системная клавиатура, интегрируемая в Android OS, база данных и приложение для регистрации пользователей и доступа к их данным (личный кабинет).

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

Вход в систему

Логин dynamic_user

Пароль MyPasswordl

ВОИТИ ЗАРЕГИСТРИРОВАТЬСЯ

S3- T76»19:27

Dynamic Keyboard русский (Россия) v

Регистрация нового приложения

Введите имя приложения: 1пз1адгат

Повторите пароль « приложению 20 раз (7/20) МуРЭШ«ОГЙ4

ОК

СБРОСИТЬ

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Зарегистрированные приложения

Имя приложения Пароль

ЯасеЬоок МуРаэ5\шп12 УДАЛИТЬ

АНЕхргезз МуРаээчуо^З УДАЛИТЬ

Initagnoin

dynarnickeyboard@mail.iL

ИЛИ

fj Войти через Facebook

Зарегист|

шшшшнншншшшшниганишшн шншшншшшшн шншшшшншшш шнншшшншшш шншшшшшшшн шнишшншнш шннншншнш

Биометрическая аутентификация пройдена. Доступ разрешен.

Рис. 4. Процедура добавления биометрической аутентификации при вводе пароля для приложения на мобильном устройстве

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

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

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

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

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

• был проведен анализ признаков, используемых в существующих решениях, и предложен признак BetweenTimeRP, альтернативный применяемому в рассмотренных работах BetweenTimePP;

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

• предложен алгоритм обнаружения и исправления выбросов: выбросами объявляются все значения признака, которые больше третьего квартиля или меньше первого квартиля на 1,5 межквартильного диапазона. Найденные выбросы заменяются значением случайной величины с равномерным распределением;

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

Для сбора данных и экспериментальной оценки качества полученной модели пользователя был разработан программный стенд. По результатам экспериментов установлено, что предложенный подход к построению признакового описания ввода пользователем фиксированного и свободно набираемого текста лучше характеризует индивидуальные особенности взаимодействия пользователей с виртуальной клавиатурой: точность распознавания в среднем увеличилась на 23%. Предложенный алгоритм поиска и исправления выбросов позволил снизить количество ошибок первого рода на 40%. Также экспериментально доказана эффективность ранее не применявшегося метода Fuzzy: для статической аутентификации FRR равен 0.085, для фоновой — 0.163 при установленном уровне FAR = 0.01 (для SVM FRR соответственно равен 0.1 и 0.179).

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

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

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

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

СПИСОК ЛИТЕРАТУРЫ

1. Медиахолдинг "Эксперт". Опасный смартфон. URL: https://expert.ru/expert/2019/16/opasnyij-smartfon /

2. Positive Technologies. Уязвимости и угрозы мобильных приложений. URL: https: / / www.ptsecurity.com / ru-ru / research / analytics / mobile-application-security-threats-and-vulnerabilities-2019/

3. Guven O., Akyokus S., Uysal M., Guven A. Enhanced password authentication through keystroke typing characteristics// Proc. of the IASTED Intern. Conf. on Artificial Intelligence and Appl. (AIA '07). Honolulu: ACTA Press, 2007. P. 317-322.

4. Bartlow N., Cukic B. Keystroke dynamics-based credential hardening systems// Handbook of Remote Biometrics. Advances in Pattern Recognition. Eds by Tistarelli M., Li S.Z., Chellappa R. London: Springer, 2009. P. 329-347.

5. F 1 i о г E., К о w a 1 s k i K. Continuous biometric user authentication in online examinations// Proc. of the 7th Intern. Conf. on Information Technology: New Generations (ITNG '10). Las Vegas: IEEE, 2010. P. 488-492.

6. Araujo L.C.F., Sucupira L.H.R., Liz cl Г Г cl g cl M.G. et al. User authentication through typing biometrics features// IEEE Trans. Signal Process. 2005. 53. P. 851-855.

7. К a n g P., С h о S. A hybrid novelty score and its use in keystroke dynamics-based user authentication// Pattern Recogn. 2009. 42. P. 3115-3127.

8. Al Sol ami E., Boyd C., Clark A., Ahmed I. User-representative feature selection for keystroke dynamics// 2011 5th Intern. Conf. on Network and System Security (NSS). Milan: IEEE, 2011. P. 229-233.

9. Alsultan A., Warwick K. Keystroke dynamics authentication: a survey of free-text methods// Int. J. Comput. Sci. Issues. 2013. 10. N 4. P. 1-10.

10. Kang P., Cho S. Keystroke dynamics-based user authentication using long and free text strings from various input devices// Inf. Sci. 2015. 308. P. 72-93.

11. A 1 z u b a i d i А., К a 1 i t a J. Authentication of smartphone users using behavioral biometrics// IEEE Communications Surveys and Tutorials. 2016. 18. N 3. P. 1998-2026.

12. Lamiche I., Bin G., Jing Y., Yu Z., Had id A. A continuous smartphone authentication method based on gait patterns and keystroke dynamics// J. Ambient Intelligence and Humanized Computing. 2019. 10. N 11. P. 4417-4430.

13. S h i m s h о n Т., Moskovitch R., R о k а с h L., E 1 о v i с i Y. Clustering di-graphs for continuously-verifying users according to their typing patterns// Proc. of the IEEE 26th Convention of Electrical and Electronics Engineers in Israel (IEEEI '10). Eilat: IEEE, 2010. P. 445-449.

14. Lopes J. Keystroke recognition using Android devices. Master's Thesis. Instituto Superior Tecnico, 2015. P. 1-7.

15. Tax D.M.J. One-class classification. PhD Thesis. Delft University of Technology, 2001. P. 13-19.

16. Петровский М.И. Применение методов интеллектуального анализа данных в задачах выявления компьютерных вторжений// Труды Второй Всероссийской научной конференции. Методы и средства обработки информации. М.: Изд. отдел ф-та ВМиК МГУ, 2005. С. 158-168.

Поступила в редакцию 21.04.20 После доработки 15.05.20 Принята к публикации 15.05.20

i Надоели баннеры? Вы всегда можете отключить рекламу.