Метод Куттера-Джордана-Боссена

Материал из testwiki
Перейти к навигации Перейти к поиску

Метод Куттера-Джордана-Боссена - стеганографический метод, осуществляющий внедрение цифрового водяного знака в изображение. Метод был представлен Мартином Куттером, Фредериком Джорданом и Фрэнком Боссеном в журнале Journal of Electronic Imaging в апреле 1998 годаШаблон:Sfn.

Метод Куттера-Джордана-Боссена относится к классу алгоритмов, осуществляющих скрытие данных в пространственной области. В алгоритмах этого класса внедрение ЦВЗ выполняется за счет изменения яркостной либо цветовых компонент пикселя. В этом методе отдельные биты водяного знака многократно внедряются в изображение путём изменения значения синего канала в пикселе. Это изменение пропорционально яркостной компоненте пикселя и может принимать как положительные, так и отрицательные значения в зависимости от значения встраиваемого бита водяного знакаШаблон:Sfn.

Основными свойствами, которыми должен обладать ЦВЗ – это неразличимость для человеческого глаза и устойчивость к различным искажениям и изменениям изображения. Метод Куттера-Джордана-Боссена удовлетворяет первому требованию за счёт встраивания битов водяного знака именно в синий канал пикселя, так как человеческий глаз наименее чувствителен именно к этому цветуШаблон:Sfn. Устойчивость к искажениям изображения обеспечивается путём многократного встраивания битов ЦВЗ в различных частях исходного изображения.

Научные работы в области применения этого метода показали высокую эффективность при его использовании для защиты авторских прав изображений и видеоматериаловШаблон:SfnШаблон:Sfn (см. Применение стеганографии), а также для проверки целостности изображений и QR-кодовШаблон:Sfn.

Алгоритм

Встраивание одного бита информации

Пусть s - отдельный бит встраиваемой в контейнер I={R,G,B} информации, где R, G и B - красная, зелёная и синяя компоненты пикселя соответственно, а p=(i,j) - псевдослучайная позиция с координатами i и j, в которой выполняется вложение. Позиция пикселя определяется ключом K, который используется в качестве начального состояния (англ. seed) в генераторе псевдослучайных чисел. Бит s встраивается в изображение путём изменения значения синего канала в пикселе с позицией p пропорционально яркостной компоненте пикселя L=0.299R+0.587G+0.114B. Таким образом, вместо синей компоненты Bij записывается новое значение, вычисляемое по формуле Bij∗=Bij+(2s−1)Lijq, где q – константа, характеризующая энергию встраиваемого сигнала. Ее величина зависит от предназначения схемы. Чем больше q, тем выше робастность (устойчивость) вложения, но тем сильнее его заметностьШаблон:Sfn.

Извлечение одного бита информации

Извлечение получателем бита информации водяного знака выполняется без наличия исходного изображения. Для того, чтобы восстановить исходный бит, нужно выполнить предсказание его значения. В качестве такого предсказания, используется линейная комбинация значений синего канала соседних битов. Авторы работыШаблон:Sfn эмпирически установили, что использование соседей из крестообразной окрестности пикселя (пиксели, с одинаковой координатой i либо j по отношению к исходному пикселю) дают наилучшее предсказание. Следовательно, предсказанное значение B̂ij можно вычислить по формуле:

B̂ij=14c(∑k=−ccBi+k,j+∑k=−ccBi,j+k−2Bij),

где c - размеры крестообразной окрестности пикселя сверху (снизу, слева, справа). Чтобы восстановить значение бита ЦВЗ, вычисляется разность δ=Bij−B̂ij. Знак разности δ как раз и определяет значение встроенного бита информацииШаблон:Sfn.

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

Многократное встраивание бита информации

Для увеличения вероятности правильного восстановления ЦВЗ в методе Куттера-Джордана-Боссена используется многократное встраивание бита информации в n позиций контейнера. Эти n позиций p1,...,pn определяются псевдослучайной последовательностью. Как и раньше, начальное состояние генератора псевдослучайных чисел определяется ключом K. Избыточность информации определяется параметром плотности ρ. Плотность определяет вероятность того, что тот или иной пиксель будет использован для встраивания информации. Значение этого параметра лежит в пределах от 0 до 1, где 0 означает полное отсутствие встраивания информации, а 1 - встраивание битов ЦВЗ в каждый пиксельШаблон:Sfn.

Порядок обхода изображения в методе Куттера-Джордана-Боссена

Координаты пикселей для встраивания определяются следующим образом: для каждого пикселя изображения генерируется псевдослучайное число x. Если x<ρ, тогда бит информации должен быть встроен в пиксель. Иначе, пиксель остается не тронутым. При этом пиксели изображения обходятся в зигзагообразном порядке, вместо того, чтобы перебирать координаты пикселя строка за строкой (или столбец за столбцом). Это сделано для того, чтобы процедура встраивания информации была независимой от размера изображенияШаблон:Sfn.

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

Также как и раньше, чтобы восстановить бит, вычисляется разница между предсказанным и реальным значениями бита для каждого pk: δk=Bpk−B̂pkШаблон:Sfn.

Затем полученные разницы усредняются: δ¯=1ρ|I|∑kδk, где |I| - количество пикселей в изображении I. Знак усредненной разности δk определяет значение встраиваемого бита информацииШаблон:Sfn.

Встраивание m-битного цифрового водяного знака

Встраивание m-битного цифрового водяного знака S={s0,...,sm−1} осуществляется следующим образом. Пусть p1...pn - позиции, выбранные для многократного встраивания одного бита ЦВЗ. Тогда для каждой из этих позиций выбирается и встраивается бит информации. При встраивании сообщения длиной m−2 бит, добавляются два дополнительных бита. Эти два бита всегда выбираются равными 0 и 1 соответственно. Это позволяет улучшить вероятность извлечений информации путём определения порогового значения τ (см. следующий подраздел). Также данные биты определяют геометрическое расположение, которое используется, чтобы противостоять геометрическим атакам, таким как поворот и обрезание изображенияШаблон:Sfn.

Устойчивость к стеганографическим атакам

Адаптивное пороговое значение

В работеШаблон:Sfn авторов данного метода приводится анализ устойчивости алгоритма к стеганографическим атакам. Авторы построили графики зависимости значения числа δ¯b (разница истинного и предсказанного значений бита) от номера бита b для двух изображений: изображения с ЦВЗ, встроенным с помощью метода Куттера-Джордана-Боссена, и изображения после попытки стеганографической атаки. В оригинальном изображении с ЦВЗ знак δ¯b может быть однозначно определен, в то время как после стеганографической атаки, определения знака δ¯b является недостаточно однозначным. Решением этой проблемы является введение ранее упомянутого порогового значения. Поскольку известно, что первые два бита информации имеют значения 0 и 1 соответственно, то можно воспользоваться этой информацией, чтобы вычислить адаптивное пороговое значение τ. Оно вычисляется как среднее δ¯0 и δ¯1:

s¯b={1,δ¯b>δ¯0+δ¯120,δ¯b≤δ¯0+δ¯12

Идея использования адаптивного порогового значения базируется на предположении о том, что изменения, произведённые при стеганографической атаке, одинаково затрагивают все встраиваемые биты в изображении. Это допущение может быть сделано, так как каждый бит цифрового водяного знака встраивается несколько раз и равномерно распределен по всему изображению. Следовательно, любые изменения производимые над изображением одинаково затронут все биты восстанавливаемого ЦВЗ, предполагая, что число встраиваний довольно великоШаблон:Sfn.

Примечания

Шаблон:Примечания

Литература