1.6 Скрытие данных в неподвижных изображениях.
Большинство исследований посвящено использованию в качестве стего-контейнеров изображений. Это обусловлено следующими причинами:
· существованием практически значимой задачей защиты фотографий,
картин, видео от незаконного тиражирования и распространения;
· относительно большим объемом цифрового представления изображений, что позволяет внедрять ЦВЗ большого объема либо повышать робастность внедрения;
· заранее известным размером контейнера, отсутствием ограничений, накладываемых требованиями реального времени;
· наличием в большинстве реальных изображений текстурных областей, имеющих шумовую структуру и хорошо подходящих для встраивания информации;
· слабой чувствительностью человеческого глаза к незначительным изменениям цветов изображения, его яркости, контрастности, содержанию в нем шума, искажениям вблизи контуров;
· хорошо разработанными в последнее время методами цифровой обработки изображений.
Последняя причина вызывает значительные трудности в обеспечении робастности ЦВЗ: чем более совершенными становятся методы сжатия, тем меньше остается возможностей для встраивания посторонней информации. Развитие теории и практики алгоритмов сжатия изображений привело к изменению представлений о технике внедрения ЦВЗ. Если первоначально предлагалось вкладывать информацию в незначащие биты для уменьшения визуальной заметности, то современный подход заключается во встраивании ЦВЗ в наиболее существенные области изображений, разрушение которых приведет к полной деградации самого изображения. Не случайно поэтому стегоалгоритмы учитывают свойства системы человеческого зрения (СЧЗ), аналогично алгоритмам сжатия изображений. В стегоалгоритмах зачастую используются те же преобразования, что и в современных алгоритмах сжатия (дискретное косинусное преобразование в JPEG, вейвлет-преобразование в JPEG2000). При этом существуют, очевидно, три возможности. Вложение информации может производиться в исходное изображение, либо одновременно с осуществлением сжатия изображения-контейнера, либо в уже сжатое алгоритмом JPEG изображение.
Выполнение линейных ортогональных преобразований изображений – вычислительно трудоемкий процесс, несмотря на наличие быстрых алгоритмов. Поэтому, в некоторых случаях можно ограничиться встраиванием информации в пространственной области изображения. Более эффективные стегоалгоритмы реализуют внедрение ЦВЗ в области преобразования.
1.6.1 Обзор алгоритмов встраивания информации в изображения.
По способу встраивания информации стегоалгоритмы можно разделить на линейные (аддитивные), нелинейные и другие. Алгоритмы аддитивного внедрения информации заключаются в линейной модификации исходного изображения, а ее извлечение в декодере производится корреляционными методами. При этом ЦВЗ обычно складывается с изображением-контейнером, либо «вплавляется» (fusion) в него. В нелинейных методах встраивания информации используется скалярное либо векторное квантование. Среди других методов определенный интерес представляют методы, использующие идеи фрактального кодирования изображений.
· Аддитивные алгоритмы. В аддитивных методах внедрения, ЦВЗ представляет собой последовательность чисел wi длины N, которая внедряется в выбранное подмножество отсчетов исходного изображения f . Основное и наиболее часто используемое выражение для встраивания информации в этом случае: f/(m,n) = f(m,n)(1 + αwi), где α - весовой коэффициент, а f/ - модифицированный пиксель изображения.
· Алгоритм на основе слияния ЦВЗ и контейнера. Если вместо последовательности псевдослучайных чисел в изображение встраивается другое изображение (например, логотип фирмы), то соответствующие алгоритмы внедрения называются алгоритмами слияния. Размер внедряемого сообщения намного меньше размера исходного изображения. Перед встраиванием оно может быть зашифровано или преобразовано каким-нибудь иным образом. У таких алгоритмов есть два преимущества:
Во-первых, можно допустить некоторое искажение скрытого сообщения, так как человек все равно сможет распознать его.
Во-вторых, наличие внедренного логотипа является более убедительным доказательством прав собственности, чем наличие некоторого псевдослучайного числа.
· Стеганографические методы на основе квантования. Под квантованием понимается процесс сопоставления большого (возможно и бесконечного) множества значений с некоторым конечным множеством чисел. При этом происходит уменьшение объема информации за счет ее искажения. Квантование находит применение в алгоритмах сжатия с потерями. Различают скалярное и векторное квантование. При векторном квантовании, в отличие от скалярного, происходит отображение не отдельно взятого отсчета, а их совокупности (вектора). Из теории информации известно, что векторное квантование эффективнее скалярного по степени сжатия, обладая большей сложностью. В стеганографии находят применение оба вида квантования.
· Стегоалгоритмы, использующие фрактальное преобразование. Основная идея метода сжатия заключается в поиске последовательности афинных преобразований (поворот, сдвиг, масштабирование), позволяющих аппроксимировать блоки изображения малого размера (ранговые) блоками большего размера (доменами). То есть считается, что изображение самоподобно. Эта последовательность преобразований и передается декодеру. Будучи примененными к любому изображению, эти преобразования дают в результате искомое изображение. Фрактальное кодирование может рассматриваться, как разновидность векторного квантования, причем в качестве кодовой книги выступают различные преобразования.
ІІ. Практическая часть
1. Анализ технического задания
1.1Актуальность программного продукта
Стеганографические системы активно используются для решения большого круга задач:
· для защиты конфиденциальной информации от возможного саботажа, кражи или несанкционированного просмотра;
· для преодоления систем мониторинга и управления сетевыми ресурсами;
· при камуфлировании программного обеспечения. В случаях, когда использование программного обеспечения незарегистрированными пользователями является нежелательным, оно может быть закамуфлировано под стандартные программные продукты;
· для защиты авторского права на некоторые виды интеллектуальной собственности. На компьютерные графические изображения наносится специальная метка, которая остается невидимой для глаз, но распознается специальным программным обеспечением.
Кроме скрытой передачи сообщений, стеганография является одной из самых перспективных направлений, применяемых для аутентификации и маркировки авторской продукции. При этом, часто в качестве внедряемой информации используются дата и место создания продукта, данные об авторе, номер лицензии, серийный номер, дата истечения срока работы (удобно для распространения shareware-программ) и др. Эта информация обычно внедряется как в графические и аудио произведения так и в защищаемые программные продукты. Все внесенные сведения могут рассматриваться как веские доказательства при рассмотрении вопросов и судебных разбирательств об авторстве или для доказательства факта нелегального копирования, и часто имеют решающее значение.
1.2 Назначение программного продукта
Программных продукт, применяются для целей стеганографии, реализующий средства внедрения секретных данных в графические файлы.
Данный программный продукт скрывает конфиденциальную информацию в изображениях, которые можно передавать по сети и в дальнейшем извлекать данную информацию. Применение продукта возможно на любом пользовательском компьютере.
1.3 Принцип работы программного продукта
При реализации методов стеганографии на компьютере (компьютерная стеганография) определяющим фактором является выбор способа кодирования данных. Так же часто стараются придерживаться следующих принципов:
· В качестве носителя скрытой информации должен выступать объект (файл), допускающий искажения собственной информации, не нарушающие его функциональность и суть.
· Внесенные искажения должны быть ниже уровня чувствительности средств распознавания.
В качестве носителя обычно используются файлы изображений или звуковые файлы. Скрываемое сообщение может быть простым набором чисел, изображением, простым или зашифрованным текстом.