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

Материал из 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+(2s1)Lijq, где q – константа, характеризующая энергию встраиваемого сигнала. Ее величина зависит от предназначения схемы. Чем больше q, тем выше робастность (устойчивость) вложения, но тем сильнее его заметностьШаблон:Sfn.

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

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

B^ij=14c(k=ccBi+k,j+k=ccBi,j+k2Bij),

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

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

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

Для увеличения вероятности правильного восстановления ЦВЗ в методе Куттера-Джордана-Боссена используется многократное встраивание бита информации в

n

позиций контейнера. Эти

n

позиций

p1,...,pn

определяются псевдослучайной последовательностью. Как и раньше, начальное состояние генератора псевдослучайных чисел определяется ключом

K

. Избыточность информации определяется параметром плотности

ρ

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечания

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

Литература