- •Компьютерная стеганография
- •Глава 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.3.2.2. Метод псевдослучайного интервала
В рассмотренном выше простейшем случае выполняется замена НЗБ всех последовательно размещенных пикселей изображения. Другой подход — метод случайного интервала [78], заключается в случайно распределении битов секретного сообщения по контейнеру, в результате чего расстояние между двумя встроенными битами определяется псевдослучайно. Эта методика особенно эффективна в случае, когда битовая длина секретного сообщения существенно меньше количества пикселей изображения.
Рассмотрим простейший случай этого метода, когда интервал между двумя последовательными встраиваниями битов сообщения является функцией координат предыдущего модифицированного пикселя.
Шаг1
Пусть сообщение, которое необходимо скрыть; M:=" © Пузыренко А.Ю., 2005 г.". В качестве контейнера С используем подмассив В синего цветового компонента .изображения рис. 5.3.
Шаг2
Определим метки,
которые будут устанавливать границы
полезного сообщения в контейнере. В
отличие от предыдущего метода, стартовая
метка будет определять порядковый номер
элемента контейнера, начиная с которого
в последний будут заноситься данные.
Пусть
:=154.
Метка
будет сигнализировать о завершении
полезной части среди извлеченных
символов:
:= "KiHeu,6"
Шаг 3
Примем, что при внесении битой сообщения в контейнер со сменным шагом, величина последнего обусловлена количеством единиц в двоичном значении номера элемента контейнера, который модифицировался предварительно. Доя подсчета величины шага (интервала) воспользуемся модулем (М.15), суммирующим количество элементов матрицы-столбца х, значение которых равно 1.
(M.15)
Коэффициент К в данном случае стартовая метка должна иметь значение, близкое к наибольшему значению индекса элементов контейнера). Также при выборе К следует принимать во внимание общее количество бит, необходимых для скрытия сообщения, а также имеющееся количество элементов массива контейнера. Пусть К := 9.
Ограничивающую
метку
,
с помощью строчной функции concat(),
объединяющей строки, выступающие в
качестве ее аргументов, прибавим к
тексту сообщения, которое подлежит
скрытию. Результат объединения преобразуем
в вектор ASCII-кодов:
Общее
количество символов в полученном
сообщении: rows(Me)=32
. Количество НЗБ контейнера, которое
для этого необходимо (8 бит/символ):
8 rows(Me)=256 бит.
Шаг 4
Развернем массив В в вектор (М.16), на основе которого сформируем новый , вектор, содержащий скрытое сообщение (М.17). ',

Каждый символ
сообщения Me
(операция цикла for.
.rows(Me))
перево-; дится в двоичный формат,
(переменная b),
каждый разряд которого записывается ]
вместо самого младшего бита числа Р,
соответствующего значению интенсивности
синего цвета определенного пикселя.
При этом элементы массива Cv
перебираются не последовательно, а с
переменным шагом, величина которого
обусловлена функцией step(
)7.
Стартовый элемент
задается меткой
.
После проведенного изменения,
модифицированное двоичное число Р
переводится в формат десятичного и
записывается в соответствующую позицию
вектора Sv,
который в начале модуля был принят
равным вектору Cv.
Шаг 5
Обратное свертывание вектора Sv в массив, имеющий размерность контейнера, выполняется, с использованием модуля (М.7) с тем лишь отличием, что аргументом функций размерности массива (rows и cols) является массив В. Чтобы оценить степень "рассеяния" бит скрытого сообщения по массиву контейнера, в качестве примера рассмотрим результат присвоения пикселю, в который планировалось ввести бит сообщения, нулевого значения интенсивности (черный цвет) при предварительном общем осветлении изображения (рис. 5.9).

Рис. 5.9 Рассеяние битов сообщения по массиву контейнера '
Шаг 6
Результирующее цветное изображение будет определяться массивом объединения цветовых массивов: S := augment(R, G, S').
Шаг 7
При извлечении
скрытого сообщения должны быть известны
параметры
и,
разумеется, массив В*,
который, как предполагается, содержит
скрытые данные.
Развертывание массива В* в вектор Sv* выполняется с помощью аналогичного (М.16) модуля. Извлечение сообщения из вектора Sv* выполняется с помощью модуля (М.18) в обратном, по отношению к операции встраивания порядке.

Из подученного вектора МГ путем сравнения с меткой ц", выделенного фрагмента извлекается полезное сообщение М* (МЛ 9).
М* = "© Пузыренко А.Ю., 2005 г.".
Результаты вычисления визуального искажения объединены в табл. 5.1 (стр. 125)

