КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Принципы построения компьютерной стеганографии
Стеганография занимает свою нишу в обеспечении безопасности: она не заменяет, а дополняет криптографию, защищая информацию от злоумышленников. Сокрытие сообщения методами стеганографии значительно снижает вероятность обнаружения самого факта передачи сообщения. А если это сообщение к тому же зашифровано, то оно имеет еще один, дополнительный, уровень защиты. Стеганография бывает полезна, когда необходимо не просто передать секретное сообщение, а секретно передать секретное сообщение, то есть скрыть сам факт передачи секретного сообщения. Такой способ ведения тайной коммуникации, однако, имеет ряд недостатков: О трудно обосновать его стойкость — вдруг злоумышленникам станет известен способ «подмешивания» секретных данных к «болванке» — массиву открытых данных; О при его использовании объем передаваемых или хранимых данных может увеличиваться, что отрицательно сказывается на производительности систем их обработки. В зависимости от способа засекречивания передаваемых сообщений, а именно прячется ли секретное сообщение или оно просто делается недоступным для всех, кроме получателя, можно выделить два класса засекречивания данных — стеганографию и шифрование. Если рассматривать информацию отдельно от ее материального представления, а именно так мы и будем ее рассматривать, то возникает вопрос — где же информацию можно спрятать? Ответ однозначен: только в еще большем массиве информации — как иголку в стоге сена. В этом и заключается принцип действия стеганографии, т.е. стеганография предполагает, что передаваемый текст «растворяется» в сообщении большего размера с совершенно «посторонним» смыслом. Но если взять и извлечь из него некоторые символы по определенному закону, например, — каждый второй, третий, и т.д., то получим вполне конкретное тайное сообщение. Компьютерная стеганография (стеганографические программные продукты) базируется на двух основных принципах: – файлы, содержащие оцифрованное изображение или звук, могут быть до некоторой степени видоизменены без потери своей функциональности, в отличие от других типов данных, требующих абсолютной точности; – органы чувств человека неспособны различить незначительные изменения в цвете изображения или в качестве звука. Например, мы отправляем нашему корреспонденту по электронной почте файл с растровой черно-белой картинкой, в котором наименее значащий бит в коде яркости каждой точки изображения будет элементом нашего тайного сообщения. Получатель письма извлечет все такие биты и составит из них «истинное» сообщение. Картинка, присутствующая здесь только для отвода глаз, так и останется для непосвященных простой картинкой. По аналогии с криптографической системой введем понятие стеганографической системы или, как ее еще называют более сокращенно, стегосистемы. Стеганографическая система, или стегосистема, — это совокупность средств и методов, которые используются для формирования скрытого канала передачи информации. Модель обобщенной стегосистемы представлена на рис. 5.1. При построении любой стегосистемы должны учитываться следующие положения: – противник имеет полное представление о стеганографической системе, деталях ее реализации, и единственной информацией, которая остается неизвестной потенциальному противнику, является ключ, с помощью которого только его держатель может установить факт присутствия и содержание скрытого сообщения; – если противник каким-то образом узнает о факте существования скрытого сообщения, это не должно позволить ему извлечь подобные сообщения в других данных до тех пор* пока ключ хранится в тайне; – потенциальный противник должен быть лишен каких-либо технических и иных преимуществ в распознавании или раскрытии содержания тайных сообщений. В стегосистеме в качестве данных может использоваться любая информация: текст, сообщение, изображение и т. п. В общем же случае, для обозначения скрываемой информации, целесообразно использовать слово «сообщение», так как сообщением может быть как текст или изображение, так и, например, аудио данные. В современной компьютерной стеганографии существует два основных типа файлов: сообщение — файл, который предназначен для скрытия, и контейнер — файл, который может быть использован для скрытия в нем сообщения. Сообщение, которое необходимо передать отправителю, с помощью специального программного обеспечения встраивается в контейнер. Контейнер — любая информация, предназначенная для сокрытия тайных сообщений. Данные контейнера должны быть достаточно шумными, чтобы небольшое изменение в их беспорядочности не могло быть заметным. Биты контейнера, хотя и являются шумом сточки зрения точности измерений, могут иметь некоторые специальные статистические характеристики. Предполагается, что кодирование тайного сообщения должно воспроизводить характеристики шума контейнера. Цель труднодостижимая, но реальная. Поэтому выбор контейнера оказывает существенное влияние на надежность всей стегосистемы и возможностьобнаружения факта передачи скрытого сообщения. Например, опытный глаз цензора с художественным образованием легко обнаружит изменение цветовой гаммы при внедрении сообщения в репродукцию «Мадонны» Рафаэля или «Черного квадрата» Малевича. Возможны следующие варианты контейнеров: – контейнер генерируется самой стегосистемой; – контейнер выбирается из некоторого множества контейнеров; – контейнер поступает извне; – контейнер, получаемый с помощью моделирования шумовых характеристик. Примером генерации контейнера самой стегосистемой может служить программа MandelSteg,>B которой в качестве контейнера для встраивания сообщения генерируется фрактал Мандельброта. Такой подход получения стегосообщения можно назвать конструирующей стеганографией. Если используется выборка контейнера из некоторого множества, то в этом случае первоначально генерируется большое число альтернативных контейнеров, чтобы затем выбрать наиболее подходящий для сокрытия сообщения. Такой подход к выбору контейнера называют селектирующей стеганографией. В данном случае при выборе оптимального контейнера из множества сгенерированных важнейшим требованием является естественность контейнера. Единственной же проблемой остается то, что даже оптимально организованный контейнер позволяет спрятать незначительное количество данных при очень большом объеме самого контейнера. В случае, когда контейнер поступает извне, отсутствует возможность выбора контейнера и для сокрытия сообщения берется первый попавшийся контейнер, не всегда подходящий к встраиваемому сообщению. Такой подход называется безальтернативной стеганографией. Следующий шаг — моделирование характеристик шума контейнера. Подражательная функция должна быть построена так, чтобы не только кодировать секретное сообщение, но и придерживаться модели первоначального шума. В предельном случае целое сообщение конструируется в соответствии с моделью шума. Такой подход называют конструирующей стеганографией, и он также имеет много недостатков. Его трудно совместить с сильным алгоритмом шифрования, да и моделирование шума или компонентов ошибок в данных — занятие не из легких. Формирование модели требует значительных усилий, творческой работы над каждым каналом связи или контейнером. Поскольку попытки подражания первоначальному шуму либо ведут к сомнительной безопасности или к слишком малому диапазону рабочих частот для большинства практических применений, наиболее привлекательной остается следующая базовая процедура. Выбирается класс достаточно шумных контейнеров и идентифицируются биты шума. Затем определяется, какую порцию шумовых битов контейнера можно заменить псевдослучайными данными без значительного изменения его статистических характеристик. Так, если контейнер представляет собой цифровую фотографию, нас должны интересовать младшие биты градаций серой шкалы или RGB-значений при цветном изображении, либо коэффициенты Фурье в JPEG-формате изображении. Изменяя в среднем, допустим, только 100-й пиксель изображения, в одном мегабайте несжатого изображения можно спрятать примерно один килобайт тайных данных. Для дополнительной безопасности и придания тайному сообщению вида случайных данных оно должно быть зашифровано сильным криптоалгоритмом. Замена псевдослучайными битами некоторых наиболее шумных битов контейнера только немного увеличит уровень шума сообщения, Включение открытого текста в контейнер может заметно изменить его статистические характеристики. Более того, последовательность скрывающих битов должна выбираться псевдослучайным способом как функция секретного ключа. Иначе противник, имеющий алгоритм, без труда вскроет контейнер. Но и шифрование с ключом не освобождает от проблем. Если скрывающие биты в подозреваемом сообщении имеют некоторые статистические отклонения от других аналогичных сообщений, то противник получит все основания для вывода, что оно содержит скрытые данные. Тогда путем дополнительного зашумления он может исказить сообщение и этим фактически его уничтожить. По протяженности контейнеры можно подразделить на два типа: – непрерывные (потоковые); – ограниченной (фиксированной) длины. Они представляют собой или поток непрерывных данных, подобно цифровой телефонной связи, или файл, подобный растровому изображению. Особенностью потокового контейнера является то, что невозможно определить его начало или конец. Более того, нет возможности узнать заранее, какими будут последующие шумовые биты, что приводит к необходимости включать скрывающие сообщение биты в поток в реальном масштабе времени, а сами скрывающие биты выбираются с помощью специального генератора, задающего расстояние между последовательными битами в потоке. Такой способ называют произвольно-интервальным методом. Следует заметить, что в достаточно длинном контейнере можно скрывать несколько сообщений. В непрерывном потоке данных самая большая трудность для получателя заключается в определении момента, когда же начинается скрытое сообщение. В простом случае, если поток данных имеет конечную длину и часто вновь открывается, тайное сообщение может начинаться при открытии сеанса. При наличии в потоковом контейнере сигналов синхронизации или границ пакета скрытое сообщение начинается сразу же после одного из них. В свою очередь, для отправителя возможны проблемы, если он не уверен в том, что поток контейнера будет достаточно долгим для размещения целого тайного сообщения. При использовании контейнеров фиксированной длины, которые свободны от недостатков потоковых контейнеров, отправитель заранее знает размер файла и может выбрать скрывающие биты в подходящей псевдослучайной последовательности. Поскольку контейнер известен заранее, есть время оценить его эффективность применительно к выбранному алгоритму сокрытия информации. С другой стороны, контейнеры фиксированной длины имеют ограниченный объем и иногда встраиваемое сообщение может не поместиться в файл-контейнер. Другой недостаток заключается в том, что расстояния между скрывающими битами равномерно распределены между наиболее коротким и наиболее длинным заданными расстояниями, в то время как истинный случайный шум будет иметь экспоненциальное распределение длин интервала. Конечно, можно породить псевдослучайные экспоненциально распределенные числа, но этот путь обычно слишком трудоемок. Однако на практике чаще всего используются именно контейнеры фиксированной длины, как наиболее распространенные и доступные. Для большинства современных методов, используемых для сокрытия сообщения в цифровых контейнерах, имеет место зависимость надежности системы от объема встраиваемых сообщений, представленная на рис. 5.2. Данная зависимость показывает, что при увеличении объема встраиваемых сообщений снижается надежность системы (при неизменности размера контейнера). Таким образом, используемый в стегосистеме контейнер накладывает ограничения на размер встраиваемых данных. В любом случае контейнер без встроенного сообщения — это пустой контейнер, а контейнер, содержащий встроенную информацию, — это заполненный или стегоконтейнер. Встроенное (скрытое) сообщение, находящееся в стегоконтейнере, передается от отправителя к получателю по каналу передачи, который называется стеганографическим каналом или просто стегоканалом. Встраивание сообщений в контейнер происходит с использованием специального стегоключа. Под ключом понимается секретный элемент, который определяет порядок занесения сообщения в контейнер. По аналогии с криптографией, по типу стегоключа все стегосистемы можно подразделить на два типа: – с секретным ключом; – с открытым ключом. В стегосистеме с секретным ключом используется один ключ, который должен быть определен либо до начала обмена секретными сообщениями, либо передан по защищенному каналу. В стегосистеме с открытым ключом для встраивания и извлечения сообщения используются разные ключи, которые различаются таким образом, что с помощью вычислений невозможно вывести один ключ из другого. Поэтому один ключ (открытый) может передаваться свободно по незащищенному каналу связи. Кроме того, данная схема хорошо работает и при взаимном недоверии отправителя и получателя. В зависимости от количества уровней защиты информации (например, встраивание предварительно зашифрованного сообщения) в стегосистеме может быть один или несколько стегоключей. Любая используемая стегосистема должна отвечать следующим требованиям: – свойства контейнера должны быть модифицированы, чтобы изменение невозможно было выявить при визуальном контроле; – стегосообщение должно быть устойчиво к искажениям, в том числе и злонамеренным; – для сохранения целостности встраиваемого сообщения необходимо использование кода с исправлением ошибок; – для повышения надежности встраиваемое сообщение должно быть продублировано. Модификация свойств контейнера определяет качество сокрытия внедряемого сообщения: для обеспечения беспрепятственного прохождения стегосообщения по каналу связи оно никоим образом не должно привлечь внимание атакующего. В ходе процесса передачи сообщение (звук или другой контейнер) может претерпевать различные трансформации: уменьшаться или увеличиваться, преобразовываться в другой формат и т. д. Кроме того, оно может быть сжато, в том числе и с использованием алгоритмов сжатия с потерей данных. Именно поэтому стегосообщение должно быть устойчивым к такого рода искажениям. Для повышения целостности и надежности передачи стегосообщения рекомедует-ся использовать коды, обнаруживающие и исправляющие ошибки, и передавать сообщение неоднократно, изменяя пути следования. В настоящее время можно выделить (рис. 5.3) три, тесно связанных между собой и имеющих одни корни, направления приложения стеганографии: – сокрытие данных (сообщений); – цифровые водяные знаки; – заголовки. Сокрытие внедряемых данных, которые в большинстве случаев имеют большой объем, предъявляет серьезные требования к контейнеру. Размер контейнера в несколько раз должен превышать размер встраиваемых данных. Цифровые водяные знаки используются для защиты авторских или имущественных прав на цифровые изображения, фотографии или другие оцифрованные произведения искусства. Основными требованиями, которые предъявляются к таким встроенным данным, являются надежность и устойчивость к искажениям: Цифровые водяные знаки имеют небольшой объем, однако, с учетом указанных выше требований, для их встраивания используются более сложные методы, чем для встраивания просто сообщений или заголовков. Заголовки используются, в основном, для маркирования изображений в больших электронных хранилищах (библиотеках) цифровых изображений, аудио- и видеофайлов. В данном случае стеганографические методы используются не только для внедрения идентифицирующего заголовка, но и иных индивидуальных признаков файла. Внедряемые заголовки имеют небольшой объем, а предъявляемые к ним требования минимальны: заголовки должны вносить незначительные искажения и быть устойчивы к основным геометрическим преобразованиям. Каждое из перечисленных выше приложений требует определенного соотношения между устойчивостью встроенного сообщения к внешним воздействиям (в том числе и стегоанализу) и размером самого встраиваемого сообщения. Далее мы рассмотрим принципы и методы компьютерной стеганографии. Как и любой инструментарий, стеганографические методы требуют к себе серьезного внимания и осторожного обращения: они могут быть использованы как для целей защиты, так и для целей нападения.
Дата добавления: 2014-01-07; Просмотров: 3922; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |