понедельник, 27 августа 2012 г.

Пакет ImageMagick. Утилита compare


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

Примеры

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

$ convert rose.jpg -sharpen 0x1 reconstruct.jpg
$ compare rose.jpg reconstruct.jpg difference.png
$ compare -compose src rose.jpg reconstruct.jpg difference.png

роза роза ==> роза

понедельник, 20 августа 2012 г.

Методы компьютерной стеганографии в JPEG-файлах


Цветные изображения, представленные в цифровой форме, достаточно велики и занимают большой объём памяти (до нескольких мегабайт). Поэтому для их сжатия существует ряд методов. Так, форматы BMP и GIF используют алгоритмы сжатия без потерь, обеспечивающие точное восстановление исходного изображения. Существуют также алгоритмы сжатия с потерей (искажением) информации.
Таким примером может служить формат JPEG (Joint Photographic Experts Group).
В общем случае методы обработки (сжатия) изображений можно разделить на две группы: непосредственные и спектральные. При использовании непосредственных методов обработке подвергаются сами исходные изображения (пикселы). Спектральные методы основаны на применении дискретных унитарных преобразований Фурье, Адамара и др. При этом обрабатывается не исходное изображение, а соответствующие коэффициенты преобразования.

пятница, 17 августа 2012 г.

Программа gifshuffle. Перестановки цветов

gifshuffle это программа для скрытия сообщений в изображениях GIF при помощи перестановок цветовой палитрыОбработанные программой изображения на вид не отличаются от оригинала. gifshuffle работает со всеми изображениями GIF, в том числе поддерживает прозрачность и анимацию.
Рассмотрим колоду из 52 карт. Есть 52 факториал (52!) способов перемешивания колоды, это означает, что любой конкретный порядок карт можно представить как число в диапазоне [0, 52! - 1]. Другими словами, имея n элементов, вы можете хранить приблизительно log 2 ( n!) битов информации на основе порядка их расположения.
GIF изображения содержат цветовую палитру до 256 записей, в результате чего максимальный объем информации, которую можно сохранить описанным выше способом - 1683 бит. Само изображение описывается из сжатым массивом индексов цветовой палитры.

среда, 8 августа 2012 г.

Метод перестановки палитры: Поиграем в пятнашки?

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

понедельник, 6 августа 2012 г.

Курьезы стеганографии: Фракталы для скрытной передачи сообщений

Ни за что не догадаешься, что тут скрыта фраза
Test steganography message!!!!
 Глядя на приведенные изображения, можно подумать, что это очередные чудовищные эксперименты какого нибудь сумасшедшего профессора-фотошопщика. А тем не менее, как ни удивительно, это одна из методик стеганографии - создание своего контейнера и формата для передачи данных, неприметных для стороннего наблюдателя. Как ни покажется удивительным, в изображении, вынесенном в заголовок закодировано послание  Test steganography message!!!! Для скрытия данных эта программа использует специально сгенерированные  фрактальные изображения. 
Как нас убеждает Википедия: Фрактал — геометрическая фигура, обладающая свойством самоподобия, то есть составленная из нескольких частей, каждая из которых подобна всей фигуре целиком. Фрактальные изображения популярны из-за их эффектного внешнего вида и простоты их компьютерной генерации.