В данной главе дано обоснование использования языка программирования для реализации программного средства. В процессе создания главы созданы классы, реализующие алгоритмы шифрования, контрольной суммы, создания архива, создания USB-ключа и алгоритмов шифрования. В главе были даны описания основных процедур и функций всех описанных модулей, а так же описания реализованных структур данных. Кроме того в главе описана общая схема взаимодействия всех модулей программы.
4. Контрольный пример
В данной работе была реализована программа криптографической защиты файлов с двухэтапной аутентификацией. Программа обладает интуитивно-понятным и простым пользовательским интерфейсом, что обеспечивает простоту и легкость в использовании.
.1 Запуск программы
При запуске программы выводится окно авторизации (рисунок 12), куда можно ввести логин, пароль и выбрать USB-ключ, для входа в программу, либо произвести создание нового USB-ключа. Окно аутентификации имеет множество подсказок для пользователя: таймер оставшегося времени на авторизацию, верность повторенного пароля, верность выбранного USB-ключа, а также справочная информация. Если выбрать команду «Создать USB-ключ», то появится окно создания нового USB-ключа (рисунок 13).
Рисунок 12 - Окно входа в программу.
Рисунок 13 - Окно создания нового USB-ключа.
Здесь пользователю предлагается ввести информацию о себе, а также задать логин и пароль (последний необходимо повторить дважды). При создании пароля происходит автоматический подсчет стойкости пароля и если стойкость не отвечает минимальным требованиям безопасности, происходит блокирование создания нового ключа. Если все данные введены верно, пользователю предоставляется возможность выбрать чистый USB для создания USB-ключа. После чего происходит создание ключа и пользователь может начать работу. Основное окно программы представлено на рисунке 14.
Рисунок 14 - Главное окно программы.
Основное окно программы несет в себе отдельное окно пошаговых подсказок пользователю, путем отслеживания его манипуляций в реальном времени. Также представлена служебная информация о состоянии и владельце используемого USB-ключа. Меню основного окна, помимо выбора операций по работе с файлами, предоставляет возможность создать новый ключ прямо из главного кона программы, получить информацию по программе и связаться с разработчиком программы.
Для непосредственной работы с программой пользователю на выбор предлагается выбрать один из режимов работы - работать с одиночными файлами, либо с папками, содержащими файлы. В последнем случае подразумевается создание файлового контейнера с возможностью архивации для уменьшения общих размеров.