Вадим Грибунин - Цифровая стеганография
Альтернативным подходом является моделирование характеристик поведения LSB. Встраиваемое сообщение будет в этом случае частично или полностью зависеть от контейнера. Процесс моделирования является вычислительно трудоемким, кроме того, его надо повторять для каждого контейнера. Главным недостатком этого метода является то, что процесс моделирования может быть повторен нарушителем, возможно обладающим большим вычислительным ресурсом, создающим лучшие модели, что приведет к обнаружению скрытого сообщения. Это противоречит требованию о независимости безопасности стегосистемы от вычислительной мощности сторон. Кроме того, для обеспечения скрытности, необходимо держать используемую модель шума в тайне. А как нам уже известно, нарушителю неизвестен должен быть лишь ключ.
В силу указанных трудностей на практике обычно ограничиваются поиском пикселов, модификация которых не вносит заметных искажений в изображение. Затем из этих пикселов в соответствии с ключом выбираются те, которые будут модифицироваться. Скрываемое сообщение шифруется с применением другого ключа. Этот этап может быть дополнен предварительной компрессией для уменьшения объема сообщения.
1.3. Математическая модель стегосистемы
Стегосистема может быть рассмотрена как система связи [8].
Алгоритм встраивания ЦВЗ состоит из трех основных этапов: 1) генерации ЦВЗ, 2) встраивания ЦВЗ в кодере и 3) обнаружения ЦВЗ в детекторе.
1) Пусть есть множества возможных ЦВЗ, ключей, контейнеров и скрываемых сообщений, соответственно. Тогда генерация ЦВЗ может быть представлена в виде
, , (1.2)
где - представители соответствующих множеств. Вообще говоря, функция F может быть произвольной, но на практике требования робастности ЦВЗ накладывают на нее определенные ограничения. Так, в большинстве случаев, , то есть незначительно измененный контейнер не приводит к изменению ЦВЗ. Функция F обычно является составной:
где и , (1.3)
то есть ЦВЗ зависит от свойств контейнера, как это уже обсуждалось выше в данной главе. Функция G может быть реализована при помощи криптографически безопасного генератора ПСП с K в качестве начального значения.
Для повышения робастности ЦВЗ могут применяться помехоустойчивые коды, например, коды БЧХ, сверточные коды [9]. В ряде публикаций отмечены хорошие результаты, достигаемые при встраивании ЦВЗ в области вейвлет-преобразования с использованием турбо-кодов. Отсчеты ЦВЗ принимают обычно значения из множества {-1,1}, при этом для отображения {0,1}→{-1,1} может применяться двоичная относительная фазовая модуляция (BPSK).
Оператор T модифицирует кодовые слова , в результате чего получается ЦВЗ . На эту функцию можно не накладывать ограничения необратимости, так как соответствующий выбор G уже гарантирует необратимость F. Функция T должна быть выбрана так, чтобы незаполненный контейнер , заполненный контейнер и незначительно модифицированный заполненный контейнер порождали бы один и тот же ЦВЗ:
, (1.4)
то есть она должна быть устойчивой к малым изменениям контейнера.
2) Процесс встраивания ЦВЗ в исходное изображение может быть описан как суперпозиция двух сигналов:
, , (1.5)
где
— маска встраивания ЦВЗ, учитывающая характеристики зрительной системы человека, служит для уменьшения заметности ЦВЗ;
— проектирующая функция, зависящая от ключа;
знаком обозначен оператор суперпозиции, включающий в себя, помимо сложения, усечение и квантование.
Проектирующая функция осуществляет «распределение» ЦВЗ по области изображения. Ее использование может рассматриваться, как реализация разнесения информации по параллельным каналам. Кроме того, эта функция имеет определенную пространственную структуру и корреляционные свойства, использующиеся для противодействия геометрическим атакам (см. гл.3).
Другое возможное описание процесса внедрения получим, представив стегосистему как систему связи с передачей дополнительной информации (рис. 1.4) [8]. В этой модели кодер и декодер имеют доступ, помимо ключа, к информации о канале (то есть о контейнере и о возможных атаках). В зависимости от положения переключателей А и Б выделяют четыре класса стегосистем (подразумевается, что ключ всегда известен кодеру и декодеру).
I класс: дополнительная информация отсутствует (переключатели разомкнуты) — «классические» стегосистемы. В ранних работах по стеганографии считалось, что информация о канале недоступна кодеку. Обнаружение ЦВЗ осуществлялось путем вычисления коэффициента корреляции между принятым стего и вычисленным по ключу ЦВЗ. Если коэффициент превышал некоторый порог, выносилось решение о присутствии ЦВЗ. Известно, что корреляционный приемник оптимален лишь в случае аддитивной гауссовой помехи. При других атаках (например, геометрических искажениях) эти стегосистемы показывали удручающие результаты.
Рис. 1.4. Представление стегосистемы, как системы связи с передачей дополнительной информации
II класс: информация о канале известна только кодеру (А замкнут, Б разомкнут). Эта конструкция привлекла к себе внимание благодаря статье [10]. Интересной особенностью схемы является то, что, будучи слепой, она имеет ту же теоретическую пропускную способность, что и схема с наличием исходного контейнера в декодере. К недостаткам стегосистем II класса можно отнести высокую сложность кодера (необходимость построения кодовой книги для каждого изображения), а также отсутствие адаптации схемы к возможным атакам. В последнее время предложен ряд практических подходов, преодолевающих эти недостатки. В частности, для снижения сложности кодера предлагается использовать структурированные кодовые книги, а декодер рассчитывать на случай наихудшей атаки.
III класс: дополнительная информация известна только декодеру (А разомкнут, Б замкнут). В этих схемах декодер строится с учетом возможных атак. В результате получаются робастные к геометрическим атакам системы. Одним из методов достижения этой цели является использование так называемой опорного ЦВЗ (аналог пилот-сигнала в радиосвязи). Опорный ЦВЗ — небольшое число бит, внедряемые в инвариантные к преобразованиям коэффициенты сигнала. Например, можно выполнить встраивание в амплитудные коэффициенты преобразования Фурье, которые инвариатны к аффинным преобразованиям. Тогда опорный ЦВЗ «покажет», какое преобразование выполнил со стего атакующий. Другим назначением пилотного ЦВЗ является борьба с замираниями, по аналогии с радиосвязью. Замираниями в данном случае можно считать изменение значений отсчетов сигнала при встраивании данных, атаках, добавлении негауссовского шума и т. д. В радиосвязи для борьбы с замираниями используется метод разнесенного приема (по частоте, времени, пространству, коду). В стеганографии же используется разнесение ЦВЗ по пространству контейнера. Пилотный ЦВЗ генерируется в декодере на основе ключа.
IV класс: дополнительная информация известна и в кодере и в декодере (оба ключа замкнуты). Как отмечено в [9], по всей видимости все перспективные стегосистемы должны строиться по этому принципу. Оптимальность этой схемы достигается путем оптимального согласования кодера с сигналом-контейнером, а также адаптивным управлением декодером в условиях наблюдения канала атак.
3) Также как в радиосвязи наиболее важным устройством является приемник, в стегосистеме главным является стегодетектор. В зависимости от типа он может выдавать двоичные либо М-ичные решения о наличии/отсутствии ЦВЗ (в случае детектора с мягкими решениями). Рассмотрим вначале более простой случай «жесткого» детектора стего. Обозначим операцию детектирования через D. Тогда
, . (1.6)
В качестве детектора ЦВЗ обычно используют корреляционный приемник, изображенный на рис. 1.5.
Пусть у половины пикселов изображения значение яркости увеличено на 1, а у остальных — осталось неизменным, либо уменьшено на 1. Тогда , где . Коррелятор детектора ЦВЗ вычисляет величину . Так как W может принимать значения ±1, то будет весьма мало, а будет всегда положительно. Поэтому будет очень близко к . Тогда можно воспользоваться результатами теории связи и записать вероятность неверного обнаружения стего, как дополнительную (комплементарную) функцию ошибок от корня квадратного из отношения («энергии сигнала») к дисперсии значений пикселов яркости («энергия шума»).