Цифровая стеганография

Грибунин Вадим Геннадьевич

Оков Игорь Николаевич

Туринцев Игорь Владимирович

1. ВВЕДЕНИЕ В ЦИФРОВУЮ СТЕГАНОГРАФИЮ

 

 

1.1. Цифровая стеганография. Предмет, терминология, области применения

Цифровая стеганография как наука родилась буквально в последние годы. По нашему мнению она включает в себя следующие направления:

1) встраивание информации с целью ее скрытой передачи;

2) встраивание цифровых водяных знаков (ЦВЗ) (watermarking);

3) встраивание идентификационных номеров (fingerprinting);

4) встраивание заголовков (captioning).

ЦВЗ могут применяться, в основном, для защиты от копирования и несанкционированного использования. В связи с бурным развитием технологий мультимедиа остро встал вопрос защиты авторских прав и интеллектуальной собственности, представленной в цифровом виде. Примерами могут являться фотографии, аудио и видеозаписи и т. д. Преимущества, которые дают представление и передача сообщений в цифровом виде, могут оказаться перечеркнутыми легкостью, с которой возможно их воровство или модификация. Поэтому разрабатываются различные меры защиты информации, организационного и технического характера. Один из наиболее эффективных технических средств защиты мультимедийной информации и заключается во встраивании в защищаемый объект невидимых меток — ЦВЗ. Разработки в этой области ведут крупнейшие фирмы во всем мире. Так как методы ЦВЗ начали разрабатываться совершенно недавно (первой статьей на эту тему была, видимо, работа [1]), то здесь имеется много неясных проблем, требующих своего разрешения.

Название этот метод получил от всем известного способа защиты ценных бумаг, в том числе и денег, от подделки. Термин «digital watermarking» был впервые применен в работе [2]. В отличие от обычных водяных знаков ЦВЗ могут быть не только видимыми, но и (как правило) невидимыми. Невидимые ЦВЗ анализируются специальным декодером, который выносит решение об их корректности. ЦВЗ могут содержать некоторый аутентичный код, информацию о собственнике, либо какую-нибудь управляющую информацию. Наиболее подходящими объектами защиты при помощи ЦВЗ являются неподвижные изображения, файлы аудио и видеоданных.

Технология встраивания идентификационных номеров производителей имеет много общего с технологией ЦВЗ. Отличие заключается в том, что в первом случае каждая защищенная копия имеет свой уникальный встраиваемый номер (отсюда и название — дословно «отпечатки пальцев»). Этот идентификационный номер позволяет производителю отслеживать дальнейшую судьбу своего детища: не занялся ли кто-нибудь из покупателей незаконным тиражированием. Если да, то «отпечатки пальцев» быстро укажут на виновного.

Встраивание заголовков (невидимое) может применяться, например, для подписи медицинских снимков, нанесения легенды на карту и т. д. Целью является хранение разнородно представленной информации в едином целом. Это, пожалуй, единственное приложение стеганографии, где в явном виде отсутствует потенциальный нарушитель.

Так как цифровая стеганография является молодой наукой, то ее терминология не до конца устоялась. Основные понятия стеганографии были согласованы на первой международной конференции по скрытию данных [3]. Тем не менее, даже само понятие «стеганография» трактуется различно. Так, некоторые исследователи понимают под стеганографией только скрытую передачу информации. Другие относят к стеганографии такие приложения как, например, метеорную радиосвязь, радиосвязь с псевдослучайной перестройкой радиочастоты, широкополосную радиосвязь. На наш взгляд, неформальное определение того, что такое цифровая стеганография, могло бы выглядеть следующим образом: «наука о незаметном и надежном скрытии одних битовых последовательностей в других, имеющих аналоговую природу». Под это определение как раз подпадают все четыре вышеприведенных направления скрытия данных, а приложения радиосвязи — нет. Кроме того, в определении содержится два главных требования к стеганографическому преобразованию: незаметность и надежность, или устойчивость к различного рода искажениям. Упоминание об аналоговой природе цифровых данных подчеркивает тот факт, что встраивание информации выполняется в оцифрованные непрерывные сигналы. Таким образом, в рамках цифровой стеганографии не рассматриваются вопросы внедрения данных в заголовки IP-пакетов и файлов различных форматов, в текстовые сообщения.

Как бы ни были различны направления стеганографии, предъявляемые ими требования во многом совпадают, как это будет показано далее. Наиболее существенное отличие постановки задачи скрытой передачи данных от постановки задачи встраивания ЦВЗ состоит в том, что в первом случае нарушитель должен обнаружить скрытое сообщение, тогда как во втором случае о его существовании все знают. Более того, у нарушителя на законных основаниях может иметься устройство обнаружения ЦВЗ (например, в составе DVD-проигрывателя).

Слово «незаметном» в нашем определении цифровой стеганографии подразумевает обязательное включение человека в систему стеганографической передачи данных. Человек здесь может рассматриваться как дополнительный приемник данных, предъявляющий к системе передачи достаточно трудно формализуемые требования.

Задачу встраивания и выделения сообщений из другой информации выполняет стегосистема. Стегосистема состоит из следующих основных элементов, представленных на рис. 1.1:

Рис. 1.1. Структурная схема типичной стегосистемы ЦВЗ

— прекодер — устройство, предназначенное для преобразования скрываемого сообщения к виду, удобному для встраивания в сигнал-контейнер. (Контейнером называется информационная последовательность, в которой прячется сообщение);

— стегокодер — устройство, предназначенное для осуществления вложения скрытого сообщения в другие данные с учетом их модели;

— устройство выделения встроенного сообщения;

— стегодетектор — устройство, предназначенное для определения наличия стегосообщения;

— декодер — устройство, восстанавливающее скрытое сообщение. Этот узел может отсутствовать, как будет пояснено далее.

Данные, содержащие скрытое сообщение, могут подвергаться преднамеренным атакам или случайным помехам, описание которых приведено в главе 3.

Как показано на рис. 1.1, в стегосистеме происходит объединение двух типов информации так, чтобы они могли быть различимы двумя принципиально разными детекторами. В качестве одного из детекторов выступает система выделения ЦВЗ, в качестве другого — человек.

Прежде, чем осуществить вложение ЦВЗ в контейнер, ЦВЗ должен быть преобразован к некоторому подходящему виду. Например, если в качестве контейнера выступает изображение, то и последовательность ЦВЗ зачастую представляется как двумерный массив бит. Для того, чтобы повысить устойчивость ЦВЗ к искажениям нередко выполняют его помехоустойчивое кодирование, либо применяют широкополосные сигналы. Первоначальную обработку скрытого сообщения выполняет показанный на рис. 1.1 прекодер. В качестве важнейшей предварительной обработки ЦВЗ (а также и контейнера) назовем вычисление его обобщенного преобразования Фурье. Это позволяет осуществить встраивание ЦВЗ в спектральной области, что значительно повышает его устойчивость к искажениям. Предварительная обработка часто выполняется с использованием ключа K для повышения секретности встраивания. Далее ЦВЗ «вкладывается» в контейнер, например, путем модификации младших значащих бит коэффициентов. Этот процесс возможен благодаря особенностям системы восприятия человека. Хорошо известно, что изображения обладают большой психовизуальной избыточностью. Глаз человека подобен низкочастотному фильтру, пропускающему мелкие детали. Особенно незаметны искажения в высокочастотной области изображений. Эти особенности человеческого зрения используются, например, при разработке алгоритмов сжатия изображений и видео.

Процесс внедрения ЦВЗ также должен учитывать свойства системы восприятия человека. Стеганография использует имеющуюся в сигналах психовизуальную избыточность, но другим, чем при сжатии данных образом. Приведем простой пример. Рассмотрим полутоновое изображение с 256 градациями серого, то есть с удельной скоростью кодирования 8 бит/пиксел. Хорошо известно, что глаз человека не способен заметить изменение младшего значащего бита. Еще в 1989 году был получен патент на способ скрытого вложения информации в изображение путем модификации младшего значащего бита. В данном случае детектор стего анализирует только значение этого бита для каждого пиксела, а глаз человека, напротив, воспринимает только старшие 7 бит. Данный метод прост в реализации и эффективен, но не удовлетворяет некоторым важным требованиям к ЦВЗ, как будет показано далее.

В большинстве стегосистем для внедрения и выделения ЦВЗ используется ключ. Ключ может быть предназначен для узкого круга лиц или же быть общедоступным. Например, ключ должен содержаться во всех DVD-плейерах, чтобы они могли прочесть содержащиеся на дисках ЦВЗ. Иногда по аналогии с криптографией стегосистемы делят на два класса: с открытым ключом и с секретным ключом. На наш взгляд, аналогия неверна, так как понятие открытого ключа в данном случае в корне различно. Правильным выражением было бы «общедоступный ключ», причем ключ встраивания совпадает с ключом выделения. Не существует, насколько известно, стегосистемы, в которой бы при выделении ЦВЗ требовалась другая информация, чем при его вложении. Хотя и не доказана гипотеза о невозможности существования подобной системы. В системе с общедоступным ключом достаточно сложно противостоять возможным атакам со стороны злоумышленников. В самом деле, в данном случае нарушителю точно известен ключ и месторасположение ЦВЗ, а также его значение.

В стегодетекторе происходит обнаружение ЦВЗ в (возможно измененном) защищенном ЦВЗ изображении. Это изменение может быть обусловлено влиянием ошибок в канале связи, операций обработки сигнала, преднамеренных атак нарушителей. Во многих моделях стегосистем сигнал-контейнер рассматривается как аддитивный шум[4]. Тогда задача обнаружения и выделения стегосообщения является классической для теории связи. Однако такой подход не учитывает двух факторов: неслучайного характера сигнала контейнера и требований по сохранению его качества. Эти моменты не встречаются в известной теории обнаружения и выделения сигналов на фоне аддитивного шума. Их учет позволит построить более эффективные стегосистемы.

Различают стегодетекторы, предназначенные для обнаружения факта наличия ЦВЗ и устройства, предназначенные для выделения этого ЦВЗ (стегодекодеры). В первом случае возможны детекторы с жесткими (да/нет) или мягкими решениями. Для вынесения решения о наличии/отсутствии ЦВЗ удобно использовать такие меры, как расстояние по Хэммингу, либо взаимную корреляцию между имеющимся сигналом и оригиналом (при наличии последнего, разумеется). А что делать, если у нас нет исходного сигнала? Тогда в дело вступают более тонкие статистические методы, основанные на построении моделей исследуемого класса сигналов. В последующих главах этот вопрос будет освещен подробнее.

В зависимости от того, какая информация требуется детектору для обнаружения ЦВЗ, стегосистемы ЦВЗ делятся на три класса: открытые, полузакрытые и закрытые системы. Эта классификация приведена в табл.1.1.

Табл.1.1

Что требуется детектору Выход детектора
Исходный сигнал Исходный ЦВЗ Да/Нет ЦВЗ
Закрытые Тип I + + + -
Тип II + - - +
Полузакрытые - + + -
Открытые - - - +

Табл.1.1. Классификация систем встраивания ЦВЗ

Наибольшее применение могут иметь открытые стегосистемы ЦВЗ, которые аналогичны системам скрытой передачи данных. Наибольшую устойчивость по отношению к внешним воздействиям имеют закрытые стегосистемы I типа.

Рассмотрим подробнее понятие контейнера. До стегокодера — это пустой контейнер, после него — заполненный контейнер, или стего. Стего должен быть визуально неотличим от пустого контейнера. Различают два основных типа контейнеров: потоковый и фиксированный.

Потоковый контейнер представляет собой непрерывно следующую последовательность бит. Сообщение вкладывается в него в реальном масштабе времени, так что в кодере неизвестно заранее, хватит ли размеров контейнера для передачи всего сообщения. В один контейнер большого размера может быть встроено и несколько сообщений. Интервалы между встраиваемыми битами определяются генератором псевдослучайной последовательности с равномерным распределением интервалов между отсчетами. Основная трудность заключается в осуществлении синхронизации, определении начала и конца последовательности. Если в данных контейнера имеются биты синхронизации, заголовки пакетов и т. д., то скрываемая информация может идти сразу после них. Трудность обеспечения синхронизации превращается в достоинство с точки зрения обеспечения скрытности передачи. Кроме того, потоковый контейнер имеет большое практическое значение: представьте себе, например, стегоприставку к обычному телефону. Под прикрытием обычного, незначащего телефонного переговора можно было бы передавать другой разговор, данные и т. п., и не зная секретного ключа нельзя было бы не только узнать содержание скрытой передачи, но и сам факт ее существования. Не случайно, что работ, посвященных разработке стегосистем с потоковым контейнером практически не встречается.

У фиксированного контейнера размеры и характеристики заранее известны. Это позволяет осуществлять вложение данных оптимальным в некотором смысле образом. В книге мы будем рассматривать, в основном, фиксированные контейнеры (далее — контейнеры).

Контейнер может быть выбранным, случайным или навязанным. Выбранный контейнер зависит от встраиваемого сообщения, а в предельном случае является его функцией. Этот тип контейнера больше характерен для стеганографии. Навязанный контейнер может появиться в сценарии, когда лицо, предоставляющее контейнер, подозревает о возможной скрытой переписке и желает предотвратить ее. На практике же чаще всего сталкиваются со случайным контейнером.

Встраивание сообщения в контейнер может производиться при помощи ключа, одного или нескольких. Ключ — псевдослучайная последовательность (ПСП) бит, порождаемая генератором, удовлетворяющим определенным требованиям (криптографически безопасный генератор). В качестве основы генератора может использоваться, например, линейный рекуррентный регистр. Тогда адресатам для обеспечения связи может сообщаться начальное заполнение этого регистра. Числа, порождаемые генератором ПСП, могут определять позиции модифицируемых отсчетов в случае фиксированного контейнера или интервалы между ними в случае потокового контейнера. Надо отметить, что метод случайного выбора величины интервала между встраиваемыми битами не особенно хорош. Причин этого две. Во-первых, скрытые данные должны быть распределены по всему изображению. Поэтому, равномерное распределение длин интервалов (от наименьшего до наибольшего) может быть достигнуто лишь приближенно, так как мы должны быть уверены в том, что все сообщение встроено, то есть «поместилось» в контейнер. Во-вторых, длины интервалов между отсчетами шума распределены не по равномерному, а по экспоненциальному закону. Генератор же ПСП с экспоненциально распределенными интервалами сложен в реализации.

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

ЦВЗ могут быть трех типов: робастные, хрупкие и полухрупкие (semifragile). Под робастностью понимается устойчивость ЦВЗ к различного рода воздействиям на стего. Робастным ЦВЗ посвящено большинство исследований.

Хрупкие ЦВЗ разрушаются при незначительной модификации заполненного контейнера. Они применяются для аутентификации сигналов. Отличие от средств электронной цифровой подписи заключается в том, что хрупкие ЦВЗ все же допускают некоторую модификацию контента. Это важно для защиты мультимедийной информации, так как законный пользователь может, например, пожелать сжать изображение. Другое отличие заключается в том, что хрупкие ЦВЗ должны не только отразить факт модификации контейнера, но также вид и местоположение этого изменения.

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

На рис. 1.2 представлена классификация систем цифровой стеганографии.

Стегосистема образует стегоканал, по которому передается заполненный контейнер. Этот канал считается подверженным воздействиям со стороны нарушителей. Следуя Симмонсу [5], в стеганографии обычно рассматривается такая постановка задачи («проблема заключенных»).

Двое заключенных, Алиса и Боб желают конфиденциально обмениваться сообщениями, несмотря на то, что канал связи между ними контролирует охранник Вилли. Для того, чтобы тайный обмен сообщениями был возможен предполагается, что Алиса и Боб имеют некоторый известный обоим секретный ключ. Действия Вилли могут заключаться не только в попытке обнаружения скрытого канала связи, но и в разрушении передаваемых сообщений, а также их модификации и создании новых, ложных сообщений. Соответственно, можно выделить три типа нарушителей, которым должна противостоять стегосистема: пассивный, активный и злоумышленный нарушители. Подробнее возможные действия нарушителей и защита от них рассмотрены во второй главе. Пока заметим лишь, что пассивный нарушитель может быть лишь в стегосистемах скрытой передачи данных. Для систем ЦВЗ характерны активные и злоумышленные нарушители.

Статья Симмонса [5], как он сам написал впоследствии [6], была вызвана желанием привлечь внимание научной общественности к закрытой в то время проблеме, связанной с контролем над ядерным оружием. Согласно Договору ОСВ СССР и США должны были разместить некие датчики на стратегических ракетах друг друга. Эти датчики должны были передавать инфор формацию о том, не подсоединена ли к ним ядерная боеголовка. Проблема, которой занимался Симмонс, заключалась в том, чтобы не допустить передачи како-либо другой информации этими датчиками, например, о местоположении ракет. Определение факта наличия скрытой информации — главная задача стегоанализа.

Рис. 1.2. Классификация систем цифровой стеганографии

Для того, чтобы стегосистема была надежной, необходимо выполнение при ее проектировании ряда требований.

— Безопасность системы должна полностью определяться секретностью ключа. Это означает, что нарушитель может полностью знать все алгоритмы работы стегосистемы и статистические характеристики множеств сообщений и контейнеров, и это не даст ему никакой дополнительной информации о наличии или отсутствии сообщения в данном контейнере.

— Знание нарушителем факта наличия сообщения в каком-либо контейнере не должно помочь ему при обнаружении сообщений в других контейнерах.

— Заполненный контейнер должен быть визуально неотличим от незаполненного. Для удовлетворения этого требования надо, казалось бы, внедрять скрытое сообщение в визуально незначимые области сигнала. Однако, эти же области используют и алгоритмы сжатия. Поэтому, если изображение будет в дальнейшем подвергаться сжатию, то скрытое сообщение может разрушиться. Следовательно, биты должны встраиваться в визуально значимые области, а относительная незаметность может быть достигнута за счет использования специальных методов, например, модуляции с расширением спектра.

— Стегосистема ЦВЗ должна иметь низкую вероятность ложного обнаружения скрытого сообщения в сигнале, его не содержащем. В некоторых приложениях такое обнаружение может привести к серьезным последствиям. Например, ложное обнаружение ЦВЗ на DVD-диске может вызвать отказ от его воспроизведения плейером.

— Должна обеспечиваться требуемая пропускная способность (это требование актуально, в основном, для стегосистем скрытой передачи информации). В третьей главе мы введем понятие скрытой пропускной способности и рассмотрим пути ее достижения.

— Стегосистема должна иметь приемлемую вычислительную сложность реализации. При этом возможна асимметричная по сложности реализации система ЦВЗ, то есть сложный стегокодер и простой стегодекодер.

К ЦВЗ предъявляются следующие требования.

— ЦВЗ должен легко (вычислительно) извлекаться законным пользователем.

— ЦВЗ должен быть устойчивым либо неустойчивым к преднамеренным и случайным воздействиям (в зависимости о приложения). Если ЦВЗ используется для подтверждения подлинности, то недопустимое изменение контейнера должно приводить к разрушению ЦВЗ (хрупкий ЦВЗ). Если же ЦВЗ содержит идентификационный код, логотип фирмы и т. п., то он должен сохраниться при максимальных искажениях контейнера, конечно, не приводящих к существенным искажениям исходного сигнала. Например, у изображения могут быть отредактированы цветовая гамма или яркость, у аудиозаписи — усилено звучание низких тонов и т. д. Кроме того ЦВЗ должен быть робастным по отношению к аффинным преобразованиям изображения, то есть его поворотам, масштабированию. При этом надо различать устойчивость самого ЦВЗ и способность декодера верно его обнаружить. Скажем, при повороте изображения ЦВЗ не разрушится, а декодер может оказаться неспособным выделить его. Существуют приложения, когда ЦВЗ должен быть устойчивым по отношению к одним преобразованиям и неустойчивым по отношению к другим. Например, может быть разрешено копирование изображения (ксерокс, сканер), но наложен запрет на внесение в него каких-либо изменений.

— Должна иметься возможность добавления к стего дополнительных ЦВЗ. Например, на DVD-диске имеется метка о допустимости однократного копирования. После осуществления такого копирования необходимо добавить метку о запрете дальнейшего копирования. Можно было бы, конечно, удалить первый ЦВЗ и записать на его место второй. Однако, это противоречит предположению о трудноудалимости ЦВЗ. Лучшим выходом является добавление еще одного ЦВЗ, после которого первый не будет приниматься во внимание. Однако, наличие нескольких ЦВЗ на одном сообщении может облегчить атаку со стороны нарушителя, если не предпринять специальных мер, как это будет описано в главе 2.

В настоящее время технология ЦВЗ находится в самой начальной стадии своего развития. Как показывает практика, должно пройти лет 10–20 для того, чтобы новый криптографический метод начал широко использоваться в обществе. Наверное, аналогичная ситуация будет наблюдаться и со стеганографией. Одной из проблем, связанных с ЦВЗ, является многообразие требований к ним, в зависимости от приложения. Рассмотрим подробнее основные области применения ЦВЗ.

Вначале рассмотрим проблему пиратства, или неограниченного неавторизованного копирования. Алиса продает свое мультимедийное сообщение Питеру. Хотя информация могла быть зашифрована во время передачи, ничто не помешает Питеру заняться ее копированием после расшифровки. Следовательно, в данном случае требуется дополнительный уровень защиты от копирования, который не может быть обеспечен традиционными методами. Как будет показано далее, существует возможность внедрения ЦВЗ, разрешающего воспроизведение и запрещающего копирование информации.

Важной проблемой является определение подлинности полученной информации, то есть ее аутентификация. Обычно для аутентификации данных используются средства цифровой подписи. Однако, эти средства не совсем подходят для обеспечения аутентификации мультимедийной информации. Дело в том, что сообщение, снабженное электронной цифровой подписью, должно храниться и передаваться абсолютно точно, «бит в бит». Мультимедийная же информация может незначительно искажаться как при хранении (за счет сжатия), так и при передаче (влияние одиночных или пакетных ошибок в канале связи). При этом ее качество остается допустимым для пользователя, но цифровая подпись работать не будет. Получатель не сможет отличить истинное, хотя и несколько искаженное сообщение, от ложного. Кроме того, мультимедийные данные могут быть преобразованы из одного формата в другой. При этом традиционные средства защиты целостности работать также не будут. Можно сказать, что ЦВЗ способны защитить именно содержание аудио-, видеосообщения, а не его цифровое представление в виде последовательности бит. Кроме того, важным недостатком цифровой подписи является то, что ее легко удалить из заверенного ею сообщения, после чего приделать к нему новую подпись. Удаление подписи позволит нарушителю отказаться от авторства, либо ввести в заблуждение законного получателя относительно авторства сообщения. Система ЦВЗ проектируется таким образом, чтобы исключить возможность подобных нарушений.

Как видно из рис. 1.3, применение ЦВЗ не ограничивается приложениями безопасности информации. Основные области использования технологии ЦВЗ могут быть объединены в четыре группы: защита от копирования (использования), скрытая аннотация документов, доказательство аутентичности информации и скрытая связь.

Рис. 1.3. Потенциальные области применения стеганографии

Популярность мультимедиа-технологий вызвало множество исследований, связанных с разработкой алгоритмов ЦВЗ для использования в стандартах MP3, MPEG-4, JPEG2000, защиты DVD дисков от копирования.

 

1.2. Встраивание сообщений в незначащие элементы контейнера

Цифровые изображения представляют из себя матрицу пикселов. Пиксел — это единичный элемент изображения. Он имеет фиксированную разрядность двоичного представления. Например, пикселы полутонового изображения кодируются 8 битами (значения яркости изменяются от 0 до 255).

Младший значащий бит (LSB) изображения несет в себе меньше всего информации. Известно, что человек обычно не способен заметить изменение в этом бите. Фактически, он является шумом. Поэтому его можно использовать для встраивания информации. Таким образом, для полутонового изображения объем встраиваемых данных может составлять 1/8 объема контейнера. Например, в изображение размером 512х512 можно встроить 32 килобайта информации. Если модифицировать два младших бита (что также почти незаметно), то можно скрытно передать вдвое больший объем данных.

Достоинства рассматриваемого метода заключаются в его простоте и сравнительно большом объеме встраиваемых данных. Однако, он имеет серьезные недостатки. Во-первых, скрытое сообщение легко разрушить, как это показано в третьей главе. Во-вторых, не обеспечена секретность встраивания информации. Нарушителю точно известно местоположение всего ЦВЗ. Для преодоления последнего недостатка было предложено встраивать ЦВЗ не во все пикселы изображения, а лишь в некоторые из них, определяемые по псевдослучайному закону в соответствии с ключом, известному только законному пользователю. Пропускная способность при этом уменьшается.

Рассмотрим подробнее вопрос выбора пикселов изображения для встраивания в них скрытого сообщения.

В работе [7] отмечается неслучайный характер поведения младшего значащего бита изображений. Скрываемое сообщение не должно изменять статистики изображения. Для этого, в принципе возможно, располагая достаточно большим количеством незаполненных контейнеров, подыскать наиболее подходящий. Теоретически возможно найти контейнер, уже содержащий в себе наше сообщение при данном ключе. Тогда изменять вообще ничего не надо, и вскрыть факт передачи будет невозможно. Эту ситуацию можно сравнить с применением одноразового блокнота в криптографии. Метод выбора подходящего контейнера требует выполнения большого количества вычислений и обладает малой пропускной способностью.

Альтернативным подходом является моделирование характеристик поведения 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, то будет весьма мало, а будет всегда положительно. Поэтому будет очень близко к . Тогда можно воспользоваться результатами теории связи и записать вероятность неверного обнаружения стего, как дополнительную (комплементарную) функцию ошибок от корня квадратного из отношения («энергии сигнала») к дисперсии значений пикселов яркости («энергия шума»).

Для случая мягкого детектора и закрытой стегосистемы имеем две основные меры похожести:

Рис. 1.5. Корреляционный детектор ЦВЗ

— (1.7)

нормированный коэффициент взаимной корреляции и

— (1.8)

расстояние по Хэммингу.

В детекторе возможно возникновение двух типов ошибок. Существует вероятность того, что детектор не обнаружит имеющийся ЦВЗ и вероятность ложного нахождения ЦВЗ в пустом контейнере (вероятность ложной тревоги). Снижение одной вероятности приводит к увеличению другой. Надежность работы детектора характеризуют вероятностью ложного обнаружения. Система ЦВЗ должна быть построена таким образом, чтобы минимизировать вероятности возникновения обеих ошибок, так как каждая из них может привести к отказу от обслуживания.

 

1.4. Стеганографические протоколы

 

Важное значение для достижения целей стеганографии имеют протоколы. По протоколом понимается «порядок действий, предпринимаемых двумя или более сторонами, предназначенный для решения определенной задачи» [11]. Можно разработать исключительно эффективный алгоритм скрытия информации, но из-за его неправильного применения не добиться своей цели. И протокол и алгоритм есть некоторая последовательность действий. Различие заключается в том, что в протокол должны быть обязательно вовлечены двое или более сторон. При этом предполагается, что участники принимают на себя обязательство следовать протоколу. Также как и алгоритм, протокол состоит из шагов. На каждом шаге протокола выполняются некоторые действия, которые могут заключаться, например, в производстве каких-то вычислений, или осуществлении некоторых действий.

 

1.4.1. Стеганография с открытым ключом

Стеганография с открытым ключом опирается на достижения криптографии последних 25 лет. Понятие «открытый ключ» означает, что для дешифровки сообщения используется другой ключ, чем при его шифровании. При этом один из ключей делается общедоступным, открытым. Криптографическая система с открытым ключом используется, например, при цифровой подписи. При этом сообщение подписывается закрытым ключом, и любой, имеющий соответствующий открытый ключ, может удостовериться в ее подлинности. При шифровании данных используют обратный порядок: сообщение подписывается открытым ключом, а прочитать его может лишь имеющий соответствующий закрытый ключ. Естественно, что из открытого ключа никакими способами нельзя получить закрытый ключ (в вычислительном смысле).

Напомним, что стеганографический ключ не шифрует данные, а скрывает место их нахождения в контейнере. Спрятанные данные могут быть дополнительно зашифрованы обычными методами, но этот вопрос не относится к стеганографии. Для того, чтобы была возможность организации стегоканала, стороны должны, как правило, иметь перед началом сеанса некоторую информацию.

Вернемся к «проблеме заключенных». Предположим, что Алиса и Боб еще во время нахождения на свободе обменялись закрытыми или открытыми ключами друг с другом. Тогда их задача заключается во встраивании сообщений в контейнер в соответствии с ключом. Встроенное сообщение не должно заметно изменять контейнер и обнаруживаться посредством статистических тестов. Если Вилли злоумышленный нарушитель, то у него имеется возможность некоторого искажения сигнала, передаваемого от Алисы к Бобу. Это может привести к потере скрытого сообщения, если не использовать специальные методы (например, помехоустойчивое кодирование, или расширение спектра сигналов).

Возможно ли осуществление скрытой связи между Алисой и Бобом, если у них имеются только открытые ключи друг друга? Оказывается, да. В публикации [11] представлен протокол, следуя которому заключенные могут наладить в этом случае скрытую «переписку». При этом надо отметить, что предположение о том, что Алиса и Боб имеют открытые ключи друг друга не является чем-то необычным. Протокол, приведенный в [11] предполагает наличие пассивного нарушителя и заключается в следующем:

1. Алиса встраивает свое сообщение с использованием известного ей открытого ключа Боба в стегоканал, подверженный наблюдению со стороны Вилли.

2. Предполагается, что Бобу известны детали протокола, он ждет сообщение и, приняв его, извлекает из контейнера с использованием своего закрытого ключа.

Очевидным недостатком этого протокола является то что Алиса никаким путем не может предупредить Боба о начале передачи скрытого сообщения. Поэтому Боб должен подозревать его наличие во всех принятых сообщениях и проверять их. При интенсивном обмене данными, да еще в многопользовательской среде, это может быть невыполнимо.

С другой стороны, то, что Боб проверяет все поступающие данные говорит о том, что он может стать участником стеганографического протокола. При этом у Алисы появляется возможность передать Бобу свой открытый ключ.

Известна также и модификация этого протокола, не требующая предварительного обмена открытыми ключами между Алисой и Бобом:

1. Алиса генерирует на своем компьютере пару открытого и закрытого ключа.

2. Алиса пересылает открытый ключ по каналу Бобу. Эту же информацию получает и Вилли.

3. Боб предполагает, что пересланные данные есть открытый ключ Алисы. С его помощью он шифрует сообщение, состоящее из его открытого ключа для будущей связи и (возможно) краткого «приветствия». Боб пересылает это сообщение Алисе.

4. Алиса знает, что присланные данные содержат открытый ключ Боба, дешифрует их при помощи своего закрытого ключа. У узников есть вся необходимая информация для обеспечения скрытой двусторонней связи. Так как Вилли лишь Наблюдатель, то он не может никоим образом вмешаться и помешать установлению скрытой связи между Алисой и Бобом.

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

В работе [13] представлен протокол, позволяющий решить эту задачу. Он основан на введение в рассмотрение канала с исключительно малой пропускной способностью — надсознательного (supraliminal) канала. Этот канал образуется за счет встраивания скрываемых данных в наиболее важные признаки контейнера, искажение которых приведет к его полной деградации. Дело в том, что Вилли во многих случаях не может вносить значительные помехи в стегоканал, так чтобы передаваемая информация полностью изменялась. Не может по причинам не технического характера, а по юридическим или иным мотивам. Например, если Алиса пересылает Бобу книгу, Вилли не может подменить ее другой. Также недопустимо, например, изменение дипломатических посланий. За счет того, что скрытое сообщение зависит от контейнера, этот тип канала является робастным. По надсознательному каналу передается малый объем внешне незначимых данных. Например, это может быть сеансовый ключ.

Встраивание информации в наиболее важные свойства контейнера — основной принцип применения ЦВЗ. Отличие надсознательного канала заключается в том, что для встраивания и извлечения информации в этом случае не требуется секретный ключ. Местоположение скрываемых бит общеизвестно, а вот удалить их невозможно без разрушения контейнера. Кроме того, ЦВЗ может не нести в себе никакой осмысленной информации, например, быть функцией самого изображения. В случае же надсознательного канала, наоборот, контейнер может быть функцией скрываемого короткого сообщения.

В качестве примера надсознательного канала в [12] приведен такой сценарий. Пусть контейнером является озвученный видеоклип — речь Алисы. В целях стеганографии здесь обычно используются младшие значащие биты отсчетов клипа — то есть, фактически, шум. Принцип построения надсознательного канала иной. Предположим, что каждой букве алфавита сопоставлено некоторое числовое значение. Получив аудиоклип, Боб выбирает из него и выписывает все достаточно длинные слова, скажем, более пяти букв. Далее для каждого слова он находит произведение числовых эквивалентов этих букв по некоторому простому модулю . Упорядоченные значения получившихся чисел могут рассматриваться как представление некоторого целого числа по модулю .

Задача Алисы при подготовке клипа заключается в том, чтобы должным образом составить сообщение и сохранить его осмысленность. Эта задача облегчается тем, что для скрытия сообщения используются только длинные слова, а короткими можно манипулировать произвольно. Составив текст, Алиса осуществляет аудиовидеозапись. Получившийся канал является открытым, так как сама запись, числовые значения букв известны всем. Однако канал является и замаскированным, так как любая запись может интерпретироваться, как содержащая скрытое сообщение. Канал является робастным, так как Вилли достаточно трудно заменить отдельные сообщения, имитируя голос Алисы и движения ее губ.

Как видно из приведенного примера, основная трудность заключается в формировании контейнера, тогда как работа Боба может быть легко автоматизирована. Для практического применения надсознательного канала должны быть автоматизированы обе операции. Надсознательный канал не подходит для скрытой передачи сообщений, так как он обладает малой пропускной способностью и читается Вилли. Однако, он может быть использован для тайного обмена открытыми ключами, несмотря на наличие активного нарушителя.

Протокол обмена следующий [13]:

1. Алиса генерирует пару открытого и закрытого ключей.

2. Алиса вычисляет представительное описание контейнера, соответствующее ее открытому ключу, генерирует контейнер и пересылает его Бобу.

3. Боб извлекает из принятого контейнера открытый ключ Алисы. Он генерирует секретный ключ, шифрует его с помощью открытого ключа Алисы, находит соответствующее получившейся последовательности описание контейнера, генерирует контейнер и пересылает его Алисе.

4. Алиса и Боб теперь могут обмениваться сообщениями, встраиваемыми в контейнер с использованием этого ключа.

Вилли в результате перехвата канала может получить открытый ключ Алисы и зашифрованный этим ключом секретный ключ Боба. Не зная закрытого ключа Алисы он не сможет получить значение секретного ключа.

 

1.4.2. Обнаружение ЦВЗ с нулевым знанием

Робастные ЦВЗ могут применяться в различных приложениях, соответственно, и требования к ним могут предъявляться различные. Можно выделить следующие категории требований к робастным ЦВЗ:

— ЦВЗ обнаруживается всеми желающими. В этом случае он служит для уведомления о собственнике защищаемого контента и для предотвращения непреднамеренного нарушения прав собственника.

— ЦВЗ обнаруживается, по крайней мере, одной стороной. В этом случае его использование связано с поиском нелегально распространяемых копий, например, в сети Интернет.

— ЦВЗ крайне трудно модифицировать или извлечь из контента. В этом случае ЦВЗ служит для аутентификации.

Одновременное выполнение вышеприведенных требований невозможно, так как они являются противоречивыми. Поэтому, в различных приложениях используются как системы ЦВЗ с секретным, так и с общедоступным ключом. Системы с общедоступным ключом находят гораздо большее применение, так как они могут быть использованы как для обнаружения, так и для предотвращения несанкционированного использования контента. Для того, чтобы поисковая система обнаружила ЦВЗ с секретным ключом, ей необходимо проверить каждое изображение на наличие в нем каждого из возможных ЦВЗ, что является вычислительно трудоемкой задачей. В случае же общедоступного ЦВЗ алгоритм обнаружения единственный. Однако, общедоступные ЦВЗ обладают серьезным недостатком: так как их местоположение известно, то их можно без труда извлечь из защищаемого изображения.

Создается впечатление, что ЦВЗ с общедоступным ключом не могут быть робастными. Однако, является ли таковым ЦВЗ с секретным ключом? Да, его местоположение неизвестно, но лишь до тех пор, пока он не «вступает в действие». Как только ЦВЗ начинает выполнять свои функции по защите контента, у атакующего появляется все больше информации о нем, то есть ЦВЗ становится все более «открытым». В главе 2 представлен ряд атак, связанных с выявлением поведения детектора при незначительных модификациях изображения. Таким образом, сама природа ЦВЗ такова, что их в любом случае можно считать общедоступными, несмотря на наличие секретного ключа.

В работе [14] представлена система ЦВЗ, в которой этапы аутентификации и обнаружения разделены. Это делает возможным создание ЦВЗ, который легко обнаруживается, но трудно удаляется. Эта система строится на основе доказательства с нулевым знанием [11].

Представим себе следующую ситуацию. Алиса обладает некоторой информацией и хочет доказать этот факт Бобу. При этом доказательство должно быть косвенным, то есть Боб не должен получить каких-либо новых знаний об этой информации. Такое доказательство и называется доказательством с нулевым знанием. Оно принимает форму интерактивного протокола. Боб задает Алисе ряд вопросов. Если Алиса действительно владеет некоторой информацией, то она ответит на все вопросы правильно; если же она мошенничает, то вероятность правильного угадывания мала и уменьшается с увеличением количества вопросов.

В целом базовый протокол с нулевым знанием строится следующим образом:

1. Алисе известна некоторая информация, являющаяся решением некоторой трудной проблемы. Она использует эту информацию и случайное число для превращения этой трудной проблемы в другую, изоморфную первой и получает ее решение.

2. Боб просит Алису либо доказать, что старая и новая проблемы изоморфны, либо открыть решение новой проблемы и доказать, что оно является таковым. Алиса выполняет просьбу Боба.

3. Этапы 1 и 2 повторяются n раз.

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

Протокол строится следующим образом.

1. Алиса генерирует другое простое число , вычисляет число и посылает его Бобу. (То есть она передает Бобу изоморфную трудную задачу).

2. Боб может попросить Алису:

а) открыть , то есть дать решение изоморфной трудной задачи;

б) открыть , то есть логарифм произведения MN.

3. Алиса выполняет просьбу Боба, и шаги протокола повторяются при другом значении N.

Протоколы доказательства с нулевым знанием могут строиться также на основе использования свойств изоморфизма графов [11] и других трудных задач. В [11] рассмотрены также и слабости этих протоколов.

Итак, в криптографии известна и решена задача доказательства существования некоторой информации без раскрытия сведений о ней. К сожалению, идея доказательства с нулевым знанием не может быть непосредственно применена для построения системы ЦВЗ, из-за специфики последней. Далее рассмотрена эта специфика и возможные модификации протокола доказательства с нулевым знанием для применения в ЦВЗ [14].

В рассмотренном выше протоколе Алиса имеет возможность публиковать открытое число M и различные значения N, а также  и . В случае же системы ЦВЗ вся эта информация должна встраиваться в изображение. Если ее сделать доступной для Боба, тот может просто удалить ее из изображения, так как это не приведет к существенному ухудшению его качества. Возможным выходом являлось бы использование надсознательного канала, то есть ЦВЗ в виде хэш-функции от наиболее значимых признаков изображения. В этом случае удаление ЦВЗ приведет к значительной деградации изображения. Однако, таким образом невозможно встраивать новую информацию, например, вычисленное значение M. По существу, надсознательный канал доступен для Алисы в режиме «только для чтения».

Вначале рассмотрим возможную реализацию протокола с нулевым знанием в известной схеме построения системы ЦВЗ, носящей имя Питаса [15]. В основе схемы Питаса лежит разделение всего множества пикселов на два подмножества, увеличение значений на некоторое число k в одном подмножестве и уменьшение на то же число k - в другом. Таким образом, средние значения двух подмножеств будут отличаться на 2k.

Версия схемы Питаса для протокола с нулевым знанием строится следующим образом. После внесения ЦВЗ в контейнер Алиса выполняет перестановку . Затем она доказывает наличие перестановки ЦВЗ в перестановке контейнера без раскрытия значения ЦВЗ W. Для исключения обмана с ее стороны Алиса должна опубликовать множество сигналов таких, что их скремблированные значения дают множество всех возможных ЦВЗ.

Итак, в соответствии с [14]:

1. Алиса генерирует перестановку, вычисляет последовательность и посылает ее Бобу.

2. Боб теперь знает, как исходный контейнер, так и его перестановку и случайным образом просит Алису:

а) открыть перестановку, чтобы убедиться что нет обмана;

б) показать наличие в .

3. Алиса выполняет просьбу Боба.

4. Алиса показывает, что она не смошенничала и действительно является перестановкой ЦВЗ. Для этого она предъявляет допустимую процедуру скремблирования , такую что .

5. Использованная перестановка больше в протоколе не применяется.

Данный протокол порождает ряд проблем. Во-первых, даже небольшой сдвиг контейнера приведет к рассогласованию значений и . В принципе, эта проблема не самого протокола. Она вызвана чувствительностью схемы Питаса к пространственным сдвигам. Другая проблема состоит в некоторой «утечке» информации о выполненной Алисой перестановке. Дело в том, что значения интенсивностей пикселов при перестановке не изменяются, и атакующий будет использовать эту информацию для сужения круга возможных перестановок. Еще одна слабость протокола заключается в том, что Алиса может найти и использовать такие перестановки, что будет отыскиваться в , и Боб не сможет обнаружить мошенничество.

Поэтому, в [14] был предложен ряд усовершенствований вышеприведенного стеганографического протокола с нулевым знанием, с использованием криптографически сильных перестановок, основанных на сложных проблемах, например, поиска путей на графах.

 

1.5. Некоторые практические вопросы встраивания данных

Часто используют следующий принцип встраивания данных. Пусть сигнал контейнера представлен последовательностью из n бит. Процесс скрытия информации начинается с определения бит контейнера, которые можно изменять без внесения заметных искажений — стегопути. Далее среди этих бит обычно в соответствии с ключом выбираются биты, заменяемые битами ЦВЗ.

Рассмотрим другие возможные способы внедрения в контейнер битов ЦВЗ.

1) Инверсия бита. Значения битов стегопути заменяются на противоположные. При этом «1» может соответствовать замена 0->1, «0» — замена 1->0.

2) Вставка бита. Перед битом стегопути вставляется бит ЦВЗ. При этом значение бита ЦВЗ должно быть противоположно значению бита контейнера.

3) Удаление бита. Выбираются пары «01» или «10» битов стегопути, соответствующие разным значениям бита ЦВЗ. Затем первый бит пары удаляется.

4) Использование бита-флага. При этом на то, что очередной бит контейнера (неизменяемый!) является битом ЦВЗ указывает инверсия предшествующего бита-флага.

5) Применение пороговых бит. Также как и в предыдущем методе используется бит-флаг. Однако, одному биту ЦВЗ соответствует несколько идущих следом за флагом бит (нечетное число). Если среди этих бит больше единиц, то бит ЦВЗ равен «1».

6) Использование табличных значений. Для определения бита ЦВЗ в предыдущем методе, фактически, использовалась проверка на четность. С тем же успехом можно было бы применять и любое другое отображение множества бит в 1 бит, либо находить его значение по таблице.

7) Динамически изменяемая таблица. Метод тот же, что и в предыдущем случае, но таблица изменяется на каждом шаге. Например, использованное значение из таблицы может быть заменено на случайное.

8) Косвенная динамическая таблица. Так как табличные значения (биты контейнера) знает и кодер и декодер, то их можно не передавать.