В качестве детектора ЦВЗ обычно используют корреляционный приемник, изображенный на рис. 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] приведен такой сценарий. Пусть контейнером является озвученный видеоклип — речь Алисы. В целях стеганографии здесь обычно используются младшие значащие биты отсчетов клипа — то есть, фактически, шум. Принцип построения надсознательного канала иной. Предположим, что каждой букве алфавита сопоставлено некоторое числовое значение. Получив аудиоклип, Боб выбирает из него и выписывает все достаточно длинные слова, скажем, более пяти букв. Далее для каждого слова он находит произведение числовых эквивалентов этих букв по некоторому простому модулю . Упорядоченные значения получившихся чисел могут рассматриваться как представление некоторого целого числа по модулю .