Компьютерная стеганография базируется на двух основных принципах:
- файлы, содержащие оцифрованное изображение или звук, могут быть до некоторой степени видоизменены без потери своей функциональности, в отличие от других типов данных, требующих абсолютной точности;
- органы чувств человека неспособны различить незначительные изменения в цвете изображения или в качестве звука.
Модель обобщенной стегосистемы представлена на рис. 1.
Сообщение, которое необходимо передать отправителю, с помощью специального программного обеспечения встраивается в контейнер. Контейнер — любая информация, предназначенная для сокрытия тайных сообщений. Данные контейнера должны быть достаточно шумными, чтобы небольшое изменение в их беспорядочности не могло быть заметным. Биты контейнера, хотя и являются шумом сточки зрения точности измерений, могут иметь некоторые специальные статистические характеристики. Поэтому выбор контейнера оказывает существенное влияние на надежность всей стегосистемы и возможность обнаружения факта передачи скрытого сообщения. Например, опытный глаз цензора с художественным образованием легко обнаружит изменение цветовой гаммы при внедрении сообщения в репродукцию «Мадонны» Рафаэля или «Черного квадрата» Малевича.
Рис. 1.Обобщенная стегосистема
Сначала выбирается класс достаточно шумных контейнеров и идентифицируются биты шума. Затем определяется, какую порцию шумовых битов контейнера можно заменить псевдослучайными данными без значительного изменения его статистических характеристик. Так, если контейнер представляет собой цифровую фотографию, нас должны интересовать младшие биты градаций серой шкалы или RGB-значений при цветном изображении, либо коэффициенты Фурье в JPEG-формате изображений. Изменяя в среднем, допустим, только 100-й пиксель изображения, в 1Мб несжатого изображения можно спрятать примерно 1Кб тайных данных.
Для дополнительной безопасности и придания тайному сообщению вида случайных данных оно должно быть зашифровано сильным криптоалгоритмом.
Для большинства современных методов, используемых для сокрытия сообщения в цифровых контейнерах, имеет место зависимость надежности системы от объема встраиваемых сообщений, представленная на рис. 2.
Данная зависимость показывает, что при увеличении объема встраиваемых сообщений снижается надежность системы (при неизменности размера контейнера).
Рис. 2.Зависимость надежности стегосистемы
от объема встраиваемых сообщений
Встраивание сообщений в контейнер происходит с использованием специального стегоключа. По аналогии с криптографией, по типу стегоключа все стегосистемы можно подразделить на два типа:
- с секретным ключом;
- с открытым ключом.
В стегосистеме с секретным ключом используется один ключ, который должен быть определен либо до начала обмена секретными сообщениями, либо передан по защищенному каналу. В стегосистеме с открытым ключом для встраивания и извлечения сообщения используются разные ключи, которые различаются таким образом, что с помощью вычислений невозможно вывести один ключ из другого. Поэтому один ключ (открытый) может передаваться свободно по незащищенному каналу связи. Кроме того, данная схема хорошо работает и при взаимном недоверии отправителя и получателя.
Модификация свойств контейнера определяет качество сокрытия внедряемого сообщения: для обеспечения беспрепятственного прохождения стегосообщения по каналу связи оно никоим образом не должно привлечь внимание атакующего.
В ходе процесса передачи сообщение (звук или другой контейнер) может претерпевать различные трансформации: уменьшаться или увеличиваться, преобразовываться в другой формат и т. д. Кроме того, оно может быть сжато, в том числе и с использованием алгоритмов сжатия с потерей данных. Именно поэтому стегосообщение должно быть устойчивым к такого рода искажениям.