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

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

CC BY
55
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БИОМЕТРИЧЕСКАЯ АУТЕНТИФИКАЦИЯ / АРХИТЕКТУРА ПО / СИСТЕМА КОНТРОЛЯ ДОСТУПА / МОНИТОРИНГ / ТЕХНОЛОГИЧЕСКИЙ СТЕК / PYTHON / C# / OPENCV / DLIB / TENSORFLOW / FLASK

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Калининский Д.С.

В данной статье проводится детальный обзор архитектурных и технологических аспектов, которые лежат в основе процесса разработки программной системы биометрической аутентификации. В статье освещается ключевые элементы такой системы, включая модули аутентификации, контроля доступа и мониторинга, при этом акцентируя внимание на их важности для обеспечения повышенного уровня безопасности в офисной среде. Представлен подробный анализ каждой из этих компонентов, рассмотрены их функциональные обязанности и взаимодействие между собой, чтобы предоставить читателям глубокое понимание принципов работы системы. Кроме того, детально рассматриваются выбранные для разработки системы технологии и инструменты, включая языки программирования C# и Python, библиотеки OpenCV, dlib, TensorFlow и Flask.

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

ARCHITECTURE AND COMPONENTS OF THE DEVELOPED BIOMETRIC AUTHENTICATION SYSTEM IN THE OFFICE ENVIRONMENT

This article provides a detailed overview of the architectural and technological aspects that underlie the process of developing a biometric authentication software system. The article highlights the key elements of such a system, including authentication, access control and monitoring modules, while emphasizing their importance for providing an increased level of security in the office environment. A detailed analysis of each of these components is presented, their functional responsibilities and interactions are considered in order to provide readers with a deep understanding of the principles of the system. In addition, the technologies and tools chosen for the development of the system are considered in detail, including the C # and Python programming languages, the OpenCV, dlib, TensorFlow and Flask libraries.

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

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

Д.С. Калининский, магистрант

Московский технический университет связи и информатики (Россия, г. Москва)

DOI:10.24412/2500-1000-2023-7-1-192-196

Аннотация. В данной статье проводится детальный обзор архитектурных и технологических аспектов, которые лежат в основе процесса разработки программной системы биометрической аутентификации. В статье освещается ключевые элементы такой системы, включая модули аутентификации, контроля доступа и мониторинга, при этом акцентируя внимание на их важности для обеспечения повышенного уровня безопасности в офисной среде. Представлен подробный анализ каждой из этих компонентов, рассмотрены их функциональные обязанности и взаимодействие между собой, чтобы предоставить читателям глубокое понимание принципов работы системы. Кроме того, детально рассматриваются выбранные для разработки системы технологии и инструменты, включая языки программирования C# и Python, библиотеки OpenCV, dlib, TensorFlow и Flask.

Ключевые слова: биометрическая аутентификация, архитектура ПО, система контроля доступа, мониторинг, технологический стек, Python, C#, OpenCV, dlib, TensorFlow, Flask.

Безопасность в современном офисном пространстве становится все более актуальной темой с учетом угроз, возникающих из-за быстрого развития технологий и появления новых каналов кибератак [1-3]. Эффективные системы защиты и управления доступом играют ключевую роль в обеспечении безопасной рабочей среды. Программные системы биометрической аутентификации представляют собой один из передовых подходов к обеспечению защиты и контроля доступа [4].

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

печении безопасности в офисной среде [56].

Разрабатываемая система стремится создать надежную и удобную в использовании среду, в которой биометрические данные используются для подтверждения идентичности пользователя, обеспечивая таким образом эффективный контроль доступа и высокий уровень защиты [7].

Описание архитектуры и компонентов программного решения

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

Рис. 1. Архитектура программного обеспечения

Ниже представлено описание основных компонентов программного решения:

1. Клиентское приложение (Windows Forms):

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

- Форма доступа к приложениям: Визуальный интерфейс для выбора приложения и предоставления доступа на основе уровней доступа.

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

- Форма мониторинга скриншотов экрана: Визуальный интерфейс для просмотра скриншотов и настройки их работы.

2. Биометрический модуль:

Модуль захвата биометрических данных: Отвечает за захват и обработку биометрических данных, таких как изображение лица, с использованием соответствующих биометрических сенсоров или камер.

3. База данных (или файл):

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

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

Для реализации биометрии был написан Python-скрипт (face_recognition()), который использует каскадный классификатор Haar для обнаружения лиц на видеопотоке с веб-камеры и отображает прямоугольники вокруг обнаруженных лиц. Можно настроить параметры классификатора и веб-камеры в соответствии с вашими требованиями. В этом ПО функция authenticate^ получает два аргумента: face_roi (область интереса лица) и known_faces (список известных лиц). Функция проходит по каждому известному лицу и сравнивает его с переданной областью лица. Если есть совпадение, функция возвращает True, иначе возвращает False. Данная функция для выполнения

Применяемые технологические решения и инструментарий

Следующий набор технологий и инструментов был применён в процессе создания программной системы для биометрической идентификации [8-10]:

1. Программирование на C# - этот язык был выбран в качестве основного для создания функций и интерфейса программного продукта.

2. Программирование на Python - этот язык применялся для реализации алгоритмов биометрической идентификации и взаимодействия с биометрическими устройствами.

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

кода имеет предобученные модели, такое как shape_predictor_6 8_face_l andmarks.dat и

dlib_face_recognition_resnet_model_v1.dat. Они загружены с официального сайта dlib. Также для работы алгоритма, установиле-ны необходимые зависимости, такие как dlib и scipy.

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

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

4. Библиотека dlib - используется для обработки и анализа изображений и видео, включая применение моделей машинного обучения. Dlib предоставляет сильные инструменты для распознавания лиц и работы с разными атрибутами лица.

5. Библиотека TensorFlow - применяется для обучения моделей машинного обучения на основе биометрических данных. TensorFlow предлагает мощные инструменты для обучения и оптимизации глубоких нейронных сетей, а также для обработки и анализа больших объемов данных.

6. Библиотека Flask - применяется для создания веб-приложения биометрической

кжтп Гасек = [

# Лицевые особенности для первого известного лица [0.123,0.456,0.789, ...],

# Лицевые особенности для второго известного лица [0.987, 0.654,0.321, ...],

# и так далее...

Рис. 2. Пример биометрической базы данных алгоритма

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

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

8. Биометрическое оборудование - использовалось для сбора биометрических данных в ходе тестирования программного продукта. Использовались камеры для съёмки лиц и сканеры отпечатков пальцев.

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

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

Важно подчеркнуть, что выбор и использование этих технологий были основаны на их способности решить конкретные задачи, их надежности, а также на лёгкости интеграции с другими системами [11, 12].Этот подход обеспечивает гибкость и возможность адаптации системы к изменяющимся потребностям и требованиям среды.

Заключение

Была описана структура разрабатываемой программной системы и ее элементы. Основные модули и функциональные ча-

Библиографический список

1. Федеральная служба безопасности (ФСБ). - [Электронный ресурс]. - Режим доступа: https://www.fsb.ru/.

2. SANS Institute. - [Электронный ресурс]. - Режим доступа: https://www.sans.org/.

3. National Institute of Standards and Technology (NIST). - [Электронный ресурс]. - Режим доступа: https://www.nist.gov/.

4. OWASP (Open Web Application Security Project). - [Электронный ресурс]. - Режим доступа: https://owasp.org/.

5. CISA (Cybersecurity and Infrastructure Security Agency). - [Электронный ресурс]. -Режим доступа: https://www.cisa.gov/.

6. Microsoft Security. - [Электронный ресурс]. https://www.microsoft.com/security.

7. IBM Security. - [Электронный ресурс]. https://www.ibm.com/security.

8. Cisco Security. - [Электронный ресурс]. https://www.cisco.com/c/en/us/products/security/index.html.

9. Kaspersky Lab. - [Электронный ресурс]. - Режим доступа: https://www.kaspersky.com/.

10. Symantec. - [Электронный ресурс]. - Режим доступа: https://www.symantec.com/.

11. McAfee. - [Электронный ресурс]. - Режим доступа: https://www.mcafee.com/.

12. Ross, D.A. Introduction to Cybersecurity: Understanding and Applying Principles and Practices. Wiley, 2018.

Режим доступа:

Режим

Режим

доступа:

доступа:

ARCHITECTURE AND COMPONENTS OF THE DEVELOPED BIOMETRIC AUTHENTICATION SYSTEM IN THE OFFICE ENVIRONMENT

D.S. Kalininskiy, Graduate Student

Moscow Technical University of Communications and Informatics (Russia, Moscow)

Abstract. This article provides a detailed overview of the architectural and technological aspects that underlie the process of developing a biometric authentication software system. The article highlights the key elements of such a system, including authentication, access control and monitoring modules, while emphasizing their importance for providing an increased level of security in the office environment. A detailed analysis of each of these components is presented, their functional responsibilities and interactions are considered in order to provide readers with a deep understanding of the principles of the system. In addition, the technologies and tools chosen for the development of the system are considered in detail, including the C # and Python programming languages, the OpenCV, dlib, TensorFlow and Flask libraries.

Keywords: biometric authentication, software architecture, access control system, monitoring, technology stack, Python, C#, OpenCV, dlib, TensorFlow, Flask.

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