Разработка необнаруживаемых стегосистем для каналов с шумом тема диссертации и автореферата по ВАК РФ 05.12.13, кандидат наук Небаева, Ксения Андреевна

  • Небаева, Ксения Андреевна
  • кандидат науккандидат наук
  • 2014, Санкт-Петербург
  • Специальность ВАК РФ05.12.13
  • Количество страниц 177
Небаева, Ксения Андреевна. Разработка необнаруживаемых стегосистем для каналов с шумом: дис. кандидат наук: 05.12.13 - Системы, сети и устройства телекоммуникаций. Санкт-Петербург. 2014. 177 с.

Оглавление диссертации кандидат наук Небаева, Ксения Андреевна

ОГЛАВЛЕНИЕ

Введение

Глава 1. Назначение стегосистем и их основные характеристики

1.1 Основная задача и классификации стегосистем

1.2 Атаки на стегосистемы

1.3 Примеры использования стегосистем

1.4 Выводы по главе

Глава 2. Описание построения различных типов стегосистем

2.1 Стегосистемы с вложением секретной информации в наименьшие значащие биты покрывающего объекта

2.2 Стегосистема F5

2.3 Стегосистемы с использованием широкополосных сигналов

2.4 Лингвистическая стегосистема

2.5 Графические стегосистемы

2.6 Идеальные и почти идеальные стегосистемы

2.7 Модельно-обусловленные стегосистемы

2.8 Стегосистемы на основе адаптивного квантования

2.9 Стегосистемы на основе адаптивного квантования после двойного Jpeg-сжатия

2.10 Стегосистемы с сохранением статистики

2.11 Стегосистема HUGO

2.12 Выводы по главе

Глава 3. Стегосистемы на основе каналов с шумом

3.1 СГС на основе двоичного симметричного канала без памяти

3.2 Стегосистемы на основе канала с гауссовским шумом

3.3 Пропускная способность для стегосистем основанных на каналах с шумом

3.4 Выводы по главе

Глава 4. Разработка необнаруживаемых стегосистем с рассредоточением во времени для каналов с шумом

4.1 Стегосистема в каналах с шумом с информированным декодером

4.2 Компьютерное моделирование стегосистемы с рассредоточением во времени

4.2.1 Вложение скрытого сообщения в покрывающий аудиообъект и последующее прохождение стегосообщения по каналу с гауссовским шумом

4.2.2 Моделирование извлечения скрытой информации на стороне легитимного пользователя

4.3 Стегосистема с рассредоточением во времени, на основе каналов с шумом, с использованием корректирующих кодов

4.4 Выводы по главе

Глава 5. Стегосистема в каналах с шумом при использовании «слепого» декодера127

5.1 Разработка стегосистем при использовании информированного кодера и «слепого» декодера

5.2 Моделирование стегосистемы на основе механизма QPD

5.3 Секретность стегосистем, основанных на каналах с шумом, при использовании информированного кодера, QPD метода и «слепого» декодера136

5.4 Моделирование извлечения скрытой информации из стегосистемы на основе механизма QPD

5.5 Применение стегосистем со «слепым» декодером в диктофонных аудиозаписях

5.6 Применение стегосистем со «слепым» декодером в IP-телефонии

5.7 Выводы по главе

Заключение

Список сокращений и условных обозначений

Список литературы

Приложение А. Справки о внедрении результатов диссертационной работы

Приложение Б. Код программной реализации «вложение»

Приложение В. Код программной реализации «извлечение»

Рекомендованный список диссертаций по специальности «Системы, сети и устройства телекоммуникаций», 05.12.13 шифр ВАК

Введение диссертации (часть автореферата) на тему «Разработка необнаруживаемых стегосистем для каналов с шумом»

ВВЕДЕНИЕ

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

Одним из наиболее перспективных и востребованных направлений в условиях развития компьютерных технологий современности, является внедрение скрытой информации, в некоторый не привлекающий внимание покрывающий объект (ПО). ПО должно оставаться хорошего качества и присутствие дополнительной информации в ПО не может быть обнаружено, такие файлы называются стегосигналами. Далее они хранятся в открытом доступе, либо передаются легитимному пользователю по незащищенным каналам связи. Для вложения и извлечения скрытной информации в различные файлы используются так называемые стегосистемы (СГС). Параллельно с разработкой СГС развивается направление атак на СГС, которыми занимаются так называемые стегоаналитики или атакующие, которые хотят обнаружить скрытую передаваемую информацию. Задача передающей стороны состоит в том, чтобы стегоаналитик, даже в случае перехвата файла с вложением, не догадался о присутствии в ней скрытого сообщения.

Проблемам разработки и исследования различных видов СГС посвящены работы J. Fridrich, G.S. Simmons, T.Filler, L. Perez-Freire, A. Wyner, L. Fearnley, R. Anderson, F. Petitcolas, C.Cachin, В.И. Коржика, И.В. Котенко, Б.Я. Рябко, В.Г. Грибунина, И.Н. Окова, Г.Ф. Конаховича, И.М. Мараковой и многих других ученых.

Однако до сегодняшнего дня, за исключением работы научного руководителя, не имеется сведений о разработках СГС на основе канала с шумом, а так как естественный шум существует во многих системах связи, представляет интерес создать СГС на основе каналов с шумом. Кроме того, в этом случае есть

надежда создать необнаруживаемую СГС даже при использовании наилучших статистических методов ее обнаружения.

Область исследований. Область проведенных в диссертационной работе исследований соответствует десятому пункту паспорта научной специальности: «Исследование и разработка новых методов защиты информации и обеспечение информационной безопасности в сетях, системах и устройствах телекоммуникаций».

Объект исследования. Объектом исследований в диссертационной работе являются СГС на основе каналов с шумом при использовании информированного и «слепого» декодеров, обеспечивающих необнаруживаемость таких СГС.

Предмет исследования. Предметом исследования в диссертационной работе являются методы вложения и извлечения информации для СГС на основе каналов с шумом при использовании информированного и «слепого» декодеров.

Целью работы является повышение эффективности СГС относительно необнаруживаемости при условии присутствия канала с шумом.

Для достижения поставленной цели в диссертационной работе производится решение следующих частных задач:

- нахождение верхней границы пропускной способности для СГС в каналах с шумом;

- разработка метода вложения и извлечения информации в стегосистемы с рассредоточением во времени (СРВ) на основе каналов с шумом, при использовании информированного декодера, обеспечивающего вероятность ошибки обнаружения нелегитимным пользователем стремящейся к случайному угадыванию и достоверное извлечение информации легальным пользователем;

- разработка метода вложения и извлечения информации в СРВ на основе каналов с шумом, при использовании информированного кодера и «слепого» декодера, обеспечивающего секретность (необнаруживаемость) СГС при использовании наилучших методов стегоанализа и надежное извлечение бит информации легальным пользователем.

Методы исследований. В ходе исследований применялись методы теории вероятности, теории помехоустойчивого кодирования, теории информации, математической статистики, компьютерного имитационного моделирования. При моделировании и разработке программ использовались языки программирования С++, 8а1аЬ.

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

Научная новизна присутствует в следующих результатах работы:

- выведена верхняя граница пропускной способности для СГС в каналах с шумом;

- предложен метод вложения и извлечения информации для СРВ на основе каналов с шумом при использовании информированного декодера, обеспечивающий достаточный уровень секретности, при использовании подоптимального и оптимального решающего правила обнаружения, и достоверное извлечение информации легальным пользователем;

- предложен метод вложения и извлечения информации для СРВ в каналах с шумом при использовании «слепого» декодера, обеспечивающий секретность СРВ при использовании наилучших статистических методов обнаружения, при достоверном извлечении информации.

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

Теоретическая и практическая значимость работы.

1. Получены потенциальные возможности использования СРВ для каналов с шумом для случаев использования информированного и «слепого» декодеров.

2. Материалы исследований диссертационной работы могут быть использованы для построения СГС, близких к идеальным, скрытных для ситуаций, которые предполагают наличие и использование каналов с естественным шумом, такие как IP-телефония, диктофонные записи, Skype.

Внедрение результатов исследований. Результаты исследований внедрены в ЗАО «Эврика», что подтверждено соответствующей справкой о внедрении. Результаты работы используются в учебном курсе «Основы стеганографии», кафедры «Защищенные системы связи» СПбГУТ им. проф. М.А. Бонч-Бруевича, что подтверждено соответствующей справкой о внедрении (см. приложение А).

Апробация работы. Основные результаты диссертационной работы докладывались, обсуждались и были одобрены на 4 научных конференциях 3 из которых являются международными:

- международной мульти-конференции по компьютерным наукам и информационным технологиям (Proceedings of the International Multiconference on Computer Science and Information Technology. 2010) [1], (доклад занял первое место, с вручением соответствующего диплома),

- 18-я Международная конференция по цифровой обработки сигналов (18th International Conference on Digital Signal Processing. 2013) [2].

- международная научно-техническая и научно-методическая конференция «Актуальные проблемы инфотелекоммуникаций в науке и образовании». № 64. 20-24 февраля 2012 [3],

Публикации. На тему диссертационной работы опубликовано 8 печатных работ: 2 работы напечатаны в изданиях, включенных в перечень ВАК РФ [4, 5], 3 - опубликованные материалы международных конференций: международной научно-технической и научно-методической конференции «Актуальные проблемы инфотелекоммуникаций в науке и образовании», № 64 [3], международной мульти конференции по компьютерным наукам и информационным технологиям (IMCSIT 2010) [1] и 18-ой Международной конференции по цифровой обработки сигналов (DSP 2013) [2]. Так же 2 статьи на английском языке опубликованы в зарубежных международных отраслевых

журналах: «International Journal of Computer Science and Applications» [6] и «Journal of Information Hiding and Multimedia Signal Processing» [7], 1 работа опубликована в журнале «Труды учебных заведений связи» [8].

Основные положения, выносимые на защиту.

1. Вывод верхней границы пропускной способности для стегосистем в каналах с шумом.

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

3. Метод вложения и извлечения информации для стегосистем с рассредоточением во времени в каналах с шумом, при использовании «слепого» декодера, обеспечивающий необнаруживаемость данной стегосистемы и надежное извлечение бит информации.

Объём и структура работы. Диссертационная работа состоит из введения, пяти глав, заключения, списка сокращений и условных обозначений, списка литературы и приложений. Работа содержит 176 страницы, включая 46 рисунков, 18 таблиц. В списке литературы 75 наименований.

В первой главе рассматривается назначение СГС и их основные характеристики. Вводятся основные понятия стеганографии, даны общие положения по назначению СГС. Приведены основные задачи СГС и методы их классификации. Представлена обобщенная модель СГС.

Представлены виды атак на СГС. Описаны примеры использования СГС в бизнес сообществах и в государственных структурах.

Вторая глава посвящена обзору способов построения различных типов существующих стегосистем различной степени обнаруживаемости.

Из проведённого анализа сделан вывод, что если есть необходимость в гарантированно секретной СГС, то известные на сегодняшний день методы вложения скрытной информации не дают положительного результата. Для выхода из этой ситуации предлагается найти случаи, когда сигналы передаются по

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

В третьей главе приведены СГС на основе каналов с шумом. Рассмотрена и проанализирована СГС на основе двоичного симметричного канала без памяти. Рассмотрены и выведены теоретические формулы для СГС на основе канала с гауссовским шумом. Также приведены результаты анализа практического использования данной СГС. Произведен анализ пропускной способности для СГС, основанных на каналах с шумом при использовании информированного декодера. Выведена верхняя граница пропускной способности для СГС, основанных на каналах с шумом.

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

В пятой главе предложены СРВ в каналах с шумом на основе использования «слепого» декодера и информированного кодера. Выведены соотношения для оценки вероятности ошибки извлечения информации легальным пользователем. Представлен алгоритм по вложению информации в СРВ и ее извлечению. С помощью компьютерного моделирования произведена оптимизация параметров для построения необнаруживаемой СРВ при использовании слепого декодера. Показано возможное практическое применение данной СРВ для диктофонных аудиозаписей и 1Р-телефонии.

В заключении диссертационной работы произведено обобщение полученных научных результатов.

Приложения содержат справки о внедрении результатов диссертационной работы и исходный код программ, с помощью которых осуществлялось моделирование предложенных СГС.

ГЛАВА 1. НАЗНАЧЕНИЕ СТЕГОСНСТЕМ И ИХ ОСНОВНЫЕ

ХАРАКТЕРИСТИКИ

В связи с широким распространением цифрового мультимедиа контента в масштабах сети Интернет, концепция скрытой передачи информации внутри подобного типа трафика приобретает особенную прикладную ценность. Одним из наиболее перспективных и востребованных направлений в условиях развития компьютерных технологий современности, является внедрение скрытой информации, предназначенной для доступа только легитимным пользователям, в цифровые аудио данные. В настоящее время актуальна проблема передачи информации ограниченного распространения по незащищенным каналам связи. При этом необходимо, чтобы такая информация, передаваемая от одного абонента другому, не стала доступна третьему лицу. Для решения задач информационной безопасности недостаточно сделать информацию недоступной для нарушителя; зачастую требуется скрыть сам факт ее передачи или хранения. Этим и занимается наука стеганография.

Стеганография - это некий термин для определения скрытного метода передачи или хранения секретной информации. Основная идея которой, заключается во вложении секретной информации в невинный объект, открыто хранящийся на компьютере, либо передающийся по некоторому открытому каналу передачи данных и предназначенный только для конкретного пользователя. [9,10]

Само слово «стеганография» (steganography) происходит от греческих слов siéganos («oteyavo^») , которое означает «скрытый», и graphy («урасро)»), которое означает «пишу», а в совокупности все вместе переводится как «тайнопись». Другими словами, стеганография - это технология скрытой передачи данных, в которой секретен сам факт существования дополнительной информации. Другой наукой, также означающей «тайнопись» и берущей свои корни из греческого языка, является криптография. Криптография - это наука о методах обеспечения конфиденциальности (невозможности прочтения информации посторонним) и

аутентичности (целостности и подлинности авторства, а также невозможности отказа от авторства) информации.

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

Назначение и цели использования стеганографии заключаются в следующих основных моментах [11]:

- альтернатива криптографии при ее запрещении или ограничении уровня стойкости;

- скрытие пользователей, нуждающихся в хранении и передаче секретной информации;

- передача секретной информации через транзитных пользователей;

- передача секретных сигналов и команд определенным пользователям сети Internet;

- отслеживание распространителей информации.

Стеганография (в англоязычной литературе «Information hiding (IH)») — это семейство методов, при помощи которых некоторые дополнительные сведения погружаются в основной, покрывающий объект (ПО), при сохранении хорошего качества ПО.

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

Типичные ПО:

- неподвижные изображения (картины, рисунки, географические карты, скриншоты программ, графические представления текста и схем, изображения символов, чертежи, фотографии форматов JPEG, PNG и др.);

- подвижные изображения (видеозаписи различных форматов);

- аудио файлы (звукозаписи форматов WAV, AIFF, АРЕ, FLAC, МРЗ, OGG и

др-);

- речь;

- печатный смысловой текст;

- Интернет - протоколы;

- программы для компьютеров.

В настоящее время можно выделить два тесно связанных между собой и имеющих общие технические средства приложений стеганографии: собственно стеганография (сокрытие данных (сообщений)) и цифровые «водяные» знаки (ЦВЗ).

На рисунке 1.1 иллюстрируется области применения и разделения стеганографии. [12]

Рисунок 1.1 - Иллюстрация разделения стеганографии на различные области

применения

ЦВЗ используются для защиты авторских или имущественных прав относительно к цифровым изображениям, фотографиям или другим оцифрованным произведениям искусства. Основными требованиями, которые предъявляются к таким встроенным данным, являются надежность и устойчивость к искажениям.

ЦВЗ имеют небольшой объем, однако, для удовлетворения указанных выше требований, для их встраивания используются более сложные методы, чем для встраивания просто сообщений или заголовков.

При этом в задачу стеганографии входит погрузить дополнительное сообщение в невинный ПО так, чтобы сам факт его присутствия в нем нельзя было бы обнаружить нелегитимным пользователям, тогда как задача ЦВЗ состоит в том, чтобы погрузить дополнительные сведения (обычно идентификационный код автора) в ПО таким образом, чтобы его нельзя было бы удалить, не ухудшив существенно качество ПО. Факт такого вложения может и обнаруживаться нелегитимными пользователями. [10]

1.1 Основная задача и классификации стегосистем

Стегосистема или стеганографическая система (СГС) - это совокупность методов и средств, которые используются для формирования скрытого канала передачи информации.

На рисунке 1.2 представлена обобщенная модель СГС.[13]

Рисунок 1.2 - Модель СГС

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

Примеры вкладываемой информации [11]:

- изображение;

- текстовые сообщения и данные;

- речевые сообщения.

Стегосообщение, стегосигнал, стегонограмма или просто стего — ПО, содержащее вложенное сообщение.

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

- Стегоключ или просто ключ - секретный ключ, необходимый для скрытия информации. В зависимости от количества уровней защиты (например, встраивание предварительно зашифрованного сообщения) в СГС может быть один или несколько стегоключей. Ключи в СГС бывают двух типов: закрытые (секретные) и открытые [14]. Если СГС использует секретный ключ, то он должен быть создан или до начала обмена сообщениями, или передан по защищенному каналу связи. СГС, использующая открытый ключ, должна быть устроена таким образом, чтобы было невозможно получить из него закрытый ключ. В этом случае есть возможность передавать открытый ключ по незащищённому каналу связи.

Предполагается, что нелегитимный пользователь имеет полное представление о СГС и деталях реализации. Единственной информацией, неизвестной потенциальному противнику, является стегоключ, с помощью которого легитимный пользователь может установить факт присутствия СГС и содержания скрытого сообщения. (Принцип Кирхгоффа для 1Н [15]). Нелегитимный пользователь, который пытается нарушить выполнение задачи 1Н, называется атакующим или стегоаналитиком, а его действия атакой на стегосистему. Задача атакующего заключается в определении, не содержится ли в файле, хранящегося на компьютере либо передающегося от отправителя к получателю, некая информация, скрытая в ПО. [10]

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

Нелегитимный пользователь не должен иметь технических и прочих преимуществ в распознавании или раскрытии содержания секретно вложенной информации.[14]

СГС классифицируются на несколько основных категорий по назначению и типу [13]:

а) Для легитимных пользователей:

- с известным ПО на легальном декодере (информированный декодер),

- с неизвестным ПО на легальном декодере {«слепой» декодер),

- с использованием ПО в легальном кодере (информированный кодер).

б) Для "атакующих":

- с известным стегосигналом (выполняется всегда),

- с известным сообщением,

- с выбранным сообщением,

- с известным (или выбранным ПО),

- для каналов с шумом.

Одним из важнейших параметров стегосистемы является ее эффективность. Критерии эффективности СГС:

- вероятность пропуска стегосигнала (Рт );

- вероятность ложного обнаружения стегосигнала (Р/а);

- вероятность ошибки извлечения бита информации легитимными пользователями (Я );

- качество ПО после вложения (отношения мощности сигнала к мощности шума (тили более сложные, в том числе экспертные, оценки).

- Скорость вложения, т.е. число бит вложенного сообщения на один отсчет ПО (Я).

Также СГС, в некоторых случаях, должна быть так же и робастной. СГС называется робастной, если секретное сообщение устойчиво выделяется при всех естественных или преднамеренных преобразованиях СГС, которые не искажают существенно ПО. [13]

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

1.2 Атаки на стегосистемы

Стегосигнал, как и любой другой сигнал, в процессе прохождения пути от отправителя к получателю, может быть подвергнут некоторым нежелательным изменениям. Выделяют два основных типа преобразования стегосигналов [13]: естественные преобразования и преднамеренные преобразования. К естественным преобразованиям относятся: фильтрация, сжатие, масштабирование, передача по каналам с шумом и т.д. А преднамеренные преобразования - это атаки.

Существует множество целей, которые могут преследовать злоумышленники во время атак.

Представим основные виды атак на стегосистемы [16].

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

2. Нахождение объема секретного вложения. В данном случае, атакующий стремится выяснить объем скрытой информации.

3. Чтение стегосообщения. Атакующий стремится не просто узнать о факте наличия вложения и его объема, но и извлечь скрытую информацию.

4. Удаление стегосигнала без значительного ухудшения качества ПО и даже при необнаружении стегосигнала. Стегоаналитик, даже точно не зная, является ли данный файл стегосигналом, стремится преобразовать файл так, чтобы ПО

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

Кроме того, возможны разнообразные комбинации перечисленных выше атак. [17]

1.3 Примеры использования стегосистем

Существует большое множество примеров использования стеганографии [9, 10, 11, 18, 19], это использование покрытых воском дощечек, вареных яиц, спичечных коробков, а также голова раба (голову обривали, делали на голове татуировку секретного сообщения, отращивали волосы и направляли раба через территорию противника к «своим», а там снова обривали и читали сообщение) и индийская Кама-сутра, где под номером 45 значится секретное письмо. В прошлом веке широко использовались так называемые симпатические чернила, невидимые при обычных условиях. Скрытую информацию размещали в определенные буквы неприметных словосочетаний, передавали за счет внесения в текст незначительных стилистических, орфографических или пунктуационных погрешностей. С изобретением фотографии появилась технология микрофотоснимков, успешно применяемая Германией во время второй мировой войны. Крапление карт, а также язык жестов, применяемые карточными шулерами - это тоже пример стеганографии.

Во время Второй мировой войны правительством США придавалось большое значение борьбе против тайных методов передачи информации, вводились ограничения на почтовые отправления - не принимались письма и телеграммы, содержащие кроссворды, ходы шахматных партий, поручения о вручении цветов с указанием их времени и вида, у пересылаемых ручных часов переводились стрелки, специальные отряды цензоров занимались перефразированием телеграмм без изменения их смысла. [11]

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

Например [20], один из популярных фотосервисов в интернете - Flickr, при покупке «профессионального» пакета предоставляет неограниченное дисковое пространство для хранения фотографий. Один из обладателей «профессионального» пакета решил попробовать, насколько реально с помощью стеганографии прятать файлы внутри фотоколлекций в системе Flickr.

Похожие диссертационные работы по специальности «Системы, сети и устройства телекоммуникаций», 05.12.13 шифр ВАК

Список литературы диссертационного исследования кандидат наук Небаева, Ксения Андреевна, 2014 год

СПИСОК ЛИТЕРАТУРЫ

1. Korzhik, V. Undetectable spread-time stegosystem based on noisy channels / V. Korzhik, G. M. Luna, K. Loban, I. M. Begoc // Proc. of the International Multiconference on Computer Science and Information Technology. - 2010. - P. 723728.

2. Korzhik, V. A stegosystem with blind decoder based on a noisy channel / V. Korzhik, G. Morales-Luna, K. Nebaeva, M. Alekseevs // 18th International Conference, Digital Signal Processing , 2013. - P. 1-5.

3. Коржик, В.И. Стегосистема для каналов с шумом при использовании «слепого» декодера / В.И. Коржик, К. Небаева, М. Алексеев // Международная научно-техническая и научно-методическая конференция «Актуальные проблемы инфотелекоммуникаций в науке и образовании». № 64.: материалы конф. - СПб.: Издательство СПбГУТ, 2012. - С. 238-240.

4. Коржик, В.И. Использование модели канала с шумом для построения стегосистемы / В.И. Коржик, К.А. Небаева, М. Алексееве // Телекоммуникации. -2013. - Спецвыпуск. - С. 33-36.

5. Небаева, К.А. Стегосистемы на основе каналов с шумом при использовании слепого декодера / К.А. Небаева // В мире научных открытий. - 2013. -№10.1(46).-С. 118-132.

6. Korzhik, V. Stegosystems based on noisy channels / V. Korzhik, G. Morales-Luna, K. Loban // International Journal of Computer Science and Applications. - 2011. -Vol. 8№. l.-P. 1-13.

7. Korzhik, V. The capacity of a stegosystem for the noisy attack channel / V. Korzhik, G. Morales-Luna, K. Nebaeva // Journal of Information Hiding and Multimedia Signal Processing. - 2012. - vol. 3, № 2. - P. 205-211.

8. Коржик, В.И. Новая стегосистема для каналов с шумом / В.И. Коржик, К.А. Лобан // Труды учебных заведений связи. - 2009. - №181. - С. 23-32.

9. Simmons, G.J. The prisoner's problem and the subliminal channel / G.J. Simmons // Advaces in Criptology, Cripto'83. - Santa-Barbara, CA, 1983. -P. 51-67.

10. Fridrich, J. Steganography in Digital Media: Principles, Algoritms and Applications / J. Fridrich. - 2010. - 441 p.

11. Грибунин, В.Г. Цифровая стеганография / В.Г. Грибунин, И.Н. Оков, И.В. Туринцев. - М.: Солон-Пресс, 2002. - 272 с.

12. Петраков, А.В. Защитные информационные технологии аудиовидеоэлетросвязи. Учебное пособие. / А.В. Петраков. - М.: Энергоатомиздат, 2010. - 616 с.

13. Коржик, В.И. Курс лекций по стеганографии. [Электронный ресурс] / В.И. Коржик. - Электрон, дан. - Режим доступа: http://www2.mts-sut.ru/lcafedr/ibts/doc/korskik_lections20091220_sg.rar, свободный. -Загл. с экрана.

14. Коржик, В. И. Основы криптографии: учеб. пособие // В.И. Коржик, В.П. Просихин. - СПб.: Линк, 2008. - 256 с.

15. Kerckhoffs, A. La cryptographie militaire // Journal des sciences militaries. — IX. - 1883. - P. 5-38. - Feb. 1883. - P. 161-191.

16. Конахович, Г.Ф. Компьютерная стеганография. Теория и практика / Г.Ф. Конахович, А.Ю. Пузыренко. - МК-Пресс, 2006. - 288 с.

17. Основи комп'ютерно1 стеганографн: Навчальний поыбник для студент!в i асшранив /В.О. Хорошко, О.Д. Азаров, М.Е. Шелест, Ю.Е. Яремчук. -Вшниця: ИДТУ, 2003. - 143 с.

18. Бабаш, А.В. Зарождение криптографии. Материалы к лекции по теме «Криптография в древние времена» [Электронный ресурс] / А.В. Бабаш. -Электрон. дан. - 2003. - Режим доступа: http://cccp.narod.ru/work/book/kgb/babash_01.html, свободный. - Загл. с экрана.

19. Жельников, В. Криптография от папируса до компьютера / В. Жельников. -М.: Изд-во «ABF», 1996. - 335 с.

20. Стеганография на публичных фотосайтах [Электронный ресурс] / Деловая пресса. - Электрон. дан. - 2005.

http://www.businesspress.ru/newspaper/article_mld_21961_ald_350296.html, свободный. - Загл. с экрана.

21. Betancourt, S.R. Steganography: A New Age of Terrorism [Электронный ресурс] / S.R. Betancourt. - GSEC Practical Version, SANS Institute, - Электрон, дан. - 2004. - Режим доступа: http://www.giac.org/practical/GSEC/Stephanie_Betancourt_GSEC.pdf, свободный. -Системные требования: Acrobat Reader. - Загл. с экрана.

22. Томас, T.JI. Терроризм и интернет: проблемы взаимодействия [Электронный ресурс] / T.JI. Томас. - Электрон, дан. - 2001. - Режим доступа: http://dpr.ru/pravo/pravo_l_9.htm, свободный. - Загл. с экрана.

23. Russian spy case reveals old espionage tricks [Электронный ресурс] / The Washington Post. - Электрон, дан. - 2010. - http://voices.washingtonpost.com/spy-talk/2010/06/russian_spy_case_shows_ things.html, свободный. - Загл. с экрана.

24. Jesse D.D. Tactical Means, Strategic Ends: A1 Qaeda's Use ofof Denial and Deception / D.D. Jesse // Terrorism and Political violence. - The Fletcher School. Tufts University. Medford. Massachusetts. USA, 2006. - №18. - P. 367-388.

25. Лебедев, M.A. Методы противодействия использованию стегосистем в интересах террористических и криминальных групп / М.А. Лебедев // 65-ая научно-техническая конференция студентов, аспирантов и молодых специалистов СПбГУТ. - СПб. : СПбГУТ, 2011. - С. 65-66.

26. Рябко, Б. Я. Основы современной криптографии и стеганографии / Б. Я. Рябко, А. Н. Фионов. - 2-е изд. - М.: Горячая линия - Телеком, 2013. - 232 с.

27. Westfeld, A. Attacks on Steganography Systems. Breaking the Steganographic Utilities EzStego, Jsteg, Steganos and S-Tools and some Lessons Learned / A. Westfeld, A. Pfitzmann // LNCS 1765. - 2000. - P. 61-76.

28. Dumitresch, S. Detection at LSB Steganography via Sample Pair Analysis / S. Dumitresch, Xiaolin Wu, Zhe Wang // LNCS 2578. -2003. - P. 355-372.

29. Герлинг Е.Ю. Исследование эффективности методов обнаружения стегосистем, использующих вложение в наименее значащие биты / Е.Ю. Герлинг // Информационные системы и технологии. - 2011. - № 4. - С. 137-144.

30. Westfeld, A. F5-A Steganographic Algorithm: High Capacity Despite Better Steganalysis / A. Westfeld // Proc. 4th International Workshop on Information Hiding, Springer-Verlag. - 2001. - P. 289-302.

31. Исследование возможностей выявления скрытых сообщений в информационных ресурсов сети интернет: отчет о НИР «Ярус-СГ» / В.И. Коржик, Р.В. Чесноков, Е.Ю. Герлинг. - СПб: Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича, 2010. - 181 с.

32. Korzhik, V. On the existence of perfect stegosystems / V. Korzhik, G. M. Luna, and M. H. Lee // Proc. of 4th International Workshop on Information Hiding. -2005. - P. 30-38.

33. Герлинг, Е.Ю. Исследование эффективности методов обнаружения стегосистем, использующих широкополосное вложение // Телекоммуникации. - 2014. - №1. - С. 6-12.

34. Maes, М. Twin Peaks: The Histogram Attack to Fixed Depth Image Watermarking / M. Maes// LNCS 1525. - 1998. - P. 290-305.

35. Bolshakov, S. A method of linguistic steganography based on collocation-proven synonymy / S. Bolshakov // International Workshop on Information Hiding 2004. - LNCS vol. 3200. - P. 13-23.

36. Atallah, M.J. Natural Language Watermarking and Tamperproofing / M.J. Atallah, V. Raskin, C. F. Hempelmann, et al. // Information Hiding Lecture Notes in Computer Science. - 2003. - vol. 2578. - P. 196-212.

37. Brassil, J. Watermarking Document Images with Bounding Box Expansion / J. Brassil, L.O. Gorman // Proc. First Int. Workshop on IH. - 1996. - P. 227-235.

38. Коржик, В.И. Обнаружение стегосистемы, основанной на погружении скрытых сообщений в шумы сканера / В.И. Коржик, П. Догиль // Международная научно-техническая и научно-методическая конференция «Актуальные проблемы инфотелекоммуникаций в науке и образовании». № 64. 20-24 февраля 2012: материалы. - СПб.: Издательство СПбГУТ, 2012. - С. 227-228.

39. Cover, Т. Elements of Information Theory / Т. Cover, J. Thomas // John Wiley and Sons, Inc. - 1991. - 563 p.

40. Cachin, С. An information-theoretic model for steganography. / C. Cachin // International Workshop on Information Hiding. Lecture Notes in Computer Science. -Springer, 1998. - P. 306-318.

41. Salee, P. Model - based steganography / P. Salee // LNCS 2939. - 2004. -P. 154-167.

42. Wang, J. Steganalysis of block-structured stegotext / J. Wang, P. Moulin // Security, Steganography and Watermarking of Multimedia Contents, SPIE Proc. -2004.- vol. 5306. - P. 477—488.

43. Солодовщиков, А.Ю. Исследование метода Карунена-Лоэва /

A.Ю. Солодовщиков, А.К. Платонов // Предпринты ИПМ. - 2006. - 019. - 29 с.

44. Давыдкин, А.В. Исследовангие арифметических меодов в применении их для построения модельно-обусловленных стегосистем / А.В. Давыдкин // 63 Научно-техническая конференция студентов, аспирантов и молодых специалистов: материалы конф. - СПб.: ГОУВПО СПбГУТ, 2009. - С. 55-56.

45. Fridrich, J. Perturbed Quantization Steganography / J. Fridrich, M. Goljan, D. Soukal // ACM Multimedia System Journal. - 2005. - 11(2). - P. 98-107.

46. Лавров, В.Л. Разработка стегосистемы с адаптивным вложением информации в изображения после их двойного сжатия в формате JPEG / В.Л. Лавров // 63 Научно-техническая конференция студентов, аспирантов и молодых специалистов: материалы конф. - СПб.: ГОУВПО СПбГУТ, 2009. - С. 56-57.

47. Fridrich, J. Writing on Wet Paper / J. Fridrich, M. Goljan, P.Lisonek, D. Soukal // IEEE Transactions on Signal Processing. - 2005. -vol. 53, № 10. - P. 39233935.

48. Costa, M. H. M. Writing on dirty paper / M. H. M. Costa // IEEE Trans. Information Theory. - 1983. - vol. 29, № 3. - P. 439-441.

49. Коржик, В.И. Разработка расширенного комплекса функционалов для обнаружения вложений с использованием «слепого» стегоанализа на SVM /

B.И. Коржик, Д.В. Цветков // Международная научно-техническая и научно-методическая конференция «Актуальные проблемы инфотелекоммуникаций в

науке и образовании». № 64. 20-24 февраля 2012: материалы. - СПб.: Издательство СПбГУТ, 2012. - С. 233-234.

50. Ryabko, В. Asymptotically optimal perfect steganography systems / В. Ryabko, D. Ryabko // Problems Information Transmission. - 2009. - vol. 45, №2. -P. 184-190.

51. Труфанов, В.И. Исследование метода построения стегосистемы, сохраняющей статистику наименьших значащих бит после вложения дополнительной информации / В.И. Труфанов // 66-ая научно-техническая конференция студентов, аспирантов и молодых специалистов СПбГУТ. - СПб.: СПбГУТ, 2012. - С. 503-504.

52. Pevny, Т. Steganalysis by subtractive pixel adjacency matrix / T. Pevny, P. Bas, J. Fridrich // IEEE Transactions on Information Forensics and Security, June 2010. -5(2). - P. 215-224.

53. Pevny, T. Using high-dimensional image models to perform highly undetectable steganography // T. Pevny, T. Filler, P. Bas // Information Hiding, 12th International Workshop. - 2010. - LNCS 6387. - P. 161-177.

54. Barni, M. Watermarking systems engineering: enabling digital assets security and other applications / M. Barni, F. Bartolini // Signal processing and communications. - CRC Press, 2004. - 500 p.

55. Filler, T. Minimizing embedding impact in steganography using TrellisCoded Quantization / T. Filler, J. Fridrich, J. Judas // Proceedings SPIE, EI, Media Forensics and Security XII. - 2010. - P. 05-1-05-14.

56. Копылова, О. Д. Применение решетчатых кодов для минимизации искажений в стегосистеме для неподвижных изображений / О. Д. Копылова // 67-ая научно-техническая конференция студентов, аспирантов и молодых специалистов СПбГУТ. - СПб. : СПбГУТ, 2013. - С. 112-113.

57. Korjik, V. Stegosystems based on noisy channels / V. Korjik, M. H. Lee, G. M. Luna // Proc. of the 9th Spanish Meeting on Cryptology and Information Security. - 2006. - P. 379-387.

58. Cramer, H. Mathematical Methods of Statistics / H. Cramer // Princeton University Press, Princeton, NJ. - 1946. - 575 p.

59. Прокис, Д. Цифровая связь / Д. Прокис. - Пер. с англ. под ред. Д.Д. Кловского. - М.: Радио и связь, 2000. - 800 с.

60. Warden, V. D. Mathematische Statistik / V. D. Warden. - Springer-Verlay. - 1957. - 340 p.

61. Основы передачи голосовых данных по сетям IP / Д. Дэвидсон, Д. Питере, М. Бхатия и др. - Cisco Press, 2007. - 400 с.

62. Бронштейн, И.Н. Справочник по математике для инженеров и учащихся втузов / И.Н. Бронштейн, К.А.Семендяев. - Лань, 2009. - 608 с.

63. Shannon, С. Е. A mathematical theory of communication / С. E. Shannon // Bell System Technical Journal. - 1948. - vol. 27. - P. 379^23, 623-656.

64. Gallger, R. G. Information Theory and Reliable Communication / R. G. Gallger. - USA, Wiley, 1968. - 608 p.

65. Wyner, A. Wire-tap channel concept / A. Wyner // Bell System Technical Journal. - 1975. - vol. 54. - P. 1355-1387.

66. Шеннон, К. Работы по теории информации и кибернетике / К. Шеннон. - М.: Издательство иностранной литературы, 1963. - 829 с.

67. Wozencraft, J. M. Principles of Communication Engineering / M. Wozencraft, I. M. Jacobs. - USA, John Wiley & Sons, 1965. - 720 p.

68. Proakis, J. Digital Communications / J. Proakis. - USA: McGraw-Hill, 2001.-973 p.

69. Anderson, R. On the limits of steganography / R. Anderson, F. Petitcolas // IEEE Journal of Selected Areas in Communications. - 1998. - vol. 16, № 4. - P. 474— 481.

70. Fearnley, L. Square root laws of steganographic capacity in the context of existing models [Электронный ресурс] / L. Fearnley. - Электрон, дан. - 2009. -Режим доступа: http://www.cs.auckland.ac.nz/courses/compsci725s2c/ archive/termpapers/lfearnley.pdf, свободный. - Системные требования: Acrobat Reader. - Загл. с экрана.

71. Ker, A. D. The square root law of steganographic capacity / A. D. Ker, T. Pevny, J. Kodovsky, J. Fridrich // Proc. of the 10th ACM workshop on Multimedia and security. - 2008. - P. 107-116.

72. Papoulis, A. Probability, Random Variables, and Stochastic Processes / A. Papoulis. - USA: McGraw Hill, 1984. - 579 p.

73. Macwilliams, F. J. The Theory of Error-Correcting Codes / F. J. Macwilliams, N. J. A. Sloane. - Amsterdam: North-Holland, 1977. - 763 p.

74. Malvar, H. S. Improved spread spectrum: A new modulation technique for robust watermarking / H. S. Malvar, D. Florencio // IEEE Transactions on Signal Processing. - 2001. - vol. 51, № 4. - P. 898-905.

75. Perez-Freire, L. Spread-spectrum vs. quantization-based data hiding: Misconceptions and implications / L. Perez-Freire, O.Perez-Gonzalez // Proceedings of IS&T/SPIE 17th Annual Symposium: Electronic Imaging, Security, Steganography, and Watermarking of Multimedia Contents VII. - 2005. - P. 341-352.

ПРИЛОЖЕНИЕ А. Справки о внедрении результатов диссертационной

работы

УТВЕРЖДАЮ Председатель комиссии: Заместитель генерального директора

Небаевой Ксении Андреевны

Научно-техническая комиссия в составе: председателя — заместителя генерального директора ЗАО «ЭВРИКА» М.В. Шиленкова, членов комиссии - начальник управления РЭСС P.M. Путина, ведущий научный сотрудник отдела РСС А.Е. Ваулин составила настоящую справку о том, что при выполнении научно-исследовательской работы «Слогораздел-П-Э» использованы следующие результаты, полученные в диссертационной работе Небаевой К. А:

1 .Метод вложения и извлечения информации для стегосистемы, реализованной на основе канала с шумом.

2.0ценка необнаруживаемости стегосистемы на основе каналов с шумом.

Комиссия отмечает практическую значимость и новизну полученных результатов, которые имеют перспективы дальнейшего использования на предприятии "ЭВРИКА".

Начальник управления РЭСС Ведущий научный сотрудник, к.т.н

V

Р.М.Путина

Of"

А.Е. Ваулин

I 1

Министерство связи и массовых коммуникаций Российской Федерации

ФЕДЕРАЛЬНОЕ АГЕНТСТВО связи

федеральное государственное образовательное бюджетное учреждение высшего профессионального образования

"САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ им. проф. М.А. Бонч-Бруевича" (СШГУТ)

Юридический адрес: набережная реки Мойки, д 61,Санкт-Петербург, 191186

Почтовый адрес: пр. Большевиков, д. 22,

корп. 1, Санкт-Петербург, 193232 Тел.(812)3263156, Факс: (812) 3263159

E-mail: rector@sut.ru ИНН 7808004760 КПП 784001001 ОГРН 1027809197635 ОКПО 01179934

на №___от_

СПРАВКА

о внедрении результатов диссертационной работы Небаевой Ксении Андреевны на тему: «Разработка необнаруживаемых стегосистем для каналов с шумом» в учебный процесс федерального государственного образовательного бюджетного учреждения высшего профессионального образования «Санкт-Петербургскоий государственный университет телекоммуникации им. проф. М.А. Бонч-Бруевича»

Мы, нижеподписавшиеся, комиссия в составе:

председателя Просихина В.П., д-р техн. наук, профессор, заведующего

кафедрой «Защищенные системы связи» преподавателей: Коржика В. И., д-ра техн. наук, профессора, профессора

кафедры,

Яковлева В. А., д-ра техн. наук, профессора, профессора кафедры,

Красова А. В., канд. техн. наук, доцент, профессора кафедры,

удостоверяем, что результаты диссертационной работы Небаевой Ксении Андреевны внедрены в учебный процесс кафедры при разработке курса лекций с демонстрацией по дисциплине «Основы стеганографии» для бакалавров и магистров специальностей: «Защищенные системы связи», «Инфокоммуникационные технологии и системы связи», «Информационная безопасность» и иностранных студентов.

УТВЕРЖДАЮ

Первый проректор - проректор по учебной работе

д-р техн. наук, профессор

Обучающиеся осваивают данный курс с изучением предложенных Небаевой К.А. способов построения необнаруживаемых стегосистем для каналов с шумом.

Методика расчета параметров для стегосистем используется при разработке курсовой работы по дисциплине «Основы стеганографии».

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

Использование данных результатов диссертационной работы Небаевой К.А. в учебном процессе повышает уровень знаний в области защиты информации.

Председатель:

Члены комиссии:

А.В. Красов

ПРИЛОЖЕНИЕ Б. Код программной реализации «вложение»

Код программной реализации, предназначенной для вложения информации в аудио файл и прохождения этого сигнала по каналу с шумом

function varargout = steg_gaus(varargin) gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename,...

'gui_Singleton', gui_Singleton,... 'gui_OpeningFcn', @steg_gaus_OpeningFcn,... 'gui_OutputFcn', @steg_gaus_OutputFcn,... 'gui_LayoutFcn', [],... 'gui_Callback', []); if nargin & isstr(varargin{l})

gui_State.gui_Callback = str2func(varargin{l}); end

if nargout

varargout{l:nargout} = gui_mainfcn(gui_State, varargin{:}); else

gui_mainfcn(gui_State, varargin{:}); end

function steg_gaus_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject; guidata(hObject, handles);

function varargout = steg_gaus_OutputFcn(hObject, eventdata, handles) varargoutjl} = handles.output;

function WavPath_Callback(hObject, eventdata, handles) function WavPath_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function ButtonPlayl_Callback(hObject, eventdata, handles)

global glSignal;

global glFs;

global gllnitCount;

global glEndCount;

wavplay(glSignal (glInitCount:glEndCount),glFs,'async'); function s_n_Callback(hObject, eventdata, handles) function s_n_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function checkboxAllCount_Callback(hObject, eventdata, handles) function AS_WGN_Callback(hObject, eventdata, handles) function AS_WGN_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject, 'BackgroundColor', 'white'); end

function WGN_MES_Callback(hObject, eventdata, handles) function WGN_MES_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor', 'white1); end

function base_l_0_save_Callback(hObject, eventdata, handles) function base_l_0_save_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObj ect, 'BackgroundColor', 'white'); end

function base_l_0_load_Callback(hObject, eventdata, handles) function base_l_0_load_CreateFcn(hC)bject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

se t(hObj ect, 'BackgroundColor', 'white'); end

function WavMesPath_Callback(hObject, eventdata, handles) function WavMesPath_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function InputMes_Callback(hObject, eventdata, handles) function InputMes_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

se t(hObj ect, 'BackgroundCo lor', 'white'); end

function wav_capacity_Callback(hObject, eventdata, handles) function wav_capacity_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColorVwhite'); end

function NumEmbBits_Callback(hObject, eventdata, handles) function NumEmbBits_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function ButtonPlay_WGN_Callback(hObject, eventdata, handles)

global glGauss;

global glFs;

global gllnitCount;

global glEndCount;

wavplay(glGauss (glInitCount:glEndCount),glFs,'async');

function ButtonPlay_Message_Callback(hObject, eventdata, handles)

global glMessage;

global glFs;

global gllnitCount;

global glEndCount;

wavplay(glMessage (glInitCount:glEndCount),glFs,'async');

function btn_LoadOriginalFile_Callback(hObject, eventdata, handles)

h=open('fnc_LoadOriginalFile.fig');

handles_LOF=guihandles(h);

btn_methodOK_Callback

set(handles_LOF.btn_OK_LoadOriginalFile,'Callback',{@btn_OK_LoadOriginalFile_Callback ,handles,handles_LOF});

function btn_OK_LoadOriginalFile_Callback(src,evt,handles,handles_LOF) global glSignal; global glFs;

global glNumChannels; global glSiz; global gl_Info_WavPath; glSignal = 0; glFs = 0;

WavPath = get(handles_LOF.WavPath,'String"); gl_Info_WavPath = WavPath; [glSignal, glFs] = wavread(WavPath); glSiz = wavread(WavPath,'size'); glNumChannels = glSiz (2); delete(handles_LOF.win_LoadOriginalFile);

function btn_Set_InitEndCount_Callback(hObject, eventdata, handles)

h=open('fnc_Set_InitEndCount.fig');

handles_SIEC=guihandles(h);

btn_methodOK_Callback

set(handles_SIEC.btn_OK_Set_InitEndCount,'Callback', {@btn_OK_Set_InitEndCount_Callba ck,handles,handles_SIEC});

function btn_OK_Set_InitEndCount_Callback(src,evt,handles,handles_SIEC)

global gllnitCount;

global glEndCount;

global git;

global glSiz;

AllCount = get(handles_SIEC.checkboxAllCount,Value'); if (AllCount) gllnitCount = 1; glEndCount = glSiz (1); else

gllnitCount = str2double(get(handles_SIEC.InitCount,'String')); glEndCount = str2double(get(handles_SIEC.EndCount,'String')); end

git = glInitCount:glEndCount; delete(handles_SIEC.win_Set_InitEndCount);

function btn_PlotOriginalSignal_Callback(hObject, eventdata, handles)

global glSignal;

global gllnitCount;

global glEndCount;

global git;

axes(handles.axesWavSignal) plot(glt,glSignal(glInitCount:glEndCount))

function btn_GenBase_l_0_Callback (hObject, eventdata, handles)

h=open('fnc_GenBase.fig');

handles_GB=guihandles(h);

btn_methodOK_Callback

set(handles_GB.btn_OK_GenBase,'Callback',{@btn_OK_GenBase_Callback,handles,handles,

GB});

function btn_OK_GenBase_Callback(src,evt,handles,handles_GB) global glSignal;

base_l_0_save = get(handles_GB.base_l_0_save, 'String');

AS_WGN - str2double(get(handles_GB.AS_WGN,'String'));

WGN_MES = str2double(get(handles_GB.WGN_MES,'String'));

bs_mes_len = str2double(get(handles_GB.bs_mes_len,'String'));

EmbMethod = get(handles_GB.EmbMethod,Value');

EmbProb = str2double(get(handles_GB.EmbProb,'String'));

StegoKey = str2double(get(handles_GB.StegoKey,'String'));

Signal_Gauss_bs_mes_len = awgn(glSignal (l:bs_mes_len),AS_WGN,'measured');

glSignal (l:bs_mes_len);

Gauss_Mes_bs_mes_len = awgn(Gauss_bs_mes_len, WGN_MES,'measured', 1); Mesl = Gauss_Mes_bs_mes_len - Gauss_bs_mes_len; MesO = - Mesl;

save(base_l_0_save, 'AS_WGNVMesl','MesO', 'EmbProb', 'StegoKey', EmbMethod', '-v4'); delete(handles_GB.win_GenBase);

function MakeStatisticAnalysis_Callback(hObject, eventdata, handles)

h=open('StatAnalysis.fig');

handles_S A=guihandles(h);

set(handles_SA.wav_capacity, Value', 2);

btn_methodOK_Callback

set(handles_SA.win_StatAnalysis,'CreateFcn',{@win_StatAnalysis_CreateFcn,handles,handles

_SA});

set(handles_SA.btn_StartAnalysis,'Callback',{@btn_StartAnalysis_Callback,handles,handles_

SA});

function btn_StartAnalysis_Callback(src,evt,handles,handles_SA) WavPath = get(handles_SA.PathOriginalWav,'String); [Signal, Fs] = wavread(WavPath); base_l_0_load = get(handles_SA,PathBase_l_0,'String);

load('-mat', base_l_0_load, 'AS_WGN', 'Mesl','MesO', EmbProb', 'StegoKey',EmbMethod); bs_mes_len = length (Mesl);

wav_capacity_val = get(handles_SA.wav_capacity,'Value'); wav_capacity_list = str2double (get(handles_SA.wav_capacity,'String')); wav_capacity = wav_capacity_list (wav_capacity_val); WavMesPath = SvavFileMes.wav';%= get(handles.WavMesPath,'String'); NumEmbBits = str2double(get(handles_SA.NumEmbBits,'String)); Numlter = str2double(get(handles_SA.NumIteration,'String')); NumNonErrorlterations = 0; MaxNumErrosForlteration = 0; for Iter = 1 : Numlter for i = 1 : NumEmbBits if rand < .5

InputMes (i) = 0; else

InputMes (i) = 1; end end

Signal_Gauss = awgn(Signal,AS_WGN,'measured); Signal_Gauss_before_emb = Signal_Gauss; Signal_Gauss_Message = Signal_Gauss_before_emb; Gauss = Signal_Gauss - Signal; if (EmbMethod == 1)

for i = 1 : length (InputMes) if (InputMes (i) == 1)

Signal_Gauss_Message ((i-l)*bs_mes_len*2 + 1: (i-l)*bs_mes_len*2 + bs_mes_len) = Signal_Gauss_before_emb((i-l)*bs_mes_len*2 + 1: (i-l)*bs_mes_len*2 + bs_mes_len) + Mesl (l:bs_mes_len); % 1 else

Signal_Gauss_Message ((i-l)*bs_mes_len*2 + 1: (i-l)*bs_mes_len*2 + bs_mes_len) = Signal_Gauss_before_emb((i-l)*bs_mes_len*2 + 1: (i-l)*bs_mes_len*2 + bs_mes_len) + MesO (l:bs_mes_len); % 0 end end else

rand('state', StegoKey); delta = 0;

for i = 1 : length (InputMes) j = i; k = l;

if (InputMes (i) == 1) while k <= bs_mes_len if rand <= EmbProb

Signal_Gauss_Message ((i-l)*bs_mes_len*l + delta + j) = Signal_Gauss_before_emb((i-l)*bs_mes_len*l + delta + j) + Mesl (k); % 1 k = k + 1; end j =j +1; end

delta = delta + (j -1 - bs_mes_len); else while k <= bs_mes_len

if rand <= EmbProb

Signal_Gauss_Message ((i-l)*bs_mes_len*l + delta + j) Signal_Gauss_before_emb((i-l)*bs_mes_len*l + delta + j) + MesO (k); % 1 k = k+ 1; end j = j +1; end

delta = delta + (j - 1 - bs_mes_len); end

end end

Message = Signal_Gauss_Message - Signal_Gauss; wavwrite(Signal_Gauss_Message, Fs, wav_capacity, WavMesPath); [Signal_G_M, Fs] = wavread(WavMesPath); Gauss_Message_without_signal = Signal_G_M - Signal; if (EmbMethod == 1) for i = 1: NumEmbBits GetMes = 0; for j = 1 : bs_mes_len

GetMes = GetMes + Gauss_Message_without_signal ((i - l)*bs_mes_len*2 + j) * MesO (j); end

if (GetMes < 0)

EmbMes (i) = 1; else

EmbMes (i) = 0; end

end else

rand('state', StegoKey); delta = 0;

for i = 1 : NumEmbBits j = i; k=l;

GetMes = 0; while k <= bs_mes_len if rand <= EmbProb

GetMes = GetMes + Gauss_Message_without_signal ((i - l)*bs_mes_len*l + delta +

j) * MesO (k);

%glSignal_Gauss_Message ((i-l)*bs_mes_len*l + delta + j) = Signal_Gauss_before_emb((i-l)*bs_mes_len*l + delta + j) + Mesl (k); % 1 k = k + 1; else

gg = 5; end i = j + i; end

delta = delta + (j -1 - bs_mes_len); if (GetMes < 0)

EmbMes (i) = 1; else

EmbMes (i) = 0; end end end

TrueExtractBits = 0; for i = 1 : NumEmbBits if (EmbMes (i) == InputMes (i))

TrueExtractBits = TrueExtractBits + 1; end end

if (TrueExtractBits == NumEmbBits)

NumNonErrorlterations = NumNonErrorlterations + 1; end

if (NumEmbBits - TrueExtractBits > MaxNumErrosForlteration) MaxNumErrosForlteration = NumEmbBits - TrueExtractBits; end

ProbTrueExtract (Iter) = TrueExtractBits / NumEmbBits; end

SumProbTrueExtract = 0; for i = 1: Numlter

SumProbTrueExtract = SumProbTrueExtract + ProbTrueExtract (i); end

FinishProbTrueExtract = SumProbTrueExtract / Numlter;

set (handles_SA.NumNonErrorIterations, 'String', NumNonErrorlterations);

set (handles_SA.MaxNumErrosForIteration, 'String', MaxNumErrosForlteration);

set (handles_SA.ProbTrueExtraction, 'String', FinishProbTrueExtract);

function ShowSumSignals_Callback(hObject, eventdata, handles)

global glSignal_Gauss;

global glSignal_Gauss_Message; global glGauss_Message global gllnitCount; global glEndCount; global git

h=open('SumSignals.fig'); handles_SS=guihandles(h);

axes(handles_SS.axesWavSignal_Gauss_Message)

plot(glt,glSignal_Gauss_Message(glInitCount:glEndCount))

axes(handles_SS.axesWavSignal_Gauss)

plot(glt,glSignal_Gauss(glInitCount:glEndCount))

axes(handles_SS.axesGauss_Message)

plot(glt,glGauss_Message(glInitCount:glEndCount))

set(handles_SS.win_SumSignals,'CreateFcn',{@win_SumSignals_CreateFcn,handles,handles_

SS});

set(handles_SS.ButtonPlay_Signal_Gauss,'Callback',{@ButtonPlay_Signal_Gauss_Callback,h andles,handles_SS});

set(handles_SS.ButtonPlay_WavSignal_Gauss_Message,'Callback', {@ButtonPlay_WavSignal _Gauss_Message_Callback,handles,handles_SS});

set(handles_SS.ButtonPlay_Gauss_Message, 'Callback', {@ButtonPlay_Gauss_Message_Callba ck,handles,handles_SS});

function ButtonPlay_Signal_Gauss_Callback(src,evt,handles,handles_SS)

global glSignal_Gauss;

global glFs;

global gllnitCount;

global glEndCount;

wavplay(glSignal_Gauss (glInitCount:glEndCount),glFs,'async');

function ButtonPlay_WavSignal_Gauss_Message_Callback(src,evt,handles,handles_SS)

global glSignal_Gauss_Message;

global glFs;

global gllnitCount;

global glEndCount;

wavplay(glSignal_Gauss_Message(glInitCount:glEndCount) ,glFs,'async');

function ButtonPlay_Gauss_Message_Callback(src,evt,handles,handles_SS)

global glGauss_Message;

global glFs;

global gllnitCount;

global glEndCount;

wavplay(glGauss_Message(glInitCount:glEndCount) ,glFs,'async');

set(handles_GB.btn_OK_GenBase,'Callback',{@btn_OK_GenBase_Callback,handles,handles_

GB});

function btn_Steganalysis_Callback(hObject, eventdata, handles)

h=open('Steganalysis.fig');

handles_StegA=guihandles(h);

set(handles_StegA.btn_Start_Modeling,'Callback', {@btn_Start_Modeling_Callback,handles,ha ndles_StegA});

function btn_Start_Modeling_Callback(src,evt, handles, handles_StegA) ProbEmb = str2double(get(handles_StegA.ProbEmb,'String')); VarWGN = str2double(get(handles_StegA.VarWGN,'String'));

WGN_MES_Lin = str2double(get(handles_StegA.WGN_MES_Lin,'String'));

NumSignalCounts = str2double(get(handles_StegA.NumSignalCounts,'String1)); Numlterations = str2double(get(handles_StegA.Num!terations, 'String1));

randn('state', 0); mean_wgn = 0;

deviation_wgn = sqrt(VarWGN); IntegGauss_iter (l:NumIterations) = 0; for j = 1: Numerations

R = randn(NumSignalCounts,l);

Gauss (l:NumSignalCounts) = mean_wgn + deviation_wgn * R(l:NumSignalCounts); MeanHO = mean (loglO(ProbEmb * exp(Gauss.A2 / (2 * WGN_MES_Lin * VarWGN)) + 1 -ProbEmb));

DeviationHO = sqrt((mean ((loglO(ProbEmb * exp(Gauss.A2 / (2 * WGN_MES_Lin * VarWGN)) + 1 - ProbEmb)). A2) - MeanHO A2)); randn('state', 0);

VarWGN_Mes = VarWGN / WGN_MES_Lin + VarWGN; deviation_wgn_mes = sqrt(VarWGN_Mes); Usl (1 : NumSignalCounts) = 0; for i = 1 : NumSignalCounts if (rand <= ProbEmb)

Usl (i) = 1; end end

Gauss_NoMes (1 : NumSignalCounts) = mean_wgn + deviation_wgn * R( 1 :NumSignalCounts);

Gauss_Mes (1 : NumSignalCounts) = mean_wgn + deviation_wgn_mes * R(1 :NumSignal Counts);

Gauss_Mes_Usl = Gauss_Mes .* Usl; Gauss_NoMes_Usl = Gauss_NoMes .* (1 - Usl);

Gauss_Mes_Final (1 : NumSignalCounts) = Gauss_Mes_Usl (1 : NumSignalCounts) + Gauss_NoMes_Usl (1: NumSignalCounts);

MeanHl = mean (logl0(ProbEmb * exp(Gauss_Mes_Final.A2 / (2 * WGN_MES_Lin * VarWGN)) + 1 - ProbEmb));

ml_m0_2Sigma0 = (MeanHl - MeanHO) * sqrt (NumSignalCounts) / (2.0 * DeviationHO); IntegGauss_iter (j) = 1 - normcdf(ml_m0_2Sigma0,0,l); end

IntegGauss = mean (IntegGauss_iter);

set (handles_StegA.MeanH0, 'String', MeanHO);

set (handles_StegA.MeanHl, 'String', MeanHl);

set (handles_StegA.DeviationHO, 'String', DeviationHO);

set (handles_StegA.ml_mO_2SigmaO, 'String', ml_mO_2SigmaO);

set (handles_StegA.IntGauss, 'String', IntegGauss);

function btn_MessageEmb_Callback(hObject, eventdata, handles)

h=open('MessageEmb.fig');

handles_ME=guihandles(h);

set(handles_ME.btn SaveWavMes,'Callback',{@btn_SaveWavMes_Callback,handles,handles _ME});

set(handles_ME.wav_capacity, Value', 2);

function btn_SaveWavMes_Callback(src,evt,handles,handles_ME)

global glSignal;

global glGauss;

global glMessage;

global glSignal_Gauss;

global glSignal_Gauss_Message;

global glGauss_Message

global glFs; global gllnitCount; global glEndCount; global git;

global gllnfo_base_l_0; global glInfo_InputMes; global gl_Info_AS_WGN; global gl_Info_EmbMethod; global gl_InfoJEmbProb; global gl_Info_StegoKey; global gl_Info_bs_mes_len; global gl_Info_NumEmbBits; global gl_Info_wav_capacity; global gl_Info_WavMesPath;

base_l_0_load = get(handles_ME.base_l_0_load,'String1); gllnfo_base_l_0 = base_l_0_load;

load('-mat', base_l_0_load, 'AS_WGN', 'Mesl','MesO', EmbProb', 'StegoKey', EmbMethod'); gl_Info_AS_WGN = AS_WGN; gl_Info_EmbMethod = EmbMethod; if (gl_Info_EmbMethod == 2) gl_Info_EmbProb = EmbProb; gl_Info_StegoKey = StegoKey; else

gl_Info_EmbProb = 'Нет'; gl_Info_StegoKey = 'Нет'; end

glSignal_Gauss = awgn(glSignal,AS_WGN,'measured');

Signal_Gauss_before_emb = glSignal_Gauss;

glSignal_Gauss_Message = Signal_Gauss_before_emb;

glGauss = glSignal_Gauss - glSignal;

axes(handles.axesWGN)

plot(glt,glGauss(glInitCount:glEndCount))

InputMes = get(handles_ME.InputMes,'String');

glInfo_InputMes = InputMes;

bs_mes_len = length (Mesl);

gl_Info_bs_mes_len = bs_mes_len;

if (EmbMethod == 1)

for i = 1 : length (InputMes)

if (str2double (InputMes (i)) == 1)

glSignal_Gauss_Message ((i-l)*bs_mes_len*2 + 1: (i-l)*bs_mes_len*2 + bs_mes_len) = Signal_Gauss_before_emb((i-l)*bs_mes_len*2 + 1: (i-l)*bs_mes_len*2 + bs_mes_len) + Mesl (l:bs_mes_len);

else

glSignal_Gauss_Message ((i-l)*bs_mes_len*2 + 1: (i-l)*bs_mes_len*2 + bs_mes_len) = Signal_Gauss_before_emb((i-l)*bs_mes_len*2 + 1: (i-l)*bs_mes_lcn*2 + bs_mes_len) + MesO (l:bs_mes_len);

end end else

rand('state', StegoKey); delta = 0;

for i = 1 : length (InputMes)

j = i; k = 1;

if (str2double (InputMes (i)) == 1) while k <= bs_mes_len if rand <= EmbProb

glSignal_Gauss_Message ((i-l)*bs_mes_len*l + delta + j) = Signal_Gauss_before_emb((i-l)*bs_mes_len*l + delta + j) + Mesl (k); % 1 k = k + 1; end j = j + i; end

delta = delta + (j - 1 - bs_mes_len); else

while k <= bs_mes_len if rand <= EmbProb

glSignal_Gauss_Message ((i-l)*bs_mes_len*l + delta + j) = Signal_Gauss_before_emb((i-l)*bs_mes_len*l + delta + j) + MesO (k); % 1 k = k + 1; end j =j +1; end

delta = delta + (j - 1 - bs_mes_len); end

end end

gl_Info_NumEmbBits = i;

glMessage = glSignal_Gauss_Message - glSignal_Gauss;

axes(handles.axesMessage)

plot(glt,glMessage(glInitCount:glEndCount))

glGauss_Message = glSignal_Gauss_Message - glSignal;

wav_capacity_val = get(handles_ME.wav_capacity,Value");

wav_capacity_list = str2double (get(handles_ME.wav_capacity,'String'));

wav_capacity = wav_capacity_list (wav_capacity_val);

gl_Info_wav_capacity = wav_capacity;

WavMesPath = get(handles_ME.WavMesPath,'String);

gl_Info_WavMesPath = WavMesPath;

wavwrite(glSignal_Gauss_Message, glFs, wav_capacity, WavMesPath); Gauss_Message_without_signal = glSignal_Gauss_Message - glSignal; delete(handles_ME.win_MessageEmb);

function ShowEmbParams_Callback(hObject, eventdata, handles)

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