Шифрование стеганография. Стеганография. Индивидуальный отпечаток в сэдо

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

F5 была разработана Андреасом Вестфилдом (Andreas Westfield) и работает как DOS-клиент. Также была разработана «парочка» GUI: первая утилита - "Frontend", созданная Кристианом Воном (Christian Wohne), и вторая - "Stegano", чьим автором является Томас Бьель (Thomas Biel). Мы испытывали F5, beta version 12. Оказалось, очень легко закодировать сообщение в формате JPEG, даже когда релиз немецкий. Пользователь очень легко может это сделать, следуя инструкциям мастера, указывая путь к картинке(мы использовали простой текстовый файл, созданный в блокноте), вводя ключевое слово. Как вы можете сами убедиться, сложно сказать по двум следующим картинкам, содержат ли они вложенное сообщение, или нет.

Рис.1 Без сообщения

Рис.2 с вложенным файлом

Конечно же, вложенный файл был очень маленьким(состоял всего из одной строки "This is a test. This is only a test."), так что не слишком много пикселей пришлось заменить, что бы спрятать сообщение. А что будет, если мы попытаемся спрятать больший документ? F5 работает только с текстовыми файлами. При попытке спрятать более объемный «вордовский» файл, то хоть программа и восприняла его, но восстановить не сумела. Тем не менее, большие файлы похоже тоже можно, как и маленькие, вкладывать в изображения.

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

Утилита MP3Stego, которая позволяет прятать данные в файлах формата MP3, сработала очень хорошо. Процесс шифрования происходит таким образом: вы шифруете файл(текстовый, например), как.WAV файл, который затем преобразовывается в формат MP3. Единственная проблемка, которая возникла – чтобы зашифровать данные большого размера, необходимо иметь пропорциональный к количеству данных файл. Например, маленькое сообщение, которое мы использовали в предыдущих опытах оказалось слишком большим для WAV-файла(размер WAV-файла составлял 121КВ, а текстового файла – 36 байт). Для завершения опыта пришлось сократить текстовый файл до 5 байт – только слово «test». Мы нашли соответствующий файл размером 627 КВ. Конечный MP3 файл занял 57КВ.

Steganos Suite – это коммерческий пакет, объединивший множество утилит. В дополнение к изящной деструктивной функции трассировки (для Интернета) и утилиты для уничтожения файлов, программа так же обладает так называемым файловым менеджером, что позволяет пользователям шифровать и скрывать файлы на своем винчестере. Пользователь выделяет папку или файл, которые следует сокрыть и файл – «носильщик» информации - обязательно графический или музыкальный. Программа также позволяет самим пользователям создавать файлы при помощи микрофона или сканера. Если у вас нет подходящего файла, встроенный файловый менеджер умеет искать нужный файл на вашем винчестере. Эта утилита, в отличие от тех, которые мы тестировали, способна работать с разными файловыми форматами(dll, dib). Так что, если вам необходим качественный продукт для шифрования информации, то вам придется выложить деньги за коммерческий пакет.

Стеганография и безопасность

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

    Шифрование -– процесс преобразования информации посредством ряда математический операций. Результатом шифрования является зашифрованный текст. Зашифрованные данные могут быть прочитаны лишь при условии наличия необходимого ключа. Шифрование не прячет данные, но усложняет их чтения.

    Скрытые директории (Windows) - Windows предлагает возможность скрытия файлов. Использовать эту возможность очень легко: просто в свойствах папки или файла проставить атрибут «скрытый» и надеяться, что никто не отобразит все типы файлов в эксплорере.

    Скрытые директории (Unix) – на платформах Unix в существующих директория, содержащих множество файлов, как, на пример, /dev или создав свою директорию, в названии которой использовав три точки,(обычно используют оду или две).

    Скрытые каналы – Некоторые утилиты используются для передачи ценных данных, которые внешне выглядят как обыкновенный сетевой трафик. Одна из таких утилит – Loki – способна скрывать данные в ICMP трафике.

Защита от стеганографии

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

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

В исследовании, проведенным Стефаном Хетцлем на его сайте, идет речь о двух методах стеганографии, которые, в свою очередь, являются средствами обнаружения ее. Это – визуальная и статистическая атака. «Идея статистической атаки – сравнение частоты распределения цветов для возможного носителя скрытой информации и теоретически ожидаемая частота распределения цветов для файла–носителя скрытой информации». Это возможно не самый быстрый метод защиты, но если возникаю подозрения на счет такого рода деятельности, то этот метод может быть самым эффективным. Специально для JPEG-файлов существует утилита , которая способна определять следы стеганографии в этих файлах. Родственная утилита к , с называнием Stegbreak способна расшифровывать и находить возможную информацию в подозрительном файле.

Заключение

Стеганография – один из самых увлекательных и эффективных методов сокрытия данных, которые использовались за всю историю человечества. Методы, способны разоблачить хитрые тактики злоумышленников несовершенны, но радует то, что такие методы существуют. Есть очень много причин, по которым следует использовать стеганографию (подписи, пароли, ключи), но главная – это легкость в обращении и сложность при обнаружении. Чем больше вы знаете о методах стеганографии, тем больше у вас шансов не попасть впросак.

Цифровая стеганография Грибунин Вадим Геннадьевич

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Из книги Интерфейс: новые направления в проектировании компьютерных систем автора Раскин Джефф

3.1. Терминология и условные обозначения Мир делится на людей, которые думают, что они правы. Дидр Мак-Грат Содержание (или контент) – это информация, которая находится в компьютере или другом устройстве, предназначенном для обработки информации, и которая является для

Из книги Информационная технология ПРОЦЕСС СОЗДАНИЯ ДОКУМЕНТАЦИИ ПОЛЬЗОВАТЕЛЯ ПРОГРАММНОГО СРЕДСТВА автора Автор неизвестен

Е.2 Терминология В части терминологии, используемой в документах, необходимо руководствоваться следующими правилами:a) применять общие и нетехнические термины в соответствии с их определениями, установленными в общих словарях;b) создавать глоссарии (словники),

Из книги Метрология, стандартизация и сертификация: конспект лекций автора Демидова Н В

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

Из книги Метрология, стандартизация и сертификация автора Демидова Н В

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

Из книги Операторы коммерческого учета на рынках электроэнергии. Технология и организация деятельности автора Осика Лев Константинович

Глава 3 ПРЕДМЕТ КОНКУРЕНТНОЙ ДЕЯТЕЛЬНОСТИ КОММЕРЧЕСКИЙ учет и учетная политика на оптовом и розничном рынках электроэнергииОпределяющим предметом бизнеса ОКУ является коммерческий учет, поэтому необходимо более подробно остановиться на всех аспектах учета,

Из книги Управление качеством автора Шевчук Денис Александрович

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

Из книги Создаем робота-андроида своими руками автора Ловин Джон

Ограничения области применения Если вы хотите достичь профессионального уровня выполнения автоматизированных действий или «оживления» предметов, то, так сказать, для поддержания марки, точность позиционирования при выполнении движений в каждый момент времени должна

Из книги Феномен науки [Кибернетический подход к эволюции] автора Турчин Валентин Фёдорович

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

Из книги Учебник по ТРИЗ автора Гасанов А И

1. Предмет ТРИЗ Гасанов А. И.

Из книги Цифровая стеганография автора Грибунин Вадим Геннадьевич

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

Из книги Руководство слесаря по замкам автора Филипс Билл

Из книги Материаловедение. Шпаргалка автора Буслаева Елена Михайловна

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

Из книги Очень общая метрология автора Ашкинази Леонид Александрович

43. Маркировка, структура, свойства и области применения цветных металлов и их сплавов К цветным металлам относятся медь, алюминий, магний, титан, свинец, цинк и олово, которые обладают ценными свойствами и применяются в промышленности, несмотря на относительно высокую

Из книги автора

48. Виды композиционных материалов. Строение, свойства, области применения Композиционные материалы состоят из двух компонентов, объединенных различными способами в монолит при сохранении их индивидуальных особенностей.Признаки материала:– состав, форма и

Из книги автора

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

Из книги автора

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

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

Так какие же способы спрятать информацию есть в нашем распоряжении…

Способ 1 - Банальный

Самый простой способ - это переименовать файл. К примеру у вас есть картинка, которую надо спрятать. Вы просто переименовываете расширение файла и картинка больше не определяется системой как картинка. Но, понятное дело, что это защита от дурака. Если вы, к примеру, переименуете файл JPG в RAR, то такой RAR архив нельзя будет открыть, WinRar поругается на то, что этот архив битый, что вызовет подозрение и более глубокое изучение данного файла.

Способ 2 - Банальный, продвинутый

Ещё один простой способ, но всё же более продвинутый - это склеивание двух разных файлов в один. Простейший пример: добавление RAR архива в конец JPEG изображения. Такое изображение будет без проблем открываться в любой программе для просмотра/редактирования картинок, а также будет открываться и в программе WinRar. Дело в том, что почти все программы для работы с архивами рассчитаны на то, что архив начинается не с начала файла, так как возможно, что архив заключен в самораспаковывающуюся оболочку. Но недостатки данного способа в том, что такое склеивание можно легко заметить. К примеру если картинка имеет размер 200х200 и при этом весит 2 мегабайта, то тут же возникают подозрения. К тому же все форматы (контейнеры) обычно имеют четкую структуру и если вдруг в файле имеется какая то избыточная информация, то это легко обнаружить.

Поэтому нам нужен способ скрытия информации, который не нарушает структуру файла выбранного формата.

Способ 3 - LSB

Как уже писалось ранее, данный способ очень прост в реализации, при этом он не нарушает правила контейнера и файл не хранит избыточную информацию. Но данный способ имеет и не мало минусов. Во-первых он применим лишь к малому количеству контейнеров. К примеру его нельзя применить к формату JPG, MP3 или AVI. А ведь как правило файлы именно этих форматов хранятся сотнями на наших компьютерах и именно там удобнее всего прятать информацию. Лично я сразу заподозрил бы не ладное, найдя на компьютере большую библиотеку картинок в формате BMP. Также этот способ выдает себя с потрохами на изображениях с однородной поверхностью. А попробуйте применить данный метод к MP3 файлу. Изменение всего одного бита раз в 2 и даже более байтов, приведет к неминуемой порче аудио данных.

Для желающих поиграться с этим способом могу предложить плагин для Total Commander"a который позволяет прятать данные в некоторых контейнерах картинок, а также в WAV (при условии, что аудио данные закодированы кодеком PCM).

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

Способ 4 - Мета данные

Очень многие форматы могут хранить определенные мета-данные. Плюс этого способа в том, что он так же не нарушает формат файла, а также работа с этими мета-данными обычно хорошо задокументирована и есть уже готовые библиотеки позволяющие быстро написать программу для хранения своих данных в этих файлах. Почти все медиа-форматы имеют поддержку мета-данных. Однако далеко не всегда там можно хранить данные так, чтоб их не было видно. Так где же можно попробовать хранить секретные данные:
MP3
Только недавно на хабре появился пост Прячем текст в MP3 где описывается реализация на PHP хранении своей информации в тэге ID3v1. Но дело в том, что тэг ID3v1 имеет очень жесткие ограничения и много информации там не сохранить. К тому же в любом нормальном медиа-проигрывателе все ваши данные видны как на ладони. Совсем другое дело тэг ID3v2.4 который позволяет хранить данные гораздо больших размеров, а также позволяет сохранять какие либо не стандартные данные. К примеру некоторые программы хранят там настройки громкости и нормализации для каждого отдельного файла. Медиа-плееры обычно не отображают не известные им параметры.
Раз уж мы говорим об MP3, то стоит упомянуть и про малоизвестный тэг Lyrics3, который был создан для хранения в файле текста песен, а также как расширение тэга ID3v1 (к примеру позволял сохранять более длинное название песни), но выход стандарта тэга ID3v2 так и не дал тэгу Lyrics3 получить широкое распространение. Но как не странно, большое количество MP3 файлов которые сейчас можно найти на просторах интернета, содержат в себе этот тэг (хотя кроме название песни там больше ничего не хранится).
JPEG
У JPEG формата есть поддержка EXIF тэга. Данные в этом тэге хранятся парами ключ=значение. В теории нет никаких проблем добавить туда какой то не стандартный ключ содержащий ваши зашифрованные данные. Программа работающая с этим тэгом, наткнувшись на этот ключ, скорей всего просто проигнорирует его и не отобразит.
AVI
Не многим известно, что файлы формата AVI также имеют поддержку мета-данных, причем хранить там можно много всего. Как и в MP3 и JPEG можно создать какой то свой ключ, который будет просто проигнорирован программами работающими с мета-данными. Могу порекомендовать хорошую программу для просмотра мета-данных AVI файлов: abcAvi Tag Editor

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

Способ 5

Ну и напоследок хочу рассказать про один замечательный способ хранения секретных данных в MP3 файлах. Реализован он в программе MP3Stego . К сожалению автор данной программы не обновлял проект с 2006 года. Идея заключается в том, что данные сначала шифруются, а затем в сердце процесса кодирования MP3 файла (из WAV) подмешиваются в конечный результат. В итоге получается обычный MP3 файл, без заметных для слуха искажений, однако хранящий в себе закодированные данные.

Теги: Добавить метки

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

Стеганография в далеком и недалеком прошлом

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

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

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

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

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

Нередко для передачи важных данных использовался посторонний текст (книга, заметка в газете, безобидное письмо о погоде и пр.), буквы и знаки которого кодировали конфиденциальную информацию. И здесь простор для фантазии просто огромен: скрытый текст может считываться по первым буквам слов (принцип акростиха) или определяться по заранее оговоренному правилу. После изобретения общепринятых кодов (например, азбуки Морзе) стало возможным распознавать секретный текст по длинам слов: 4-5 букв - тире, 5-6 букв - точка, 7 и более - пробел, меньше 4 букв - игнорируются). В рукописном тексте значение могли иметь особенности начертания букв - размеры, завитки и т.д. Всего и не перечислишь.

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

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

Современные подходы к стеганографии

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

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

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

Фантазия разработчика может пригодиться в случае необходимости спрятать в тексте двоичные данные. Если в качестве стеганограммы выступает произвольный файл, он рассматривается в виде последовательности одиночных битов или короткой серии битов (группы по два-три бита). Для их кодирования используют пробелы (один пробел - 0, два - 1) или непечатаемые символы (например, нулевой символ). Для решения данной задачи вполне может подойти приведенный выше пример с азбукой Морзе: тогда для кодирования коротких серий битов будут использоваться длины слов или их первые буквы.

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

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

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

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

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

3.2. Метод наименее значащих битов (Least Significant Bit, LSB) наиболее распространен в электронной стеганографии. Он основан на ограниченных возможностях человеческих органов чувств, в силу чего люди не способны различать незначительные вариации цветов или звуков. Для простоты описания покажем принцип работы этого метода на примере 24-битного растрового RGB-изображения. Одна точка изображения в этом формате кодируется тремя байтами, каждый из которых отвечает за интенсивность одного из трех составляющих цветов (рис. 1).

В результате смешения цветов из красного (R), зеленого (G) и синего (B) каналов пиксел получает нужный оттенок. Чтобы нагляднее увидеть принцип действия метода LSB, распишем каждый из трех байтов в битовом виде (рис. 2). Младшие разряды (на рисунке они расположены справа) в меньшей степени влияют на итоговое изображение, чем старшие. Из этого можно сделать вывод, что замена одного или двух младших, наименее значащих битов, на другие произвольные биты настолько незначительно исказит оттенок пиксела, что зритель просто не заметит изменения.

Допустим, нам нужно скрыть в данной точке изображения шесть бит: 101100. Для этого разобьем их на три пары (рис. 3) и заместим ими по два младших бита в каждом канале (рис. 4).

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

Рис. 5. Слева — оригинальный цвет, справа — цвет после модификации

Давайте теперь подсчитаем полезный объем такого RGB-контейнера. Занимая два бита из восьми на каждый канал, мы будем иметь возможность спрятать три байта полезной информации на каждые четыре пиксела изображения, что соответствует 25% объема картинки. Таким образом, имея файл изображения размером 200 Кбайт, мы можем скрыть в нем до 50 Кбайт произвольных данных так, что невооруженному глазу эти изменения не будут заметны.

Модификацией метода LSB являются алгоритмы стеганографии, разработанные для компрессированных мультимедиаданных. В частности, довольно популярен у разработчиков стеганографического программного обеспечения алгоритм сокрытия данных в изображениях формата JPEG. Поскольку преобразование картинки в JPEG происходит с потерей информации, закладывать стеганограмму в исходное изображение не имеет смысла, так как потом ее невозможно будет восстановить. Выход нашелся в самом алгоритме сжатия - не вдаваясь в подробности спецификации JPEG, скажем, что сжатие проходит здесь в три этапа: дискретно-косинусоидальное преобразование (ДКП), квантование и вторичное сжатие (кодирование Хаффмана), а третья стадия проходит без потери данных, поэтому в качестве контейнера используются коэффициенты ДКП после квантования, то есть пользовательской информацией замещаются младшие разряды этих коэффициентов. Такие возможности предоставляются практически всеми схемами сжатия с потерей информации, включая аудио- и видеоформаты.

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

Обнаружение стеганограмм

ринцип действий, направленных на обнаружение стеганограмм, в общем виде не представляет собой ничего сложного. Для начала нужно найти все места возможных закладок инородной информации, которые допускает формат файла-контейнера. Далее требуется извлечь данные из этих мест и проанализировать их свойства на соответствие стандартным значениям. Для решения первой задачи достаточно внимательно изучить спецификации используемых форматов файлов, а вторая обычно решается методами статистического анализа. Например, если необходимо спрятать некий текстовый фрагмент, то такое послание будет содержать только символьную информацию: 52 знака латиницы, 66 знаков кириллицы, знаки препинания и некоторые служебные символы. Статистические характеристики такого сообщения будут резко отличаться от характеристик случайной последовательности байтов, которую должны напоминать младшие биты RGB-картинки, собранные вместе (для метода LSB).

Повышение надежности сокрытия данных и пресечение такового

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

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

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

Относительно использования метода LSB можно дать еще несколько простых советов, которые позволят вам обойти стеганографический контроль:

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

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

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

Стеганография предоставляет различные по сложности и надежности инструменты для тех, кто хочет сохранить свою переписку в тайне - можно воспользоваться одной из десятков готовых бесплатных или коммерческих программ, а можно реализовать описанные выше алгоритмы самостоятельно (такие решения подчас оказываются надежнее широко распространенных). А что же делать сотрудникам отделов информационной безопасности предприятий, в задачу которых как раз и входит пресечение тайной переписки сотрудников с целью предотвращения утечки конфиденциальной информации из компании? Для начала нужно попытать счастья (вдруг подготовка злоумышленника окажется слабоватой) и проверить самые доступные хранилища: поля-комментарии и поля расширений различных форматов файлов, чтобы убедиться, что в переписке не встречаются вложения с необоснованно большим объемом. Текстовые сообщения должны быть значимы, а бессмысленные фразы типа «наскоро актер тащит арбуз шестой армии» сразу должны привлекать внимание - они могут автоматически генерироваться специальными стеганографическими программами по словарям. Стеганограммы, упакованные методом LSB, обнаружить сложно, особенно если этот метод применяется грамотно. Выход из положения подсказывает сам принцип, легший в основу алгоритма наименее значащих битов: если изменение младших разрядов каждого байта мультимедиафайла не отражается на качестве изображения или звука, то можно со спокойной совестью заменить эти разряды нулевыми битами. Безобидную картинку мы таким образом не испортим, но несанкционированную передачу данных обязательно пресечем.

Примеры применения стеганографии

тобы теория стеганографии не показалась вам умозрительной, не имеющей никакого отношения к практике, приведем пример ее применения. Для демонстрации мы использовали одну из десятков бесплатных и условно-бесплатных программ, предоставляющих сервис стеганографического сокрытия информации и доступных для загрузки в Интернет. В качестве контейнера, согласно описанным выше правилам, была выбрана фотография в формате BMP 24-bit размером около 1 Мбайт, подобранная в личном фотоальбоме автора этой статьи по принципу отсутствия крупных однотонных заливок и наличия мелких деталей. Сообщением послужил случайный бинарный файл (некая динамическая библиотека) размером чуть более 100 Кбайт, что составило как раз примерно 10% от размера контейнера. Перед тем как вложение было упаковано в файл изображения, оно было автоматически зашифровано при помощи указанной программы с использованием алгоритма Blowfish. Итак, все требования безопасности соблюдены, и две картинки, в одной из которых десятая часть информации замещена произвольными данными, практически неразличимы - убедитесь сами (рис. 6).

Рис. 6. Справа — исходное изображение; слева — изображение с вложением

Кроме тайной пересылки и хранения информации, стеганография имеет еще одну область применения - это защита авторских прав. Поскольку к изображению, аудио- или видеофайлу можно добавить какое-либо сообщение таким образом, чтобы это не испортило впечатления от просмотра/прослушивания, и поскольку такое вложение практически невозможно обнаружить и изъять, то это сообщение можно использовать в качестве авторской подписи. Подобные «водяные знаки» помогут доказать, что, например, сделанная вами фотография была незаконно использована для оформления некоего известного Web-сайта. В настоящее время существует ряд программ, реализующих электронную подпись мультимедиаданных методами стеганографии, а также сканирующих Интернет с целью обнаружения работ, используемых без разрешения.

Вместо заключения

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

Возможность скрывать одни данные внутри других может позволить злоумышленнику скрытно украсть массу конфиденциальной информации.

  • Стеганография: Немного теории
  • Стеганография на практике
  • Программы для стеганографии
    • ImageSpyer G2
    • StegoTC G2 TC
    • RedJPEG
    • DarkCryptTC и Проект «Заря»
  • Стеганография своими руками

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

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

Если раньше не совсем честному работнику, чтобы вынести какой-нибудь секретный чертеж или документ, нужно было скрывать бумажную копию, то в эпоху цифровых технологий выносить секреты стало намного легче. Зашифрованный файл можно отослать по сети, а можно скинуть на съемный носитель, флешку и скрытно вынести в кармашке.

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

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

Стеганография, а не стенография

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

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

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

Стеганография: Немного теории

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

Методы типа LSB (Least Significiant Bit, наименьший значащий бит) и аналогичные. Их суть заключается в замене последних значащих битов в контейнере (изображения, аудио или видеозаписи) на биты скрываемого сообщения. Возьмем в качестве примера графический файл. Наглядно это выглядит следующим образом: мы меняем младшие биты в коде цвета пикселя на картинке. Если считать, что код цвета имеет 32-битное значение, то замена 0 на 1 или наоборот не приведет к сколько-нибудь существенному искажению картинки, ощутимому для органов восприятия человека. А между тем в этих битах для большой картинки можно что-то спрятать.

Рассмотрим небольшой пример. Допустим, имеется 8-битное изображение в градациях серого. 00h (00000000Ь) обозначает черный цвет, FFh (11111111Ь) — белый. Всего имеется 256 градаций (). Также предположим, что сообщение состоит из 1 байта — например, 01101011Ь. При использовании двух младших бит в описаниях пикселей нам потребуется 4 пикселя. Допустим, они черного цвета. Тогда пиксели, содержащие скрытое сообщение, будут выглядеть следующим образом: 00000001 00000010 00000010 00000011. Тогда цвет пикселей изменится: первого — на 1/255, второго и третьего — на 2/255 и четвертого — на 3/255. Такие градации, мало того, что незаметны для человека, могут вообще не отобразиться при использовании низкокачественных устройств вывода.

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

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

И третий метод — использование особенностей форматов файлов. К примеру, это может быть запись информации в метаданные, используемые данным форматом файла, или в различные другие, не используемые зарезервированные поля. Например, это может быть документ Microsoft Word, внутри которого будет спрятана информация, никак не отображаемая при открытии данного документа.

Аудио стеганография

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

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

Другой вариант использования стеганографии в аудиофайлах — фазовое кодирование (phase coding). Происходит замена исходного звукового элемента на относительную фазу, которая и является секретным сообщением. Фаза подряд идущих элементов должна быть добавлена таким образом, чтобы сохранить относительную фазу между исходными элементами, в противном случае возникнет искажение, заметное для человеческого уха.

На сегодняшний день фазовое кодирование является одним из самых эффективных методов скрытия информации.

Стеганография на практике

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

Программы для стеганографии

В качестве файла для хранения данных я использовал изображение 1680х1050, сохраненное в различных форматах: ВМР, PNG, JPEG. Скрываемым документом выступал текстовый файл размером порядка 40 Кб. Все описанные программы справились с поставленной задачей: текстовый файл был успешно сохранен и затем извлечен из исходного файла. При этом сколько-нибудь заметных искажений картинки обнаружено не было. Представленные далее утилиты можно скачать с сайта.

ImageSpyer G2

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


ImageSpyer G2

Утилита совместима с Windows 8. В качестве исходных графических файлов могут использоваться форматы ВМР, JPEG, WMF, EMF, TIFF.

Скачать бесплатно ImageSpyer G2, вы можете по .

StegoTC G2 TC

Стеганографический архиваторный плагин (wcx) для Total Comander позволяет скрывать данные в любом изображении, при этом поддерживаются форматы ВМР, TIFF и PNG.

Скачать бесплатно StegoTC G2, вы можете по .

RedJPEG

Интерфейс этой программы, как и следует из названия, выполнен в красном стиле. Эта простая в использовании утилита предназначена для сокрытия любых данных в JPEG в изображении (фото, картинка) с помощью авторского стеганографического метода. Использует открытые алгоритмы шифрования, поточный шифр AMPRNG и Cartman II DDP4 в режиме хеш-функции, LZMA-компрессию.


RedJPEG

Профессиональная расширенная версия RedJPEG ХТ дополнена маскировкой факта внедрения и усиленной процедурой инициализации поточного шифра на основе характеристик изображения. Включены х86 и х86-64 сборки.

Также имеется RedJPEG ХТ for ТС WCX плагин Total Comanderг, обладающий аналогичным функционалом.

Скачать бесплатно RedJPEG, вы можете по .

DarkCryptTC и Проект «Заря»

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


DarkCryptTC и Проект «Заря»

Список поддерживаемых форматов действительно впечатляет: *.txt, *.html, *.xml, *.docx, *. odt, *.bmp, *jpg, *.tiff, *.png, *.jp2, *.psd, tga, *.mng, *.wav, *.ехе, *.dll.

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

Скачать бесплатно DarkCryptTC, вы можете по .

Также, на нашем сайте представлены и другие материалы касающиеся Стеганографии. Для поиска всех программ и книг, сделайте поиск по слову «Стеганография»

Стеганография своими руками

Для тех, кто хорошо знаком с программированием, в частности, с Visual Studio и С#, могу порекомендовать также довольно интересный , в котором можно найти исходные тексты стеганографических утилит для различных форматов данных: для работы с графическими форматами и для сокрытия информации, например, в ZIP-архивах. Общий принцип такого преобразования заключается в использовании заголовков архивируемых файлов. Фрагмент исходного кода для работы с ZIP-архивами выглядит следующим образом:

private void ZipFiles(string destinationFileName, ↵
string password)
{
FileStream outputFileStream = ↵
new FileStream(destinationFileName, ↵
FileMode.Create);
ZipOutputStream zipStream = ↵
new ZipOutputStream(outputFileStream);
bool isCrypted = false;
if (password != null && password.Length > 0)
{ //encrypt the zip file, if password is given
zipStream.Password = password;
isCrypted = true;
}
foreach(ListViewItem viewItem in lvAll.Items)
{
inputStream = new FileStream(viewItem.Text, ↵ FileMode.Open);
zipEntry = new ICSharpCode.SharpZipLib.Zip.ZipEntry(↵ Path.GetFileName(viewItem.Text));
zipEntry.IsVisible = viewItem.Checked;
zipEntry.IsCrypted = isCrypted;
zipEntry.CompressionMethod = ↵ CompressionMethod.Deflated;
zipStream.PutNextEntry(zipEntry);
CopyStream(inputStream, zipStream);
inputStream.Close();
zipStream.CloseEntry();
}
zipStream.Finish();
zipStream.Close();
}

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




Top