Противодействие анализу клавиатурного почерка

Д.А. Иванов, А.П. Никитин

ПРОТИВОДЕЙСТВИЕ АНАЛИЗУ КЛАВИАТУРНОГО ПОЧЕРКА

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

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

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

Согласно действующему законодательству Российской Федерации и ряда других стран, человек имеет право на анонимность своих действий в сети интернета1.

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

Также использование идентификации по клавиатурному почерку может проводиться незаметно для пользователя, в том числе

© Иванов Д.А., Никитин А.П., 2014

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

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

Клавиша , нажата

И!

шш

Клавиша нажата

¡12

Рис. 1. Временная диаграмма клавиатурного почерка

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

Клавища'нажата

т

Клавиша нажата

т

т

Рис. 2. Временная диаграмма анонимизированного почерка

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

• непосредственно в клавиатуру (программно-аппаратный или аппаратный модуль);

• непосредственно в обработчик событий клавиатуры операционной системы (программный модуль);

• между клавиатурой и компьютером (аппаратный модуль в разрыв кабеля).

Рассмотрим каждый из вариантов более подробно.

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

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

Установка модуля изменения клавиатурного почерка в разрыв кабеля позволяет использовать его на любой ОС. Недостатком же такого решения является зависимость от порта подключения (наиболее часто используются PS/2 или USB).

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

Возможны следующие алгоритмы работы такого модуля.

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

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

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

Рассмотрим построение модуля, реализующего обе схемы и работающего с клавиатурами, которые подключаются через порт PS/2. В состав модуля входят аппаратные компоненты:

• микроконтроллер Atmel AT89C20514;

• память EEPROM типа AT24C5125;

• кварцевый генератор 12 MHz;

• два конденсатора 33p;

• конденсатор 10 uF;

• резистор 10 k.

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

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

Таблица 1

Средние значения времени удержания клавиш и интервалов между нажатиями двух клавиш

Тип клавиатуры Время удержания клавиши, мс Время между нажатием клавиш, мс

С коротким ходом клавиш (клавиатура ноутбука) 100 150

С длинным ходом клавиш (стандартная клавиатура) 150 200

Для экспериментов по замерам времени применялись следующие клавиатуры:

• с интерфейсом PS/2:

- A4TechKLS-7MU и GeniusSlimStar 320 - с коротким ходом клавиш;

- Mitsumikfk-ea4saиDefenderkb 21e - c длинным ходом клавиш;

• с интерфейсом USB6:

- LogitechK230 и DefenderGalileo 4920 - с коротким ходом клавиш;

- LogitechG510s и GeniusGK-1000 - с длинным ходом клавиш.

Принципиальная схема МЗКП приведена на рис. 3

Vcc CLK DATA GND

RST Vcc

P3.0/RXD P1.7

P3.1/TXD P1.6

X2 P1.5

X1 P1.4

P3.2/INT0 P1.3

P3.3/INT1 P1.2

P3.4/T0 P1.1

P3.5/T1 P1.0

GND P3.7/RD

A0 VCC

A1 WP

A2 SCL

GND SDA

Vcc CLK DATA GND

Keyboard PS/2

PC PS/2

Рис. 3. Принципиальная схема модуля защиты

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

AT24C512

ты пользователя: набор текста в первом режиме, отправка его на компьютер и внесение в него правки во втором режиме.

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

Заключение

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

Предложены две принципиальные схемы реализации модуля, размещаемого между клавиатурой и компьютером. Также приведена принципиальная схема построения аппаратного модуля для порта РБ/2.

Примечания

См.: Конституция РФ. Гл. 2. Ст. 23-24 [Электронный ресурс] // Президент России. URL: http://constitution.kremlin.ru (дата обращения: 22.04.2014). См.: Григорьев В.Р., Никитин А.П. Использование статических методов для биометрической идентификации пользователя // Вестник РГГУ. Сер. «Информатика. Защита информации. Математика». 2012. № 14. С. 135-142. Такие изменения требуются в том случае, когда необходимо изменить систему передачи сообщений клавиатуры.

См.: Datasheet AT89C2051 [Электронный ресурс] // Сайт компании Atmel. URL: http://www.atmel.com/images/doc0368.pdf (дата обращения: 22.04.2014). См.: Datasheet AT24C512 [Электронный ресурс] // Сайт компании Atmel. URL: http://www.atmel.com/Images/doc1116.pdf (дата обращения: 22.04.2014). В ходе исследований было установлено, что характерное время между событиями клавиатуры зависит от типа самой клавиатуры, а не от интерфейса подключения.

4