При передаче объемных файлов (например по E-Mail или через интерактивные службы интернет – WWW и FTP) используются разнообразные методы сжатия, из которых для целей стеганографии предпочтительны те методы, которые обеспечивают сжатие без потерь, поскольку требуется точное восстановление спрятанных данных. Такие виды сжатия типичны для изображений в форматах GIF2, TIFF и BMP, а также звуковых форматов WAV, AU и др.
После запуска программы необходимо загрузить изображение (контейнер) в формате BMP. Далее необходимо ввести данные в текстовое поле, которые требуется зашифровать. После этого вводим ключ, известный отправителю и получателю и вшиваем информацию в изображение. Затем сохраняем изображение на носитель и отправляем его получателю.
1.4 Сфера применения разработанного программного продукта
В связи с возрастанием роли глобальных компьютерных сетей становится все более важным значение стеганографии. Анализ информационных источников компьютерной сети Internet позволяет сделать вывод, что в настоящее время стеганографические системы активно используются для решения следующих основных задач:
1.Защита конфиденциальной информации от несанкционированного доступа;
2.Преодоление систем мониторинга и управления сетевыми ресурсами;
3.Камуфлирования программного обеспечения;
4.Защита авторского права на некоторые виды интеллектуальной собственности.
Защита конфиденциальной информации от несанкционированного доступа
Это область использования КС является наиболее эффективной при решении проблемы защиты конфиденциальной информации. Так, например, только одна секунда оцифрованного звука с частотой дискретизации 44100 Гц и уровнем отсчета 8 бит в стерео режиме позволяет скрыть за счет замены наименее значимых младших разрядов на скрываемое сообщение около 10 Кбайт информации. При этом изменение значений отсчетов составляет менее 1%. Такое изменение практически не обнаруживается при прослушивании файла большинством людей.
Преодоление систем мониторинга и управления сетевыми ресурсами
Стеганографические методы, направленные на противодействие системам мониторинга и управления сетевыми ресурсами промышленного шпионажа, позволяют противостоять попыткам контроля над информационным пространством при прохождении информации через серверы управления локальных и глобальных вычислительных сетей.
Камуфлирование программного обеспечения (ПО)
Другой важной задачей стеганографии является камуфлирование ПО. В тех случаях, когда использование ПО незарегистрированными пользователями является нежелательным, оно может быть закамуфлировано под стандартные универсальные программные продукты (например, текстовые редакторы) или скрыто в файлах мультимедиа (например, в изображениях, входящих в пакет программы).
Защита авторских прав
Еще одной областью использования стеганографии является защита авторского права от пиратства. На компьютерные графические изображения наносится специальная метка, которая остается невидимой для глаз, но распознается специальным ПО. Такое программное обеспечение уже используется в компьютерных версиях некоторых журналов. Данное направление стеганографии предназначено не только для обработки изображений, но и для файлов с аудио- и видеоинформацией и призвано обеспечить защиту интеллектуальной собственности.
2. Обоснование выбора средств разработки
Для достижения поставленной цели, в качестве среды разработки данной программы, несомненно, была выбрана система визуального программирования Borland Delphi 7.0, построенная на основе языка программирования Object Pascal. Данная система была выбрана по нескольким критериям:
- гибкость и надежность;
- простота и ясность конструкции;
- легкость реализации на современных компьютерах;
- возможность достаточного контроля правильности программы, как на этапе компиляции, так и во время выполнения;
- наличие набора структурных типов данных;
- применение структурного программирования;
- наличие средств связи разрабатываемой программы с сервером баз данных;
Delphi компилирует проект намного быстрее остальных языков программирования, хотя получаемые программные модули получаются большими размерами. В данной среде наиболее проработана справочная система и контекстная справка, что ускоряет написание программ. Наглядность и простота программ на Borland Delphi говорит сама за себя.
Преимущества Delphi по сравнению с другими программными продуктами.
· Быстрота разработки приложения. · Высокая производительность разработанного приложения · настоящий 32-битный код полученный в результате компиляции оптимизирующим компилятором. · Hизкие требования разработанного приложения к ресурсам компьютера. · Возможность полного доступа к функциям операционных систем Windows95 и Windows NT. · Hаращиваемость за счет встраивания новых компонент и инструментов в среду Delphi. · Возможность разработки новых компонент и инструментов собственными средствами Delphi (существующие компоненты и инструменты доступны в исходных текстах) · Удачная проработка иерархии объектов · Де-факто уже доступно огромное количество визуальных компонент третьих фирм, часть из которых freeware, часть shareware, часть - коммерческиеНо основным преимуществом Delphi является его среда программирования с визуальным конструктором программ. Эта среда (вместе с объектной библиотекой VCL) позволяет эффективно программировать под MS Windows, не отвлекаясь на выяснение всех деталей WinAPI, а работать над логикой программы.
Delphi — язык программирования, ранее известный как Object Pascal, разработанный фирмой Borland и изначально реализованный в её пакете Borland Delphi, от которого и получил в 2003 году своё нынешнее название. По сути, является наследником языка Pascal с объектно-ориентированными расширениями.
Среда разработки Delphi ориентирована, прежде всего, на создание программ для семейства операционных систем Windows. При этом большое внимание уделяется возможности визуальной разработки приложений с помощью большого набора готовых компонентов, а в стандартную поставку Delphi входят основные объекты, которые образуют удачно подобранную иерархию из 270 базовых классов, позволяющих избежать ручного кодирования. Эти компоненты охватывают практически все аспекты применения современных информационных технологий.
3. Модульная структура программы
Модуль – это кусок программы, компилируемый отдельно из остальных ее частей.
Модульная структура – это структура модулей программ, находящихся в иерархической связи.4. Разработка форм входных и выходных данных
4.1 Входные данные
Входные данные – это данные, которые позволяют получить выходные денные.
В разработанном программном продукте входными данными являются изображения, загружаемые пользователем, а также текстовая информация, которую необходимо скрыть.
4.2 Выходные данные
Выходные данные – это данные полученные путем преобразования входных данных в соответствии с устройством или программой.
В разработанном программном продукте выходные данные получаются после сохранения изображения. Данные хранятся внутри объекта.
5. Тестирование программного продукта
Тестирование программного продукта – это процесс выявления и отладки ошибок возникающих при разработки программного продукта. Целью тестирования является определения положительных и отрицательных сторон программного продукта. В ходе тестирования данного приложения (программы стегонаграфии) не было выявлено ни каких ошибок и искажений.
5.1Тестирование ввода данных (при допустимых, не допустимых значениях)
В ходе тестирования на ввод данных не было выявлено никаких ошибок.
5.2Тестирование выполнения основных функций программ
При нажатии кнопки «Текст->Загрузит текст » происходит открытие диалогового окна с возможностью выбор текстового файла. После выполнения данной операции содержимое файла отобразится в текстовом поле.
При нажатии кнопки «Текст->Сохранить текст» происходит открытие диалогового окна с возможностью сохранения текстового файла.
При нажатии кнопки « Изображение->Загрузить изображение» происходит открытие диалогового окна с возможностью выбора графического файла в формате BMP.
При нажатии кнопки «Изображение->Сохранить изображение» происходит открытие диалогового окна с возможностью сохранения изображения в одном из доступных форматов.
При нажатии кнопки «Изображение->Вшить информацию» происходит вшитие текстовой информации в графическое изображение.
При нажатии кнопки «Изображение->Извлечь информацию» происходит извлечение текстовой информации.
6. Разработка сопроводительных документов
6.1Описание руководства программиста
Программный продукт устанавливается на компьютеры, которые участвуют в обмене конфиденциальной информации. Минимальные системные требования: необходима установка одной из операционных систем, таких как Windows 98 – Vista, Unix, Linux. После запуска программы необходимо открыть файл изображения в формате BMP.Далее необходимо либо с клавиатуры, либо путем открытия с помощью соответствующих кнопок на форме ввести в текстовое поле ту информацию, которую необходимо скрыть. После этого вводим ключ шифрования, который в свою очередь должен хранится в тайне и быть известен только участникам файлового обмена. Далее следует нажать кнопку «Изображение->Вшить информацию» информация будет сохранена в изображении. Затем следует сохранить графический файл на носитель. Процесс извлечения осуществляется в обратном порядке. В нижнем меню формы отображается информация о количестве набранных символов, максимальном количестве символов для открытого изображения и полный путь до файла изображения.