Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тарасов А. А._525ст.2ПЗ .docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
11 Мб
Скачать
☆

3.3 Диаграмма классов

Разработанные классы программы

Рисунок 3.3 – Диаграмма класов разрабатываемого проекта

Класс cryptUtility отвечает за шифрование и извлечение сообщения. Для класса cryptUtility предусмотрены следующие методы.

extractMessageFromBitmap – извлекает сообщение из контейнера.

getColorComponent – возвращает один из трех основных цветов.

hideMessageInBitmap – вызывает HideOrExtract и прячет загруженное сообщение в картинку.

hideOrExtract – вызывается HideMessageInBitmap или ExtractMessageFromBitmap прячет или извлекает сообщение.

setColorComponent – устанавливает цвет пикселя.

Класс frmMain отвечает за интерфейс. Предусмотрены методы.

btnExtract_Click – обработчик при нажатии клавишу «Extract Hidden Text», проверяет введен ли пароль, и извлекает сообщение из контейнера.

btnExtractedMsgFile_Click – обработчик при нажатии клавишу «Browse» вкладки Extract, открывает диалоговое окно сохранения извлеченного текста в файл.

btnHide_Click – обработчик при нажатии клавишу «Hide Message», вызывает метод HideMessageInBitmap, проверяет введен ли ключ и сообщение.

btnImageFile_Click – обработчик кнопки «Browse», открывает окно выбора файла с фильтром допустимых контейнеров.

btnKeyFile_Click – обработчик кнопки «Hide Message» группы Hey, открывает диалоговое окно для выбора тестового файла с ключом.

btnMessage_Click – обработчик кнопки «Browse» вкладки Hide вызывает окно для выбора файла, содержание которого необходимо спрятать.

btnSaveBitmap_Click – обработчик кнопки «Save Result» вкладки Hide вызывает диалоговое окно для сохранения измененного изображения.

getFileName – метод для вызова OpenFile диалога.

getKeyStream – метод преобразует пароль в поток.

getMessageStream – метод для преобразования сообщения в последовательность байтов.

initializeComponent – инициализация графических компонентов.

3.4 Разработка пользовательского интерфейса

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

Visual Studio мощная система визуального объектно-ориентированного проектирования. Визуальная технология разработки программ позволяет быстро создавать приложения путем размещения в форме стандартных компонентов. При этом соответствующий код программы автоматически генерируется. Такая технология освобождает разработчика от рутинной работы по созданию пользовательского интерфейса и позволяет уделить больше внимания внутренней организации данных и обработке данных. Было принято решение сделать простой интерфейс пользователя, содержащий одну форму с двумя вкладками для ввода сообщения и получения зашифрованной ранее информации. Язык интерфейса английский. Благодаря этому программа может использоваться пользователями знающими международный язык.

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

Окно программы представлено ниже на рисунке.

Рисунок 3.4 – Окно программы

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

Browse – кнопка для вызова окна выбора, с которым будут производится работа.

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

Кнопка Browse – открывает диалоговое окно для выбора .txt файла с ключом.

В правой части приложения расположены две вкладки.

Рисунок 3.5 – Вкладка для ввода сообщения

Message – содержит текстовое поле в которое будет выводиться сообщение.

Кнопка Browse – открывает диалоговое окно для выбора .txt файла, который будит скрыт в файле-контейнере.

Кнопка Hide Message становится активной после выбора контейнера и предназначена для запуска процесса сокрытия информации.

Save Result – сохраняет картинку, в которой содержится секретная информация.

Получить зашифрованную ранее информацию можно перейдя на вторую вкладку Extract.

Рисунок 3.6 – Получения зашифрованной ранее информации из картинки

Текстовое поле содержит секретное сообщение после расшифровки.

Кнопка Extract Hidden Text становится доступной поле выбора файла-контейнера.

Кнопка Browse – открывает диалоговое окно для выбора пути для сохранения текстового файла с полным отчетом.