Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Стеганография Довгань.docx
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
44 Кб
Скачать
☆

Контейнеры

Сообщение, которое необходимо передать отправителю, с помощью специального программного обеспечения встраивается в контейнер.

Контейнер - любая информация, предназначенная для сокрытия тайных сообщений. Данные контейнера должны быть достаточно шумными, чтобы небольшое изменение в их беспорядочности не могло быть заметным. Биты контейнера, хотя и являются шумом сточки зрения точности измерений, могут иметь некоторые специальные статистические характеристики. Предполагается, что кодирование тайного сообщения должно воспроизводить характеристики шума контейнера. Цель труднодостижимая, но реальная. Поэтому выбор контейнера оказывает существенное влияние на надежность всей стегосистемы и возможность обнаружения факта передачи скрытого сообщения. Например, опытный глаз цензора с художественным образованием легко обнаружит изменение цветовой гаммы при внедрении сообщения в репродукцию «Мадонны» Рафаэля или «Черного квадрата» Малевича.

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

- контейнер генерируется самой стегосистемой;

- контейнер выбирается из некоторого множества контейнеров;

- контейнер поступает извне;

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

Примером генерации контейнера самой стегосистемой может служить программа MandelSteg, в которой в качестве контейнера для встраивания сообщения генерируется фрактал Мандельброта. Такой подход получения стегосообщения можно назвать конструирующей стеганографией.

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

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

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

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

Выбирается класс достаточно шумных контейнеров и идентифицируются биты шума. Затем определяется, какую порцию шумовых битов контейнера можно заменить псевдослучайными данными без значительного изменения его статистических характеристик. Так, если контейнер представляет собой цифровую фотографию, нас должны интересовать младшие биты градаций серой шкалы или RGB-значений при цветном изображении, либо коэффициенты Фурье в JPEG-формате изображений. Изменяя в среднем, допустим, только 100-й пиксель изображения, в одном мегабайте несжатого изображения можно спрятать примерно один килобайт тайных данных.

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

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

По протяженности контейнеры можно подразделить на два типа:

- непрерывные (потоковые);

- ограниченной (фиксированной) длины.

Они представляют собой или поток непрерывных данных, подобно цифровой телефонной связи, или файл, подобный растровому изображению.

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

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

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

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

Для большинства современных методов, используемых для сокрытия сообщения в цифровых контейнерах, имеет место зависимость надежности системы от объема встраиваемых сообщений.

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

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

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

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

По аналогии с криптографией, по типу стегоключа все стегосистемы можно подразделить на два типа:

- с секретным ключом;

- с открытым ключом.

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

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

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