Архитектура и компоненты разрабатываемой системы биометрической аутентификации в офисной среде
Автор: Калининский Д.С.
Журнал: Международный журнал гуманитарных и естественных наук @intjournal
Рубрика: Технические науки
Статья в выпуске: 7-1 (82), 2023 года.
Бесплатный доступ
В данной статье проводится детальный обзор архитектурных и технологических аспектов, которые лежат в основе процесса разработки программной системы биометрической аутентификации. В статье освещается ключевые элементы такой системы, включая модули аутентификации, контроля доступа и мониторинга, при этом акцентируя внимание на их важности для обеспечения повышенного уровня безопасности в офисной среде. Представлен подробный анализ каждой из этих компонентов, рассмотрены их функциональные обязанности и взаимодействие между собой, чтобы предоставить читателям глубокое понимание принципов работы системы. Кроме того, детально рассматриваются выбранные для разработки системы технологии и инструменты, включая языки программирования C# и Python, библиотеки OpenCV, dlib, TensorFlow и Flask.
Биометрическая аутентификация, архитектура по, система контроля доступа, мониторинг, технологический стек, python, c#, opencv, dlib, tensorflow, flask
Короткий адрес: https://sciup.org/170200605
IDR: 170200605 | DOI: 10.24412/2500-1000-2023-7-1-192-196
Текст научной статьи Архитектура и компоненты разрабатываемой системы биометрической аутентификации в офисной среде
Безопасность в современном офисном пространстве становится все более актуальной темой с учетом угроз, возникающих из-за быстрого развития технологий и появления новых каналов кибератак [1-3]. Эффективные системы защиты и управления доступом играют ключевую роль в обеспечении безопасной рабочей среды. Программные системы биометрической аутентификации представляют собой один из передовых подходов к обеспечению защиты и контроля доступа [4].
Целью данной статьи является представление подробного анализа архитектуры и выбранных технологий в разрабатываемой программной системе биометрической аутентификации. Работа сосредоточена на исследовании различных компонентов такой системы, включая модули аутентификации, контроля доступа и мониторинга, с акцентом на их роль в обес- печении безопасности в офисной среде [56].
Разрабатываемая система стремится создать надежную и удобную в использовании среду, в которой биометрические данные используются для подтверждения идентичности пользователя, обеспечивая таким образом эффективный контроль доступа и высокий уровень защиты [7].
Описание архитектуры и компонентов программного решения
Архитектура программного решения для системы аутентификации построена на основе клиентской архитектуры. В такой архитектуре клиентское приложение обрабатывает запросы на аутентификацию и хранит информацию о пользователях и их биометрических данных. Далее на рисунке 20 представлена блок схема работы программы.
Рис. 1. Архитектура программного обеспечения
Ниже представлено описание основных компонентов программного решения:
-
1. Клиентское приложение (Windows Forms):
-
- Форма аутентификации: Визуальный интерфейс для ввода биометрических данных пользователя (например, с помощью камеры для распознавания лица).
-
- Форма доступа к приложениям: Визуальный интерфейс для выбора приложения и предоставления доступа на основе уровней доступа.
-
- Форма мониторинга процессов на рабочем месте: Визуальный интерфейс для отображения процессов приложении и время их работы.
-
- Форма мониторинга скриншотов экрана: Визуальный интерфейс для просмотра скриншотов и настройки их работы.
-
2. Биометрический модуль:
-
3. База данных (или файл):
Модуль захвата биометрических данных: Отвечает за захват и обработку биометрических данных, таких как изображение лица, с использованием соответствующих биометрических сенсоров или камер.
Хранит информацию о зарегистрированных пользователях, их биометрических данных и уровнях доступа к приложениям.
Программа будет использовать клиентское приложение для аутентификации пользователей на основе биометрических данных и предоставления доступа к приложениям в соответствии с заданными уровнями доступа. Приложение будет взаимодействовать с биометрическим модулем для получения и обработки биометрических данных, а также с базой данных (или файлом) для хранения информации о пользователях и их уровнях доступа.
Для реализации биометрии был написан Python-скрипт (face_recognition()), который использует каскадный классификатор Haar для обнаружения лиц на видеопотоке с веб-камеры и отображает прямоугольники вокруг обнаруженных лиц. Можно настроить параметры классификатора и веб-камеры в соответствии с вашими требованиями. В этом ПО функция authenticate() получает два аргумента: face_roi (область интереса лица) и known_faces (список известных лиц). Функция проходит по каждому известному лицу и сравнивает его с переданной областью лица. Если есть совпадение, функция возвращает True, иначе возвращает False. Данная функция для выполнения кода имеет предобученные модели, такое как shape_predictor_68_face_landmarks.dat и dlib_face_recognition_resnet_model_v1.dat. Они загружены с официального сайта dlib. Также для работы алгоритма, установиле-ны необходимые зависимости, такие как dlib и scipy.
Чтобы работал алгоритм биометрии ему необходима база данных, которая хранит информацию о пользователях и их биометрию для того, чтобы добавлять пользователей используется второй Python-скрипт (known_faces()), он представляет биометрию работников компании в виде кода (рис. 2).
knownfaces = [
-
# Лицевые особенности для первого известного лица
[0.123, 0.456, 0.789,...],
-
# Лицевые особенности для второго известного лица
[0.987, 0.654, 0.321, ...],
-
# и так далее...
]
Рис. 2. Пример биометрической базы данных алгоритма
Применяемые технологические решения и инструментарий
Следующий набор технологий и инструментов был применён в процессе создания программной системы для биометрической идентификации [8-10]:
-
1. Программирование на C# – этот язык был выбран в качестве основного для создания функций и интерфейса программного продукта.
-
2. Программирование на Python – этот язык применялся для реализации алгоритмов биометрической идентификации и взаимодействия с биометрическими устройствами.
-
3. Библиотека OpenCV – используется для манипуляций с изображениями и видеоматериалами, включая обработку и анализ биометрической информации.
-
4. Библиотека dlib – используется для обработки и анализа изображений и видео, включая применение моделей машинного обучения. Dlib предоставляет сильные инструменты для распознавания лиц и работы с разными атрибутами лица.
-
5. Библиотека TensorFlow – применяется для обучения моделей машинного обучения на основе биометрических данных. TensorFlow предлагает мощные инструменты для обучения и оптимизации глубоких нейронных сетей, а также для обработки и анализа больших объемов данных.
-
6. Библиотека Flask – применяется для создания веб-приложения биометрической
-
7. Среда разработки PyCharm – используется для создания, отладки и тестирования программного решения для биометрической идентификации. PyCharm предлагает широкий набор инструментов для разработки приложений на Python, включая автодополнение, отладчик, тестовые инструменты и многое другое.
-
8. Биометрическое оборудование – использовалось для сбора биометрических данных в ходе тестирования программного продукта. Использовались камеры для съёмки лиц и сканеры отпечатков пальцев.
OpenCV предлагает множество функций и алгоритмов для работы с изображениями, таких как определение контуров, выделение объектов, фильтрация и сегментация.
идентификации. Flask позволяет создавать простые и масштабируемые вебприложения, способные работать с различными типами биометрических данных.
Заключение
Была описана структура разрабатываемой программной системы и ее элементы. Основные модули и функциональные ча- сти, необходимые для поддержания безопасности в рабочем офисе, были уточнены. Это включает модули для аутентификации, управления доступом, мониторинга и обеспечения безопасности.
Кроме того, были перечислены технологии и инструменты, применённые в процессе разработки программного решения. Это включает языки программирования, фреймворки, системы управления базами данных и другие компоненты, необходимые для функционирования системы.
Важно подчеркнуть, что выбор и использование этих технологий были основаны на их способности решить конкретные задачи, их надежности, а также на лёгкости интеграции с другими системами [11, 12].Этот подход обеспечивает гибкость и возможность адаптации системы к изменяющимся потребностям и требованиям среды.
Список литературы Архитектура и компоненты разрабатываемой системы биометрической аутентификации в офисной среде
- Федеральная служба безопасности (ФСБ). - [Электронный ресурс]. - Режим доступа: https://www.fsb.ru/.
- SANS Institute. - [Электронный ресурс]. - Режим доступа: https://www.sans.org/.
- National Institute of Standards and Technology (NIST). - [Электронный ресурс]. - Режим доступа: https://www.nist.gov/.
- OWASP (Open Web Application Security Project). - [Электронный ресурс]. - Режим доступа: https://owasp.org/.
- CISA (Cybersecurity and Infrastructure Security Agency). - [Электронный ресурс]. -Режим доступа: https://www.cisa.gov/.
- Microsoft Security. - [Электронный ресурс]. https://www.microsoft.com/security.
- IBM Security. - [Электронный ресурс]. https://www.ibm.com/security.
- Cisco Security. - [Электронный ресурс]. https://www.cisco.com/c/en/us/products/security/index.html.
- Kaspersky Lab. - [Электронный ресурс]. - Режим доступа: https://www.kaspersky.com/.
- Symantec. - [Электронный ресурс]. - Режим доступа: https://www.symantec.com/.
- McAfee. - [Электронный ресурс]. - Режим доступа: https://www.mcafee.com/.
- Ross, D.A. Introduction to Cybersecurity: Understanding and Applying Principles and Practices. Wiley, 2018.