Содержание к диссертации
Введение
Глава 1. Модели, методы и алгоритмы стеганографического скрытия и анализа информации 19
1.1. Основные принципы стеганографии. Используемая терминология 21
1.1.1. Свойства стеганографических систем 25
1.1 .2. Классификация стеганографических систем 27
1,1.3. Классификация методов стеганографического скрытия информации,..28
1.2. Алгоритмы стеганографического скрытия информации 33
1.2.1. Известные алгоритмы стеганографического скрытия информации с использованием искусственных нейронных сетей 36
1.3. Методы выявления стеганографически скрытой информации 39
1.3.1. Основные принципы стегоанализа. Теоретические и практические аспекты стегоанализа 40
1.3.2 Статистические методы выявления стеганографического скрытия информации 44»
1.3.3. Известные алгоритмы.стегоанализа с использованием- искусственных нейронных сетей 5 1,
Выводы по главе 53
Глава 2. Нейросетевые функциональные модели и алгоритмы стеганографического скрытия информации 55
2.1. Нейросетевая функциональная модель и статистический анализ процесса стеганографического скрытия информации 56
2.2. Исследование предлагаемого метода стеганографического скрытия информации 67
2.3. Рекомендации по выбору контейнера при реализации предлагаемого метода стеганографического скрытия информации 76
Выводы по главе 85
CLASS Глава 3. Синтез и анализ алгоритмов выявления стеганографически скрытой- информации при обработке аудио- и графических данных 87 CLASS J
3.1. Восстановление авторегрессионных моделей естественных контейнеров данных с использованием искусственных нейронных сетей 88
3.2. Постановка и решение задачи обнаружения стеганографически скрытой информации как задачи определения «разладки» при использовании нейросетевых авторегрессионных моделей случайных процессов и полей 104
3.2.1. Общий подход к решению задачи стегоанализа на основе алгоритмов обнаружения разладки 104
3.2.2. Нейросетевой алгоритм анализа скрытых закономерностей и выявления стеганографически-встроенной информации с использованием алгоритмов обнаружения разладки 114
3.3. Практическая реализация и экспериментальные исследования нейросетевого алгоритма выявления стеганографически скрытой информации 123
Выводы по главе 138
Глава 4. Программный комплекс для решения задач стеганографического скрытия и анализа на основе комбинированного использования различных алгоритмов обработки информации 141
4.1. Описание структуры разработанного программного комплекса 142'
4.2. Описание разработанной библиотеки классов для работы с нейронными сетями 154
4.3. Результаты экспериментальных исследований и практические рекомендации по применению разработанных алгоритмов обработки информации 166
Выводы по главе 172
Заключение 175
Список литературы 181
- Свойства стеганографических систем
- Исследование предлагаемого метода стеганографического скрытия информации
- Постановка и решение задачи обнаружения стеганографически скрытой информации как задачи определения «разладки» при использовании нейросетевых авторегрессионных моделей случайных процессов и полей
- Описание разработанной библиотеки классов для работы с нейронными сетями
Введение к работе
Актуальность темы. Постоянно растущие потребности обеспечения эффективности информационных систем и помехоустойчивости телекоммуникаций для целей передачи, хранения и защиты информации стимулируют разработку новых методов и средств решения задач сохранения конфиденциальности и защите авторских прав на различные виды интеллектуальной собственности. В настоящий момент одними из наиболее востребованных технологий в этой области являются технологии, базирующиеся на использовании методов компьютерной обработки сигналов и изображений для стеганографичского скрытия информации (ССИ), позволяющие встраивать необходимые данные в любые информационные массивы и объекты цифрового контента (файлы аудио- и графических данных, файлы текстовых форматов и пр.), чтобы обеспечить эффективную защиту от подделки, копирования и несанкционированного использования. Не менее важной для различных приложений является обратная задача, или задача стего-анализа (СА) - обнаружения скрытых стеганографическим способом данных, их извлечение и уничтожение, а также анализ стойкости существующих стегоалго-ритмов, и разработка новых методов выявления ССИ.
Разработкой и усовершенствованием методов и средств компьютерной стеганографии занимаются многие отечественные и зарубежные ученые, в том числе: В.Г. Грибунин, И.В. Туринцев, И.Н. Оков, Б.Я. Рябко, О.Б. Макаревич, А.Н. Фионов, Н. Провос (N. Provos), Симмонс (G.J. Simmons), Д. Фридрих (J. Fridrich), Р. Андерсон (R. Anderson), В. Бендер (W. Bender), Питас (I. Pitas), X. Фарид (Н. Farid), и др. Хотя проблема стеганографического скрытия и анализа информации в различных приложениях рассмотрена достаточно глубоко, известные алгоритмы ССИ имеют свои определенные недостатки. Один из этих недостатков заключается в их детерминированности - используемые в них процедуры встраивания информации реализуют строго определенные последовательности операций преобразования данных, образующие конечное множество вариантов. В этом плане представляется целесообразным, исследование возможности применения нейросетевых функциональных моделей преобразования данных в интересах создания перспективных технологий стеганографического «растворения» информации в файлах различных форматов, а также для исследования возможностей существующих алгоритмов стегоанализа с целью ее выявления.
Недостатки современных методов СА зачастую связаны с их невысокой чувствительностью, ориентированностью на работу с контейнерами определенного формата, вычислительной сложностью, а также неоднозначностью процедуры формирования информативных признаков для анализа и классификации естественных файлов-контейнеров в потоковом режиме. Для решения указанных вопросов очевидна необходимость привлечения новых подходов, всестороннего их сравнения с имеющимися и установления границ применимости. Перспективной задачей также представляется теоретическое и практическое исследование возможностей нейронных сетей (НС) для обработки информации при решении задач стегоанализа как в отдельности, так и в дополнение к статистическим методам и последовательным методам принятия решений. Таким образом, тема диссертации,
посвященная разработке и исследованию статистических, нейросетевых и комбинированных алгоритмов синтеза и анализа стеганографически скрытой информации в аудио- и графических данных, представляется актуальной.
Тема диссертации входит в план научно-исследовательских работ Воронежского государственного университета по кафедре информационных систем.
Цель и задачи исследования. Целью диссертации является разработка и исследование алгоритмов стеганографического встраивания и выявления скрытых сообщений в графических и звуковых файлах с использованием статистических и нейросетевых алгоритмов обработки информации в интересах создания эффективных технологий и программных средств стеганографического скрытия данных, а также оперативной диагностики скрытно-встроенной информации.
Для достижения цели в работе рассматриваются и решаются следующие задачи.
Исследование и анализ известных методов стеганографического встраивания и обнаружения скрытых сообщений в рамках статистического и нейросе-тевого подходов.
Разработка и исследование нейросетевых функциональных моделей преобразования информации в интересах решения задач стеганографического встраивания, а также разработка методики для оценки потенциальных возможностей восстановления ранее скрытых данных.
Разработка комбинированных алгоритмов обнаружения факта ССИ в потоках данных, сочетающих использование нейросетевого подхода для восстановления авторегрессионной модели анализируемого контейнера со статистическим подходом обнаружения «разладки», фиксирующей изменения параметров анализируемого процесса.
Проведение экспериментальных исследований возможностей разработанных алгоритмов для анализа реальных контейнеров (файлов графических и звуковых форматов) на предмет наличия в них информации, встроенной с использованием различных алгоритмов стеганографического скрытия.
Разработка программных средств для моделирования различных алгоритмов ССИ в файлы распространенных форматов и реализации комплексного применения разнородных стегоаналитических алгоритмов.
Методы проведения исследования. При решении поставленных в диссертации задач использовались аналитические и вычислительные методы современной теории информационных процессов и систем, а именно: аппарат теории принятия статистических решений; методы теории вероятностей и математической статистики; технологии объектно-ориентированного программирования; методы и технологии статистического имитационного моделирования, а также аппарат искусственных нейронных сетей.
Основные результаты, выносимые на защиту, и их научная новизна. На защиту выносятся следующие результаты, впервые достаточно полно развитые или полученные в диссертации:
1. Метод стеганографического скрытия информации в файлы различных форматов, отличающийся использованием нейросетевой функциональной модели преобразования данных при встраивании информации и статистически опти-
мальных алгоритмов принятия решения при восстановлении ранее встроенных данных, применение которого обеспечивает повышение защищенности скрывающего и восстанавливающего преобразований и позволяет расширить область применения ССИ в плане использования контейнеров с вещественными форматами представления данных.
Теоретические обоснования сходимости весовых коэффициентов нейронных сетей при восстановлении авторегрессионных моделей (АР-моделей) случайных процессов и полей по экспериментальным данным в условиях прямого и косвенного обучения, что позволило обосновать возможность использования нейронных сетей для решения задач синтеза и анализа стеганографически скрытой информации в рассматриваемой постановке.
Комбинированные алгоритмы выявления ССИ и достижимые характеристики достоверности обработки информации, особенностью которых является совместное применение нейросетевых алгоритмов восстановления АР-моделей обрабатываемых данных и последовательных алгоритмов обнаружения «разладки», а также известных статистических критериев анализа, что позволило обеспечить повышение надежности и оперативности выявления факта стеганографического скрытия данных при обработке контейнеров графических и звуковых форматов.
Структура и алгоритмы функционирования программного комплекса для анализа мультимедийных файлов различных форматов на наличие ССИ, отличающиеся реализацией комбинированного подхода на основе использования взаимно дополняющих методов и алгоритмов анализа данных, что позволяет свести к минимуму вероятности ошибок первого и второго рода при обнаружении факта стеганографического скрытия информации. Практические рекомендации по комплексному применению различных алгоритмов обработки информации в стегосистемах.
Научная новизна полученных результатов работы определяется следующим.
1. Предложен и теоретически обоснован метод ССИ на основе двух типов нейросетевых функциональных моделей преобразования данных: прямого скрывающего и обратного восстанавливающего преобразований. Обоснован выбор типа и архитектуры нейронных сетей прямого распространения для встраивания и восстановления двоичных последовательностей данных. Показано, что для встраивания двоичной (битовой) последовательности данных целесообразно использовать двухслойную линейную сеть автоассоциативного типа с уменьшенным на единицу по сравнению с размерностью входного и выходного вектора числом нейронов в скрытом слое. Для восстановления ранее скрытой последовательности целесообразно применять линейную или нелинейную нейронную сеть прямого распространения, реализующую двухальтернативное решающее правило при извлечении двоичной последовательности данных. Предложена статистическая модель стеганографического встраивания битовой последовательности с помощью нейронной сети автоассоциативного типа, основанная на представлении файлов-контейнеров в виде гауссовских случайных векторов, и методика оценки потенциальной достоверности восстановления ранее скрытой информации. Получены зависимости вероятности достоверного восстановления элементов встроен-
ной информации от различных параметров статистической модели, исследована возможность извлечения скрытых данных в модели активного нарушителя.
Получены необходимые и достаточные условия сходимости весовых коэффициентов НС линейного типа при восстановлении регрессионных и авторегрессионных моделей случайных процессов и полей по экспериментальным данным в условиях прямого и косвенного обучения. Полученные результаты свидетельствуют о том, что весовые коэффициенты НС линейного типа при увеличении объема обучающих примеров сходятся по вероятности к соответствующим элементам матриц, описывающих статистические связи случайных векторов. Выявленные возможности НС позволяют обосновать целесообразность их использования для построения функциональных моделей преобразования данных при реализации предложенного метода ССИ, а также для восстановления моделей естественных контейнеров при отсутствии априорной информации относительно их статистических характеристик в интересах построения алгоритмов СА.
Предложен комбинированный алгоритм обнаружения факта ССИ, в котором реализовано сочетание нейросетевого алгоритма восстановления АР-модели анализируемого контейнера со статистическим последовательным алгоритмом обнаружения разладки, фиксирующим изменение параметров этой модели при встраивании в файл-носитель дополнительных данных. Для обнаружения разладки целесообразно использовать статистику алгоритма кумулятивных сумм в форме разложения Ле-Кама, настроенную на фиксацию изменения моментов ошибки экстраполяции нейронной сетью очередного элемента анализируемого контейнера. Исследована возможность дополнительного использования известных статистических критериев анализа данных в качестве вторичных данных при формировании обучающих примеров для НС, обучаемой в «стационарном» режиме и используемой для фиксации разладки, что обеспечивает повышение достоверности и оперативности выявления факта встраивания информации при обработке интенсивных потоков данных.
При разработке программных средств для моделирования и анализа современных стегосистем реализован комплексный подход, в основе которого лежит применение разнородных статистических и нейросетевых алгоритмов анализа контейнеров звуковых и графических форматов, а также широкого перечня моделей ССИ для проведения тестирования используемых алгоритмов СА. В ходе экспериментальных исследований, выполненных на естественных файлах-контейнерах, показано, что комбинированное использование статистических, нейросетевых, сигнатурных и структурных алгоритмов анализа, позволяет существенно сократить вероятность ложного обнаружения ССИ (до уровня менее 1%), повысить надежность и оперативность выявления факта стегоскрытия по сравнению с многими известными алгоритмами СА, а также сопоставить природу стеганографического скрытия с использованными алгоритмическими и программными средствами.
Достоверность результатов работы. Результаты исследований, сформулированные в диссертации, получены на основе корректного использования взаимно дополняющих друг друга теоретических и экспериментальных (имитационное моделирование) методов исследований, совпадением результатов, полученных
различными методами, между собой, а, в ряде частных случаев, с известными, наглядной физической трактовкой установленных закономерностей и соотношений.
Значимость для науки и практики. Результаты диссертационной работы имеют значение для разработки алгоритмического и программного обеспечения в интересах выявления ССИ, средств создания цифровых водяных знаков и защиты авторских прав на объекты цифровой интеллектуальной собственности, обеспечивающих эффективную защиту от подделки, копирования и несанкционированного использования данных.
Применение предложенной автором нейросетевой модели преобразования данных в компьютерной стеганографии позволяет перейти от технологий встраивания данных на основе логически предопределенных алгоритмов к технологии «растворения» данных в мультимедийных файлах-контейнерах, что имеет существенное значение как для решения основной задачи стеганографии, так и в качестве базовой модели информационного процесса, для решения задачи СА.
Полученные в диссертации аналитические выражения и зависимости для характеристик синтезированных алгоритмов позволяют обоснованно выбрать алгоритм в соответствии с требованиями, предъявляемыми к показателям качества обработки информации, с учетом существующих ограничений и дестабилизирующих факторов, а также исходя из соображений программной реализации.
Область исследования. Содержание диссертации соответствует специальности 05.13.17 - «Теоретические основы информатики» по следующим областям исследований: разработка и анализ моделей информационных процессов и структур (п.2 паспорта специальности); разработка и исследование моделей и алгоритмов анализа данных, обнаружения закономерностей в данных и их извлечениях (п.5); разработка методов обеспечения высоконадежной обработки информации и обеспечения помехоустойчивости информационных коммуникаций для целей передачи, хранения и зашиты информации (п. 11).
Реализация научных результатов. Полученные в диссертации результаты реализованы в Воронежском государственном университете при выполнении НИР «Кассиопея-ВГУ», «Фобос-ВР», ООО «Фото Технологии В» при выполнении НИОКР «Программное обеспечение для реализации новой информационной технологии защиты авторских прав на основе создания цифровых водяных знаков с использованием нейросетевых функциональных моделей преобразования данных», а также ФГУП ВНИИ «Градиент» в НИР «Фобос-Н».
Личный вклад автора. Основные результаты по теме диссертации получены лично автором и опубликованы в соавторстве с научным руководителем. В этих работах автору принадлежит доказательство теорем и проведение рассуждений, необходимых для решения поставленных задач, организация экспериментов для обоснования алгоритмов, полученных теоретическим путем, анализ и интерпретация полученных результатов. В работах [1,4], опубликованных с участием других соавторов, соискателем предложены комбинированные алгоритмы выявления ССИ, выполнены теоретические обоснования сходимости весовых коэффициентов НС при восстановлении авторегрессионных моделей случайных процессов.
Публикации. По теме диссертации опубликовано 14 работ, из них 4 работы - в изданиях, рекомендованных ВАК.
Апробация работы. Основные положения диссертационной работы докладывались и обсуждались: на XII Международной конференции «Цифровая обработка сигналов и ее применение» (Москва, 2010 г.); на IX, X Международных научно-технических конференциях «Кибернетика и высокие технологии XXI века» (Воронеж, 2008, 2009 гг.); на VIII, IX, X Международных конференциях «Информатика: проблемы, методология, технологии» (Воронеж, 2008-2010 гг.).
Структура и объем работы. Диссертация состоит из введения, четырех разделов, заключения и списка литературы из 104 наименований. Объем диссертации составляет 192 страницы, включая 180 страниц основного текста, содержащего 46 рисунков, и 12 страниц списка литературы.
Свойства стеганографических систем
На выходе системы кодирования и встраивания данных формируется заполненный контейнер, который можно передавать по открытым каналам передачи информации. Таким образом осуществляется скрытность переписки. Для извлечения информации- получатель заполненного контейнера должен знать стеганографический ключ К. Как правило, метод извлечения данных является обратным методу скрытия. При совпадении ключей и успешной работе алгоритма извлечения будет получено исходное сообщение.
При проектировании СС необходимо соблюдать ряд требований. Приведем некоторые из них. 1. Свойства заполненного контейнера должны минимально отличаться от свойств исходного «чистого» носителя: z-z— min. В идеальном случае вносимые искажения не должны выявляться при визуальном и статистическом контроле, что позволит обеспечить беспрепятственное прохождение стегосообщения по каналу связи. 2. Стегосообщение должно быть максимально устойчиво к различного рода искажениям контейнера, т.е Fx{z,d,k) Fx(z + s,d,k), где є —искажения, вносимые в контейнер случайно или в результате преднамеренных действий нарушителя. 3. При заданном уровне искажений должна обеспечиваться требуемая (максимальная) пропускная способность стегоканала. 4. Реализуемые в рамках СС методы и алгоритмы должны иметь приемлемую вычислительную сложность реализации. 5. Безопасность СС должна полностью» определяться секретностью ключа: То есть, потенциальный нарушитель может полностью знать- все алгоритмы работы СС и статистические характеристики элементов множеств Z и D\ но это не даст ему никакой дополнительной информации о наличии или отсутствии сообщения в данном контейнере. 6. Для повышения надежности стегоканала и точности при восстановлении сообщений следует в максимально возможной степени дублировать встраиваемую информацию, использовать шифрование, аппарат статистических методов анализа данных, кодирование с исправлением ошибок. Безусловно, соблюдение всех вышеперечисленных требований при проектировании СС является непростой задачей, но в результате можно получить очень надежный канал для передачи информации, раскрыть который будет весьма сложно. На практике же, как правило, приходится делать выбор в пользу надежности или пропускной способности стегосистемы. 1.1.2. Классификация стеганографических систем
По аналогии с криптографическими системами, в стеганографии различают системы с закрытыми и открытыми ключами [59]. Кроме того, выделяют безключевые и смешанные стегосистемы. Рассмотрим отдельно каждую из них.
В безключвых стеганографических системах безопасность защищаемой информации достигается за счет самого алгоритма стеганографического преобразования, при этом для встраивания и извлечения информации не требуется дополнительных данных в виде ключей. В общем виде безключевую стеганографическую систему можно представить в виде совокупности множеств и отображений Н = {ZiD,Fl,F2}, F,: Z х Z) —» Z, Z = Fl(Z,D) - процедура стеганографического встраивания, F2:Z — D, D = F2(Z)— процедура извлечения информации. Согласно принципу Керкгоффса [62] подобная стегосистема не может считаться безопасной — в случае, если нарушителю известны алгоритмы, реализуемые F{ и F2, он сможет извлекать и читать всю информацию. Поэтому, чтобы повысить безопасность СС дополнительно используются различные методы криптографии для шифрования встраиваемых данных.
В СС с закрытым ключом для встраивания и извлечения сообщения D используется один секретный ключ К, который должен быть известен как отправителю, так и получателю. Без знания стеганографического ключа нарушитель не сможет восстановить скрытую информацию. Стегосистему с секретным ключом можно описать следующим образом: Н = {Z,D,K,Fl,F2}, где К- множество секретных ключей, F{:ZxDxK -» Z , Z = Ft(Z,D,K) - процедура стеганографического встраивания, F2:ZxK— D, D = F2(Z,К)- процедура извлечения информации. Для эффективного функционирования стегосистемы такого типа стеганографический ключ должен беспрепятственно пересылаться получателю, например по защищенному каналу связи. СС с открытым ключом используют два типа ключей - открытый и закрытый. Открытый ключ используется для скрытия сообщения в контейнер, его можно хранить в общедоступном месте и передавать по незащищенным каналам связи. Закрытый ключ необходим для извлечения скрытой информации, он должен быть известен только отправителю и получателю. Стегосистема с открытым ключом представляет собой совокупно сть множеств и отображений Н = {Z,D,KX,K2,FVF2}, где Кх - множество открытых ключей, используемых при встраивании сообщений D в контейнеры Z, К2 — множество закрытых ключей для извлечения данных, F .ZxDxKj- Z, Z =Fi(Z,D,Ki) — процедура стеганографического встраивания, F2:ZxK2- D, D = F2(Z,K2) — процедура извлечения информации. Смешанные стегосистемы могут сочетать в себе особенности безключевых систем, систем с открытыми или секретными ключами.
В современной стеганографии выделяют два основных направления: технологическую стеганографию и информационную стеганографию [59]. Общая классификация методов стеганографической защиты информации приведена на рисунке 1.2. Стеганография Технологическая Информационная Химические Органические жидкости Симпатические химикалии Физические Голограммы Камуфляж Тайники Микроточки Лингвистические Условное письмо Семаграммы Компьютерной стеганографии Сокрытие информации Цифровые водяные знаки Цифровые отпечатки Рисунок 1.2- Общая классификация методов стеганографического скрытия информации К методам технологической стеганографии относятся методы, которые основаны на использовании химических или физических свойств различных материальных носителей информации; К информационной стеганографии можно отнести методы лингвистической и компьютерной стеганографии. Подробное рассмотрение особенностей химических, физических и лингвистических методов стеганографии выходит за рамки данной работы. Следует лишь сказать, что данные методы были востребованы при организации скрытых каналов передачи информации на протяжении всей человеческой истории вплоть до середины XX века [4,59]. С развитием компьютерных технологий, алгоритмов цифровой обработки сигналов, теории связи и информации появилось новое направление в области информационной безопастности — компьютерная стеганография: В рамках компьютерной стеганографии рассматриваются вопросы, связанные со скрытием информации, которая хранится на носителях или. передается; по сетям телекоммуникаций, с организацией скрытых каналов в компьютерных системах и сетях, а также с технологиями цифровых водяных, знаков (watermarking) и отпечатка пальца (fingerprinting).
Єписок стеганографических методов ежегодно пополняется;, изобретают более надежные и оригинальные способы скрытия; информации, дляс нейтрализации которых потребуются новые, эффективные методы анализа. В настоящее время большое развитие получают системы активной стеганографии. К примеру, сообщение может быть передано по каналу ІР-телефонии.;, будучи встроенным в голосовой трафик [46,89]. Другой вариант — обмен через р2р технологию [86]: В основе базовых подходов к реализации методов компьютерной; стеганографии в рамках той или иной информационной среды лежит выделение малозначимых фрагментов среды и замена существующей в них информации на информацию, которую предполагается защитить.
По предназначению стеганографические методы делятся на две группы: методы для скрытой передачи или скрытого хранения конфиденциальных данных и методы для скрытия данных в цифровых объектах с целью защиты самих цифровых объектов (авторских прав их владельцев). По используемым принципам стеганографические методы можно разбить на два класса — это структурные методы и методы, связанные с цифровой обработкой данных, К числу первых относится использование зарезервированных полей расширения многих мультимедийных форматов, заполняемых, как правило, нулевой информацией и не учитываемых программами-просмотрщиками. Хотя данный метод и является наиболее простым, он не лишен серьёзных недостатков, главными из которых являются низкая скрытность и возможность передачи лишь небольших объёмов информации. Простота в использовании и наличие доступного программного обеспечения, реализующего данные методы, в большинстве случаев не компенсируют слабую производительность и недостаточную скрытность методов.
Исследование предлагаемого метода стеганографического скрытия информации
Выполненные в предыдущем разделе обоснования определяют общую последовательность действий при реализации предлагаемого метода ССИ. Обобщенную схему встраивания и извлечения информации в рамках предлагаемого метода удобно представить в нотации языка UML, приведенной на рисунке 2.2. Схема встраивания информации здесь включают два основных этапа. На первом этапе производится формирование обучающих множеств, настраиваются параметры НС (рисунок 2.2а) и происходит процесс ее обучения. Одновременно по сформированным векторам входных и целевых воздействий происходит обучение НС, реализующей процедуру восстановления (рисунок 2.26). На втором этапе выбирается подходящий контейнер, формируются векторы входных воздействий и реализуется нейросетевой алгоритм ССИ. Извлечение данных реализуется путем подачи элементов контейнера, содержащих встроенное сообщение, на вторую нейронную сеть.
Рассмотренная в п. 2.1 статистическая модель позволяет исследовать закономерности процесса ССИ, например, влияние размерности и спектральных характеристик контейнера на достоверность и объем встраиваемой информации при заданном уровне искажений контейнера. Моделирование процесса ССИ проводилось с использованием пакета MatLab 7.0. При проведении модельного эксперимента проводилась генерация совокупностей встраиваемой последовательности dip) и вектора-контейнера z{p), рассматриваемых как реализации случайного процесса с заданным коэффициентом корреляции р и дисперсией а\.
При использовании нейронных сетей линейного типа важной особенностью алгоритмов, реализуемых на основе предлагаемого метода ССИ, является возможность значительного уменьшения амплитуды встраиваемого сигнала по сравнению с сигналом, использованным для обучения сети.
На рисунке 2.3а,б приведены полученные входе статистического моделирования зависимости вероятности ошибки при восстановлении одного бита встраиваемой информации5 от значения амплитуды встраиваемой последовательности. На рисунке 2.3в приведена зависимость вероятности ошибки восстановления скрытой информации от размерности входного вектора z, а на рисунке 2.3г представлена зависимость вероятности ошибки восстановления скрытой информации от коэффициента корреляции р случайного процесса, генерирующего реализации вектора .
Необходимо отметить, что с увеличением размерности входного вектора контейнера z уменьшается СКО искажения контейнера и в целом возрастает точность получаемых результатов, однако снижается пропускная способность системы в целом. Приемлемые значения пропускной способности должны определяться в рамках конкретной задачи ССИ с учетом обеспечения низкой вероятности вскрытия CG. Анализ полученных зависимостей показывает, что в целом экспериментальные результаты, полученные в ходе моделирования, очень близки к полученным на основе теоретических соотношений (2.3), а при определенных значениях параметров алгоритма они демонстрируют практически полное совпадение.
Многочисленные эксперименты показали, что при использовании линейных моделей для встраивания и извлечения ССИ, можно получить весьма приемлемые характеристики. В отдельных случаях (например, когда для восстановления сообщения линейных разделяющих функций недостаточно) для реализации процедуры восстановления ССИ можно использовать НС аналогичной архитектуры, имеющие нелинейные активационные функции. Как показали результаты, экспериментов нелинейные сети являются менее эффективными, как по скорости обучения, так в ряде случаев ипо точности обучения. На рисунке 2.4а представлены зависимости вероятности ошибки приг восстановлении двух бит-встраиваемой информации от , значения амплитуды скрываемой последовательности. В данном- примере для реализации скрывающего; стеганографического преобразования применялись обученные НС с 12 входами, 11 нейронами в скрытом и 12 нейронами, в выходном слое; имеющие линейные передаточные функции на всех слоях; для восстановления информации использовались НС с 10 входами, 10 нейронами в промежуточном слое и 2 нейронами на выходном слое, имеющие передаточные функции вида гиперболический тангенс th{ax) = (е" —e ax)j\eax +е ах). В отличие от предыдущего случая (рисунке 2.3а,б), примерного совпадения экспериментальных результатов расчета вероятности ошибки с теоретическими соотношениями естественно не наблюдается.
Трудности, связанные с применением нелинейных НС также проявляются при встраивании информации. При реализации оператора Fx нелинейной сетью возрастает относительная СКО искажения восстанавливаемого сетью контейнера (рисунок 2.46), вносимые искажения становятся заметнее и получаемые на выходе алгоритма контейнеры будут отличаться от оригинала. На рисунке 2.46 для реализации скрывающего преобразования и восстановления информации. применялись НС с нелинейными функциями активации вида гиперболический тангенс.
В предлагаемом методе нейросетевого встраивания-информации в качестве стеганографического ключа К = {0,Т} выступают параметры обученной для скрытия нейронной сети в (ее архитектура, количество нейронов по слоям и значения весовых коэффициентов), а также информация Т о выбранных для встраивания элементах контейнера. Например, для скрытия может использоваться не весь контейнер целиком, а определенная ег.о область. Если в качестве контейнера используется изображение, то для скрытия могут выбираться отдельные точки на изображении, выбираемые в последовательности, определенной при помощи, криптографически безопасного генератора ПСП с известным обеим сторонам начальным значением. Сформированный таким образом стегоключ Одолжен быть передан по защищенным каналам всем абонентам с тем, чтобы в дальнейшем они могли извлекать и читать скрытые сообщения.
Известно, что безопасность стегосистемы может полностью определяться секретностью ключа [16]. В этом случае нарушителю могут быть известны все алгоритмы работы стегосистемы и статистические характеристики множеств сообщений и контейнеров, но это не даст ему никакой дополнительной информации о наличии или отсутствии сообщения в данном контейнере. В нашем случае безопасность системы определяется как ключом, так и самим нейросетевым алгоритмом встраивания, что делает предлагаемый метод ССИ менее прозрачным для потенциальных нарушителей.
Для оценки стеганографической стойкости предлагаемого нейросетевого метода ССИ целесообразно рассмотреть некоторые виды известных стегоаналитических атак (способов выявления самого факта и содержания ССИ), чтобы на этой основе выявить его недостатки и обозначить пути его совершенствования.
Постановка и решение задачи обнаружения стеганографически скрытой информации как задачи определения «разладки» при использовании нейросетевых авторегрессионных моделей случайных процессов и полей
Как было отмечено выше в разделе 3.1, СК может рассматриваться как реализация случайной последовательности — случайного векторного процесса (СП) в дискретном времени, а для его описания (при недостаточной априорной информации) можно использовать АР-модель, восстанавливаемую при обучении нейронной сети соответствующей архитектуры. В результате скрывающего» стеганографического преобразования, с определенной вероятностью произойдет изменение статистических свойств данного СП-контейнера. Для определения момента времени изменения характеристик наблюдаемого процесса; характеризующего возможное появление стеганографически скрытой информации предлагается воспользоваться статистическими методами обнаружения «разладки». Как показано в і [34,18], использование подобных методов реализует оптимальные или квазиоптимальные последовательные алгоритмы принятия решений, обеспечивающие минимизацию времени запаздывания при, выявлении ситуаций изменения характеристик СП; одновременно со стабилизацией числа ложных тревог.
Первым шагом к применению алгоритмов обнаружения разладки при конструировании стегоаналитической системы является выбор элементов или характеристик анализируемых контейнеров (потоковых или- с произвольным доступом), которые потенциально модифицируются в результате скрывающего стеганографического преобразования. Сформулируем задачу выявления ССИ в терминах задачи обнаружения разладки. Пусть z["\zl"\...zln) - анализируемая последовательность данных с условной плотностью вероятности Pe(z) = P{zІв), где 0єі?г - некий вектор параметров. При этом каждое z,(n) состоит из одного наблюдения, являющегося скалярной или векторной величиной, или из совокупности п однородных наблюдений, получаемых в ходе проведения п независимых экспериментов zin)={z„,...,zj, і = йк, п \. Если в качестве контейнеров рассматривать несжатые звуковые файлы формата wav, то последовательность г\"\г \...г (далее {z ;"\t = l,k}), может формироваться, например, из значений амплитуд отсчетов звуковых составляющих. Предположим, что в результате стеганографического встраивания в последовательность {z,(n)}, векторный параметр в изменит свое значение, начиная с некоторого неизвестного момента времени t0, что в свою очередь приведет к возникновению эффекта «разладки». Иными словами до момента t0 выполняется в = в0, а после в = вх, вйФвх. Таким образом, задача поиска разладки, а значит и задача отыскания начала области стеганографического-скрытия в наблюдаемой последовательности {z,(n)}, состоит в определении изменений параметра в и определении момента времени t0.
В задачах обнаружения разладки обычно [8,11,18] рассматриваются две гипотезы: Н0 (нетразладки): 6 = в0; Нх (естьразладка): в-вх. Пусть Н0 — гипотеза, обозначающая случай, когда анализируемый сигнал не содержит скрытой информации, при этом плотность распределения элементов последовательности {z,(n)} - co(z/0o), а Нг — гипотеза, выполняющаяся при стегоскрытии данных. В этом случае полагаем плотность распределения элементов последовательности {z)n)} —coizl9 ). Тогда при встраивании данных в контейнер, начиная с момента времени t, для t t0. выполняется HQ: в = в0, а для t t0 выполняется Их\в — Эх. В зависимости от полноты информации о векторах параметров в0 и вх, возможны следующие варианты: 1. Параметры 0О и вх известны заранее, а все значения t0 є {{,...,к} — равновероятны. Данный случай с позиции стегоанализа означает, что аналитику известен алгоритм, по которому производилось встраивание данных, поэтому для вскрытия сообщения необходимо определить стегоключ и, возможно, криптографический ключ. 2. Параметры в0 и (или) 0Х известны частично. В этом случае у стегоаналитика скорее всего есть только программа скрывающая информацию, но нет детального описания самого алгоритма скрытия. Решить задачу обнаружения и получить приблизительные оценки параметров 0О и 0Х возможно путем генерации так называемого множества обучающих данных - последовательности сигналов содержащих и не содержащих стеговложений и дальнейшего анализа этого множества с уточнением параметров 0О и 0Х. 3. Параметры 0О и 0Х полностью неизвестны. Такая ситуация представляет наибольший интерес с точки зрения СА. Стегоаналитик в этом случае имеет дело с некоторым файлом или потоком данных с заранее неизвестными статистическими характеристиками, к тому же он не имеет информации о возможном наличии скрытых вложений. Ситуации подобного рода наиболее распространены и сложноразрешимы, особенно если приходится анализировать значительные объемы информации, а объем спрятанных данных относительно мал.
Для обнаружения момента разладки, как правило, используются последовательные критерии [8,43], фиксирующие изменчивость свойств статистических оценок временных рядов на основе некоторых характеристик. Одним из наиболее эффективных критериев является алгоритм кумулятивных сумм (АКС) [34]. Его основная идея заключается в накоплении значений логарифма отношения правдоподобия для условных плотностей распределения наблюдений до и после разладки.
Описание разработанной библиотеки классов для работы с нейронными сетями
Исследование предложенных и описанных в третьей главе диссертации методик и алгоритмов стегоанализа с использованием авторегрессионных моделей и нейросетевых алгоритмов обработки информации проводилось с; помощью средств моделирования математического пакета Matlab. В дальнейшем при проектировании программного комплекса СА возникла необходимость отдельной реализации модулей или самостоятельной библиотеки для моделирования и работы с нейронными сетями.
Принято выделять два способа реализации ИНС - аппаратную и программную. Программная реализация, уступая аппаратной по скорости работы и автономности, обладает рядом очевидных преимуществ, связанных с простотой использования и внедрения в информационно-управляющую систему. За последнее время вопросам программной реализации ИНС посвящено достаточно много работ [55,75,95], однако, найти хорошую библиотеку программ, позволяющую моделировать и использовать нейронные сети для решения задач прикладного характера довольно сложно. В Internet доступны ряд бесплатных и условно-бесплатных программ или библиотек для моделирования НС, среди них: Stuttgart Neural Network Simulator [41], Qnet [40], NeuroSolutions [39], Fast Artificial Neural Network Library [38] и прочие. Следует отметить, что в настоящее время одним из самых распространенных и эффективных программных пакетов, предоставляющих возможность работы с нейронными сетями, является Neural Network Toolbox системы Matlab [88]. Интегрированная среда Matlab предоставляет большой набор инструментов и средств для решения задач из различных областей знаний. Основное преимущество пакета Neural Network Toolbox заключается в возможности проектирования, обучения и моделирования очень широкого класса НС, от базовых моделей перцептрона до самых современных ассоциативных и самоорганизующихся сетей. Пакет может быть использован для исследования и применения нейронных сетей к таким задачам, как обработка сигналов, нелинейное управление и финансовое моделирование. К недостаткам данного пакета можно отнести громоздкую реализацию и относительно невысокую скорость работы при решении определенного класса задач. Кроме того, использование нейросетевых средств Matlab накладывает значительные ограничения на переносимость разрабатываемых программных продуктов. Поэтому разумным шагом является отдельная программная реализация модулей для работы с ИНС. Целесообразность отдельной программной реализации определяется следующими причинами: - расширением функциональных возможностей и оптимизация работы НС для решения конкретных задач, в частности для стеганографического встраивания и выявления скрытой информации; - обеспечением высокой скорости работы алгоритмов (обучения НС) и нетребовательности к ресурсам компьютера; - простотой и удобством в использовании и интеграции с другими программными модулями, что играет существенную роль при разработке специализированного программного обеспечения.
Класс «перцептрон» Perceptron. Базовым элементом нейронной сети является объект перцептрон класса Perceptron. Конструктор Perceptron: : Perceptron (int newNumberOf Inputs) создает объект перцептрон с заданным количеством входов. В конструкторе инициализируются векторы весовых коэффициентов и значение смещения нормально-распределенными величинами с нулевым математическим средним и единичной дисперсией. По умолчанию задается линейная передаточная функция, в дальнейшем вид передаточной функции может быть скорректирован. Все поля-члены класса Perceptron являются закрытыми, а все функции-члены — открытыми. Этот принцип реализован в остальных классах с целью увеличения гибкости работы с экземплярами классов, без доступа к их внутренней структуре.
Класс «обучающее/тестовое множество» TramingTestingData описывает обучающее (тестовое) множество. Основные поля данного класса включают количество входных значений, количество желаемых выходных или целевых значений, число обучающих образов или паттернов. Предполагается, что число входных и целевых значений объекта TramingTestingData соответствует числу входов и выходов объекта MultilayerPerceptron.
Конструктор TramingTestingData: :TrainingTestingData(int, int, int) создает объект обучающего множества, в фактических параметрах указывается количество входных значений, количество целевых значений и количество обучающих образцов. В соответствии с параметрами задаются размерности матриц входных (inputData) и целевых (targetData) значений. Заполнение матриц происходит при вызове метода TrainingTestingData::load(char , int, int), первый параметр - это имя файла с данными для обучения, второй и третий целочисленные параметры - это начало и конец диапазона обучающих данных. Предобработка данных происходит после загрузки их из файла до начала процесса обучения сети. В программе реализованы следующие варианты предобработки: нормировка данных в интервале [-1,1] (TrainingTestingData:: preprocessMinimumAndMaximum(void)), преобразование данных к значениям с нулевым математическим средним и единичной дисперсией (TrainingTestingData: :preprocessMeanAndStandardDeviation(void)), кроме того данные для обучения могут использоваться без преобразования.