Разработка программного обеспечения аутентификации пользователя информационной системы на основе почерка
Перед проектом ставятся следующие задачи:
1) основные:
• разработка структуры программного обеспечения;
• программная реализация;
2) дополнительные задачи:
• создание алгоритма считывания характеристик почерка с устройств ввода;
• создание алгоритма обработки и уменьшения объемов полученных данных;
• создание алгоритма сравнения биометрических характеристик почерка.
В настоящее время одним из средств реализации угроз конфиденциальности, целостности и доступности информации является несанкционированный доступ (НСД) нарушителя к ней. Издавна, человек использовал свою рукописную подпись в качестве доказательства того, что именно он совершил действие. И действительно, сравнивая два образца подписи, можно с некоторой уверенностью сказать были ли они сделаны одним и тем же человеком. Кроме обычного сравнения изображения подписей, в качестве уникальной характеристики человека можно использовать их динамические характеристики, проявляющиеся в процессе написания. Именно анализу динамических характеристик подписи человека, как средства предотвращения НСД, посвящена научно-исследовательская работа.
Ввиду того, что функционирование программно-аппаратного комплекса предполагается с использованием различных устройств ввода, большинство из которых не способно считывать подробные характеристики почерка, то в качестве альтернативы предлагается использование такой характеристики как динамически снимаемая траектория написания. Первое, что стоит сделать, это определить алгоритма, который сможет выделять отличительные особенности почерка. Среди известных алгоритмов выделения отличительных черт почерка, которые оценивают только траекторию, в программно-аппаратном комплексе применяется алгоритм схожий на поиск локальных экстремумов [2][3]. Модификация алгоритма локальных экстремумов позволяет уменьшить количество анализируемых данных без значительной потери качества.
Другим важнейшим элементом является алгоритм-классификатор, в данном случае это обучаемая учителем искусственная нейронная сеть (ИНС) с двумя скрытыми слоями без обратных связей с сигмоидальной функцией активации нейронов [4][5][6]. ИНС — удобный инструмент классификации образов, показавший отличные результаты при решении подобных задач.
Для решения поставленных задач обработанная модифицированным алгоритмом локальных экстремумов траектория разбивается на три составляющие: координаты по оси ординат, координаты по оси абсцисс и временные метки. Таким образом, для каждой составляющей траектории используется собственная ИНС. Обучение ИНС производится генетическим алгоритмом[1].
Для оценки работоспособности алгоритма и определения значения коэффициента максимального допустимого искажения было проведено исследование на примере трех образцов почерка, которые принадлежат различным пользователям.
Значение коэффициента, которое устанавливается в алгоритме, изменялось в интервале от 0.5 до 5. Затем фиксировались отобранные алгоритмом информативные точки траекторий. По сжатым траекториям строились вектора горизонтальной и вертикальной составляющих. Ввиду того, что наиболее интересным параметром почерка является изменение положения пера со временем, то, имея в своем распоряжении временные отсечки, можно высчитывать среднюю скорость движения по поверхности считывания на отрезке между двумя соседними точками. Относительно показателей средней скорости по исходным и получаемым после обработки данным рассчитывался коэффициент корреляции Пирсона, сумма разности квадратов между соответствующими значениями средней скорости.
Для каждого образца в зависимости от формы его траектории, наличии закругленностей и прямых отрезков при одном и том же значении Коэффициента степень корреляции может сильно отличаться. При небольших значениях коэффициента получаются лучшие результаты, хоть и в ущерб сокращению объема данных.
Разработанный алгоритм является одной из основополагающих частей системы аутентификации пользователя по динамическим характеристикам почерка, который построен на методе поиска экстремальных точек траектории, и полностью выполняет поставленные задачи. Варьируя значение коэффициента допустимого искажения на выходе можно получить различное качество сглаживания траектории. При коэффициенте равном 0.75, сравнивая две траектории, построенную из последовательности отрезков, концами которых являются отобранные точки, и исходную, получаются хорошие результаты, а количество точек уменьшается на 50-60 процентов. А коэффициент корреляции для горизонтальной и вертикальной составляющих средней скорости движения пера приблизительно равен или больше 0.70. Подбирая значение коэффициента для каждого образца в индивидуальном порядке, можно получить требуемые выходные характеристики.
Результатом проведенных работ является разработанная на языке программирования C++ система аутентификации по биометрическим характеристикам почерка, построенная на блочной основе. Она представляет собой полноценный программный продукт, способный предотвратить осуществление угрозы несанкционированного доступа к конфиденциальной информации, является удобным инструментом повышения степени защищенности, обладает всем необходимым функционалом, требуемым для выполнения поставленных перед ней задач. Данная система применима для операционных систем семейства Windows, обладает приемлемыми техническими требованиями и приспособлена для внедрения в информационные системы в режиме удаленного доступа к ней.
2. Д.В. Колядин. Анализ динамических кривых применительно к задаче верифи-кации рукописной подписи. Математические методы распознавания образов (ММРО-11), 2003, с. 330-332.
3. Д.В. Колядин, И.Б. Петров. Алгоритм выделения экстремальных точек приме-нительно к задаче биометрической верификации рукописной подписи. Электронный журнал «ИССЛЕДОВАНО В РОССИИ» с.532-540.
4. Aleksander I., Morton H. An Introduction to Neural Computing. — London: Chap-man&Hall, 1990.
5. Cybenko G. Approximation by superposition of sigmoidal functions //Math. Control, Signal Syst.—1989. —N 2.—pp.303—314.