- •Компьютерная стеганография
- •Глава 1. Место стеганографических систем в сфере
- •Глава 2. Особенности построения стеганографических систем 18
- •Глава 3. Принципы стеганографического анализа 33
- •Глава 4. Пропускная способность каналов передачи
- •Глава 5 Стеганографические методы скрытия данных и их реализация в системе МathCad 70
- •Перечень условных сокращений
- •Вступление
- •Глава 1 Место стеганографических систем в сфере информационной безопасности
- •1.1. Атаки на информацию, обрабатываемую в автоматизированных системах
- •1.2. Категории информационной безопасности
- •1.3. Возможные варианты защиты информации в автоматизированных системах
- •Глава 2 Особенности построения стеганографических систем
- •2.1. Предмет, терминология и сферы применения стеганографии
- •2.2. Проблема устойчивости стеганографических систем
- •2.3. Структурная схема и математическая модель типичной стеганосистемы
- •2.4. Протоколы стеганографических систем
- •2.4.1. Бесключевые стеганосистемы
- •2.4.2. Стеганосистемы с секретным ключом
- •2.4.3. Стеганосистемы с открытым ключом .
- •2.4.4. Смешанные стеганосистемы
- •2.5. Выводы
- •Глава 3 Принципы стеганографического анализа
- •3.1. Вступительные положения
- •3.2. Виды атак на стеганографическую систему
- •3.3. Основные этапы практического стеганоанализа
- •3.4. Оценка качества стеганоситемы
- •3.5. Абсолютно надежная стеганосистема
- •3.6. Устойчивость стеганосистем к пассивным атакам
- •3.7. Активные и злонамеренные атаки
- •3.8. Устойчивость стеганографической системы к активным атакам
- •3.9. Сознательно открытый стеганографических канал
- •3.10. Выводы
- •Глава 4 Пропускная способность каналов передачи скрываемых данных
- •4.1. Понятие пропускной способности
- •4.2. Информационное скрытие при активном противодействии нарушителя
- •4.2.1. Формулировка задачи информационного скрытия при активном противодействии нарушителя
- •4.2.2. Скрывающее преобразование
- •4.2.3. Атакующее воздействие
- •4.3. Скрытая пропускная способность при активном противодействии нарушителя
- •4.3.1. Основная теорема информационного скрытия при активном противодействии нарушителя
- •4.3.2. Свойства скрытой пропускной способности стеганоканала
- •4.3.3. Комментарии полученных результатов
- •4.4. Двоичная стеганосистема передачи скрываемых сообщений
- •4.5. Выводы
- •Глава 5 Стеганографические методы скрытия данных и их реализация в системе MathCad
- •5.1. Вступительные положения
- •5.2. Классификация методов скрытия данных
- •5.3. Скрытие данных в неподвижных изображениях
- •5.3.1. Основные свойства 3сч, которые необходимо учитывать при построении стеганоалгоритмов
- •5.3.2. Скрытие данных в пространственной области
- •5.3.2.1. Метод замены наименее значащего бита
- •5.3.2.2. Метод псевдослучайного интервала
- •5.3.2.3. Метод псевдослучайной перестановки
- •5.3.2.4. Метод блочного скрытия
- •5.3.2.5. Методы замены палитры
- •5.3.2.6. Метод квантования изображения
- •5.3.2.7. Метод Куттера-Джордана-Боссена
- •5.3.2.8. Метод Дармстедтера-Делейгла-Квисквотера-Макка
- •Разбиение зон на категории
- •Правила встраивания бит сообщения
- •Извлечение встроенной информации
- •5.3.2.9. Другие методы скрытия данных в пространственной области
- •5.3.3. Скрытие данных в частотной области изображения
- •5.3.3.1. Метод относительной замены величин коэффициентов дкп (метод Коха и Жао)
- •5.3.3.2. Метод Бенгама-Мемона-Эо-Юнг
- •5.3.3.3. Метод Хсу и By
- •5.3.3.4. Метод Фридрих
- •5.3.4. Методы расширения спектра
- •5.3.5. Другие методы скрытия данных в неподвижных изображениях.
- •5.3.6.1. Статистические методы
- •5.3.5.2. Структурные методы
- •5.4. Скрытие данных в аудиосигналах
- •5.4.1. Кодирование наименее значащих бит (временная область)
- •5.4.2. Метод фазового кодирования (частотная область)
- •5.4.3. Метод расширения спектра (временная область)
- •5.4.4. Скрытие данных с использованием эхо-сигнала
- •5.5. Скрытие данных в тексте
- •5.5.1. Методы произвольного интервала
- •5.5.1.1. Метод изменения интервала между предложениями
- •5.5.1.2. Метод изменения количества пробелов в конце текстовых строк
- •5.5.1.3. Метод изменения количества пробелов между словами выровненного по ширине текста
- •5.5.2. Синтаксические и семантические методы
- •5.6. Системные требования
- •5.7. Выводы
- •Заключение
5.5.1.2. Метод изменения количества пробелов в конце текстовых строк
Еще один метод использования свободных мест полосы текста для встраивания конфиденциальных данных заключается в добавлении пробелов в конец каждой текстовой строки. Количество добавляемых пробелов зависит от значения встраиваемого бита. Два пробела кодируют один бит на строку, четыре пробела — два бита, восемь — три и т.д. Такой подход позволяет существенно увеличить, по сравнению с предыдущим методом, количество информации, которую можно скрыть в тексте аналогичного объема.
Дополнительные преимущества указанного метода состоят в том, что он может быть применен к любому тексту. Изменения в формате последнего будут в достаточной степени незаметными, поскольку используемые при этом свободные места являются периферийными по отношению к основному тексту.
Недостатком данного (как, в конечном счете, и предыдущего) метода является то, что некоторые программы обработки текста могут непреднамеренно удалять дополнительно внесенные пробелы. Кроме того, характерным недостатком рассматриваемого метода является очевидная невозможность извлечения скрытых данных из бумажной копии текста (из-за невидимости пробелов).
Нами предложен следующий вариант реализации данного метода.
Шаг 1
Пусть незаполненный текстовый контейнер и скрываемое сообщение те же, что и в вышерассмотренном методе.
Шаг 2
Встраивание бит сообщения выполняем при помощи программного модуля (М.131).
После получения вектора двоичного представления сообщения, которое подлежит скрытию, выполняется подсчет количества символов в каждой текстовой строке r (напомним, что каждая строка текста завершается парой служебных символов: возврата каретки -— CR (ASCII-код 13), и переноса строки — IF (ASCII-код 10), которые в обычном режиме не выводятся на экран и на печать). Подсчитанное количество символов заносится в r-й элемент вектора L. Изначально, как и в вышерассмотренном методе, массив С’ представляет собой текст, который еще не претерпел изменений.
Стеганограмма формируется путем дописывания вслед за последним элементом представляющего ее вектора S значения i-ro элемента массива С, если указанный элемент не представляет собой символ СR. В противном случае совершается переопределение переменной С’ как такой, которая содержит немодифицированную часть текста.
Количество бит , которое можно скрыть в строке, определяется разностью между количеством символов в наиболее длинной строке текста (максимальное значение вектора L) и количеством символов в текущей (r-й) строке. При этом, если скрывается бит "0", в стеганограмму дописывается значение 32 (обычный пробел), а если бит "1" —значение 160 (неразрывный пробел). После встраивания к бит, строка завершается парой символов CR/LF.
После встраивания всех 8-strlen(M) бит сообщения цикл прерывается. Если строка, которая модифицируется последней, не является последней в тексте (общее количество строк текста можно определить как количество элементов вектора L), стеганограмма S дополняется немодифицированным фрагментом текста (С).
Результат встраивания сообщения М в контейнер С изображен на рис. 5.96.
Рис. 5.96. Фрагмент текстового контейнера, заполненного методом изменения количества пробелов в конце строк
Шаг 3
Извлечение бит скрытых данных при S*:= S выполняется при помощи программного модуля (М.132). При этом по всей длине вектора S* выполняется поиск символов CR. В случае нахождения проводится анализ символов, которые размещены до него, на предмет соответствия их кодов кодам обычного (32) и неразрывного (160) пробелов. По полученным результатам формируется вектор двоичных данных, который в дальнейшем конвертируется в строку символов М*.