Прогноз о будущем стеганографии в первой четверти XXI века
Прочитав полусотню различных статей по стеганке и несколько книжек, рискну высказать свое мнение по поводу стеганографии. Данное мнение — лишь мое мнение и я его никому не навязываю. Готов к конструктивной критике и диалогу.
Тезис. Я считаю, что мир технически готов к стеганографии, но в «культурном» плане современное информационное общество пока ещё не дозрело. Я думаю, что в ближайшее время (2015-2025 годах) произойдет то, что возможно в будущем назовут "стеганографической революцией"… Может быть это немного заносчивое утверждение, но я попытаюсь обосновать свою точку зрения четырьмя положениями.
Первое. В данный момент не существует единой теории стеганографии. Совершенно секретная стегосистема (по Кашену) конечно лучше, чем ничего, но на мой взгляд это черно-белая фотография хвоста сферического виртуального коня в вакууме… Миттельхользер попытался немного улучшить результаты Кристиана Кашена, но пока это очень пространная теория.
Отсутствие единой теории — важный тормоз. Математически доказано, что шифр Вернама (=«одноразовый блокнот») взломать невозможно, по этой причине связь между В.В. Путиным и Баракой Обамой осуществляется именно с помощью этого алгоритма. Существует определенная теория, создающая и изучающая абстрактные (математические) криптографические объекты (Bent-функции, LFSR, циклы Фейстейля, SP-сеты и т.д.). В стеганографии существует зоопарк терминов и моделей, но большинство из них необоснованны, изучены не полностью или притянуты за уши.
Тем не менее определенные сдвиги в данном направлении уже есть. Уже осуществляются скромные попытки использовать стеганографию если не как основное или даже единственное решение, то как вспомогательный инструмент. Огромный сдвиг в теории произошел за последние пятнадцать лет (2000-2015), но думаю об этом можно написать отдельный пост, в двух словах сказать трудно.
Второе. Стеганография — наука междисциплинарная! Это первое, что должен уяснить любой начинающий «стеганограф». Если криптография может абстрагироваться от оборудования и решать исключительно задачи в мире дискретной математике, то специалист по стеганографии обязан изучать среду. Хотя конечно и в построении криптосистем существует ряд проблем, например атака по побочным каналам; но это не вина качества шифра. Я думаю, что стеганография будет развиваться в соответствии с развитием изучения среды, в которой передаются скрытые сообщения. Таким образом разумно ожидать появления «химической стеганографии», «стеганографии в изображениях», «стеганографии в кодах, исправляющих ошибки», «продовольственной стеганографии» и т.д.
Начиная примерно с 2008 года это уже все осознали. Стеганографией стали интересоваться не только математики-криптографы, но и лингвисты, филологи, химики. Думаю это позитивный сдвиг, говорящий о многом.
Третее. Современный виртуальный мир перенасыщен текстами, картинками котиков, видеороликами и прочая и прочая… На одном сайте YouTube ежеминутно загружается более 100 часов видео! Вы только подумайте, ежеминутно! Вот сколько минут вы читаете этот пространный опус?.. А теперь умножьте это число на 100! Вот столько часов различного видео на одном только YouTube появилось за это время!!! Вы можете себе это представить? А ведь это огромная «почва» для сокрытия данных! То есть «технически» мир давным давно готов к стеганографии. И я, если честно, глубоко уверен, что стеганография и противодействие стеганографии в ближайшем будущем станет такой же актуальной проблемой, как проблема BigData или Internet of Things.
Четвертое. Давным-давно, когда я был студентом первого курса Бауманки, один мой друг подарил мне на день рождения "Книгу Шифров" Саймона Сингха. Каково же было мое удивление, когда я узнал, что первый компьютер был не американский ENIAC, а польская "Бомба", разработанная Генрихом Зыгальским, Ежи Рожицким и Марианом Реевским в 1938 году. Летом 1939 года в Кабатском лесу (недалеко от Варшавы) поляки подарили англичанам свои разработки и эвакуировали криптоаналитиков и инженеров. В Британии поляков возглавил Алан Тьюринг и на основе Бомбы была создана машина Colossus…
Данная информация перестала быть секретной, если мне не изменяет память, только в 2000-х годах. В качестве другого исторического примера можно привести алгоритм RSA, который был изобретен в конце ВМВ британскими криптографами. Но, по понятным причинам, военные засекретили первый в мире алгоритм асимметричного шифрования и пальма первенства досталась Диффи, Хелману, а затем Ривесту, Шамиру и Адлеману.
К чему я это? Дело в том, что в информационной безопасности все изобретается минимум два раза: один раз «в закрытую», а второй раз «в открытую»; а в некоторых случаях даже больше, чем два раза. Это нормально. Думаю тоже ждет и стеганографию (ели уже не постигло).
В современной западной литературе почему-то «исчезли» (т.е. перестали публиковаться) многие ученые, которые в 1998-2008 годах предлагали весьма интересные идеи. (например Питер Вайнер, Мишель Элиа). Примерно аналогичная ситуация была перед изобретением атомного оружия… Кто знает, может быть уже изобретены совершенные стегосистемы и они успешно используются ГРУ и/или АНБ? А мы, дочитывая этот пост и глядя на наручные часы высчитываем, сколько ещё часов мурлыкающих котиков закачали миллионы пользователей на YouTube и есть ли среди них котики с перепиской террористов; команд для botnet-сети или чертежи РТ-2ПМ2, зашифрованные шифром Вернама.
Стеганография - это метод организации связи, который собственно скрывает само наличие связи. В отличие от криптографии, где неприятель точно может определить является ли передаваемое сообщение зашифрованным текстом, методы стеганографии позволяют встраивать секретные сообщения в безобидные послания так, чтобы невозможно было заподозрить существование встроенного тайного послания.
Слово "стеганография" в переводе с греческого буквально означает "тайнопись" (steganos - секрет, тайна; graphy - запись). К ней относится огромное множество секретных средств связи, таких как невидимые чернила, микрофотоснимки, условное расположение знаков, тайные каналы и средства связи на плавающих частотах и т. д.
Стеганография занимает свою нишу в обеспечении безопасности: она не заменяет, а дополняет криптографию. Сокрытие сообщения методами стеганографии значительно снижает вероятность обнаружения самого факта передачи сообщения. А если это сообщение к тому же зашифровано, то оно имеет еще один, дополнительный, уровень защиты.
В настоящее время в связи с бурным развитием вычислительной техники и новых каналов передачи информации появились новые стеганографические методы, в основе которых лежат особенности представления информации в компьютерных файлах, вычислительных сетях и т. п. Это дает нам возможность говорить о становлении нового направления - компьютерной стеганографии.
Термины и определения
Несмотря на то что стеганография как способ сокрытия секретных данных известна уже на протяжении тысячелетий, компьютерная стеганография - молодое и развивающееся направление.
Как и любое новое направление, компьютерная стеганография, несмотря на большое количество открытых публикаций и ежегодные конференции, долгое время не имела единой терминологии.
До недавнего времени для описания модели стеганографической системы использовалась предложенная 1983 году Симмонсом [3] так называемая "проблема заключенных". Она состоит в том, что два индивидуума (Алиса и Боб) хотят обмениваться секретными сообщениями без вмешательства охранника (Вилли), контролирующего коммуникационный канал. При этом имеется ряд допущений, которые делают эту проблему более или менее решаемой. Первое допущение облегчает решение проблемы и состоит в том, что участники информационного обмена могут разделять секретное сообщение (например, используя кодовую клавишу) перед заключением. Другое допущение, наоборот, затрудняет решение проблемы, так как охранник имеет право не только читать сообщения, но и модифицировать (изменять) их.
Позднее, на конференции Information Hiding: First Information Workshop в 1996 году было предложено использовать единую терминологию и обговорены основные термины [4].
Стеганографическая система или стегосистема - совокупность средств и методов, которые используются для формирования скрытого канала передачи информации.
При построении стегосистемы должны учитываться следующие положения:
- противник имеет полное представление о стеганографической системе и деталях ее реализации. Единственной информацией, которая остается неизвестной потенциальному противнику, является ключ, с помощью которого только его держатель может установить факт присутствия и содержание скрытого сообщения;
- если противник каким-то образом узнает о факте существования скрытого сообщения, это не должно позволить ему извлечь подобные сообщения в других данных до тех пор, пока ключ хранится в тайне;
- потенциальный противник должен быть лишен каких-либо технических и иных преимуществ в распознавании или раскрытии содержания тайных сообщений.
Обобщенная модель стегосистемы представлена на рис. 1.
В качестве данных может использоваться любая информация: текст, сообщение, изображение и т. п.
В общем же случае целесообразно использовать слово "сообщение", так как сообщением может быть как текст или изображение, так и, например, аудиоданные. Далее для обозначения скрываемой информации, будем использовать именно термин сообщение.
Контейнер - любая информация, предназначенная для сокрытия тайных сообщений.
Пустой контейнер - контейнер без встроенного сообщения; заполненный контейнер или стего - контейнер, содержащий встроенную информацию.
Встроенное (скрытое) сообщение - сообщение, встраиваемое в контейнер.
Стеганографический канал или просто стегоканал - канал передачи стего.
Стегоключ или просто ключ - секретный ключ, необходимый для сокрытия информации. В зависимости от количества уровней защиты (например, встраивание предварительно зашифрованного сообщения) в стегосистеме может быть один или несколько стегоключей.
По аналогии с криптографией, по типу стегоключа стегосистемы можно подразделить на два типа:
- с секретным ключом;
- с открытым ключом.
В стегосистеме с секретным ключом используется один ключ, который должен быть определен либо до начала обмена секретными сообщениями, либо передан по защищенному каналу.
В стегосистеме с открытым ключом для встраивания и извлечения сообщения используются разные ключи, которые различаются таким образом, что с помощью вычислений невозможно вывести один ключ из другого. Поэтому один ключ (открытый) может передаваться свободно по незащищенному каналу связи. Кроме того, данная схема хорошо работает и при взаимном недоверии отправителя и получателя.
Требования
Любая стегосистема должна отвечать следующим требованиям:
- Свойства контейнера должны быть модифицированы, чтобы изменение невозможно было выявить при визуальном контроле. Это требование определяет качество сокрытия внедряемого сообщения: для обеспечения беспрепятственного прохождения стегосообщения по каналу связи оно никоим образом не должно привлечь внимание атакующего.
- Стегосообщение должно быть устойчиво к искажениям, в том числе и злонамеренным. В процессе передачи изображение (звук или другой контейнер) может претерпевать различные трансформации: уменьшаться или увеличиваться, преобразовываться в другой формат и т. д. Кроме того, оно может быть сжато, в том числе и с использованием алгоритмов сжатия с потерей данных.
- Для сохранения целостности встраиваемого сообщения необходимо использование кода с исправлением ошибки.
- Для повышения надежности встраиваемое сообщение должно быть продублировано.
Приложения
В настоящее время можно выделить три тесно связанных между собой и имеющих одни корни направления приложения стеганографии: сокрытие данных (сообщений), цифровые водяные знаки и заголовки.
Сокрытие внедряемых данных, которые в большинстве случаев имеют большой объем, предъявляет серьезные требования к контейнеру: размер контейнера в несколько раз должен превышать размер встраиваемых данных.
Цифровые водяные знаки используются для защиты авторских или имущественных прав на цифровые изображения, фотографии или другие оцифрованные произведения искусства. Основными требованиями, которые предъявляются к таким встроенным данным, являются надежность и устойчивость к искажениям.
Цифровые водяные знаки имеют небольшой объем, однако, с учетом указанных выше требований, для их встраивания используются более сложные методы, чем для встраивания просто сообщений или заголовков.
Третье приложение, заголовки, используется в основном для маркирования изображений в больших электронных хранилищах (библиотеках) цифровых изображений, аудио- и видеофайлов.
В данном случае стеганографические методы используются не только для внедрения идентифицирующего заголовка, но и иных индивидуальных признаков файла.
Внедряемые заголовки имеют небольшой объем, а предъявляемые к ним требования минимальны: заголовки должны вносить незначительные искажения и быть устойчивы к основным геометрическим преобразованиям.
Ограничения
Каждое из перечисленных выше приложений требует определенного соотношения между устойчивостью встроенного сообщения к внешним воздействиям (в том числе и стегоанализу) и размером самого встраиваемого сообщения.
Для большинства современных методов, используемых для сокрытия сообщения в цифровых контейнерах, имеет место следующая зависимость надежности системы от объема встраиваемых данных (рис. 2).
Данная зависимость показывает, что при увеличении объема встраиваемых данных снижается надежность системы (при неизменности размера контейнера). Таким образом, используемый в стегосистеме контейнер накладывает ограничения на размер встраиваемых данных.
Контейнеры
Существенное влияние на надежность стегосистемы и возможность обнаружения факта передачи скрытого сообщения оказывает выбор контейнера.
Например, опытный глаз цензора с художественным образованием легко обнаружит изменение цветовой гаммы при внедрении сообщения в репродукцию "Мадонны" Рафаэля или "Черного квадрата" Малевича.
По протяженности контейнеры можно подразделить на два типа: непрерывные (потоковые) и ограниченной (фиксированной) длины. Особенностью потокового контейнера является то, что невозможно определить его начало или конец. Более того, нет возможности узнать заранее, какими будут последующие шумовые биты, что приводит к необходимости включать скрывающие сообщение биты в поток в реальном масштабе времени, а сами скрывающие биты выбираются с помощью специального генератора, задающего расстояние между последовательными битами в потоке.
В непрерывном потоке данных самая большая трудность для получателя - определить, когда начинается скрытое сообщение. При наличии в потоковом контейнере сигналов синхронизации или границ пакета, скрытое сообщение начинается сразу после одного из них. В свою очередь, для отправителя возможны проблемы, если он не уверен в том, что поток контейнера будет достаточно долгим для размещения целого тайного сообщения.
При использовании контейнеров фиксированной длины отправитель заранее знает размер файла и может выбрать скрывающие биты в подходящей псевдослучайной последовательности. С другой стороны, контейнеры фиксированной длины, как это уже отмечалось выше, имеют ограниченный объем и иногда встраиваемое сообщение может не поместиться в файл-контейнер.
Другой недостаток заключается в том, что расстояния между скрывающими битами равномерно распределены между наиболее коротким и наиболее длинным заданными расстояниями, в то время как истинный случайный шум будет иметь экспоненциальное распределение длин интервала. Конечно, можно породить псевдослучайные экспоненциально распределенные числа, но этот путь обычно слишком трудоемок. Однако на практике чаще всего используются именно контейнеры фиксированной длины, как наиболее распространенные и доступные.
Возможны следующие варианты контейнеров:
- Контейнер генерируется самой стегосистемой. Примером может служить программа MandelSteg, в которой в качестве контейнера для встраивания сообщения генерируется фрактал Мандельброта. Такой подход можно назвать конструирующей стеганографией.
- Контейнер выбирается из некоторого множества контейнеров. В этом случае генерируется большое число альтернативных контейнеров, чтобы затем выбрать наиболее подходящий для сокрытия сообщения. Такой подход можно назвать селектирующей стеганографией. В данном случае при выборе оптимального контейнера из множества сгенерированных важнейшим требованием является естественность контейнера. Единственной же проблемой остается то, что даже оптимально организованный контейнер позволяет спрятать незначительное количество данных при очень большом объеме самого контейнера.
- Контейнер поступает извне. В данном случае отсутствует возможность выбора контейнера и для сокрытия сообщения берется первый попавшийся контейнер, не всегда подходящий к встраиваемому сообщению. Назовем это безальтернативной стеганографией.
Методы
В настоящее время существует достаточно много различных методов (и их вариантов) встраивания сообщений (имеется в виду и встраивание цифровых водяных знаков). Из-за ограниченности объема публикации невозможно описать все используемые методы, однако некоторые из них достаточно хорошо описаны в специальной литературе [8, 9, 10, 11].
Методы сокрытия информации
В настоящее время наиболее распространенным, но наименее стойким является метод замены наименьших значащих битов или LSB-метод. Он заключается в использовании погрешности дискретизации, которая всегда существует в оцифрованных изображениях или аудио- и видеофайлах. Данная погрешность равна наименьшему значащему разряду числа, определяющему величину цветовой составляющей элемента изображения (пикселя). Поэтому модификация младших битов в большинстве случаев не вызывает значительной трансформации изображения и не обнаруживается визуально. Более подробно LSB-метод описан в статье В. Н. Кустова и А. А. Федчука "Методы встраивания скрытых сообщений" ("Защита информации. Конфидент", №3, 2000, стр. 34).
Другим популярным методом встраивания сообщений является использование особенностей форматов данных, использующих сжатие с потерей данных (например JPEG). Этот метод (в отличии от LSB) более стоек к геометрическим преобразованиям и обнаружению канала передачи, так как имеется возможность в широком диапазоне варьировать качество сжатого изображения, что делает невозможным определение происхождения искажения. Более подробно этот метод описан в статье С. Ф. Быкова "Алгоритм сжатия JPEG с позиции компьютерной стеганографии" ("Защита информации. Конфидент", №3, 2000, стр. 26).
Для встраивания цифровых водяных знаков используются более сложные методы.
Цифровые водяные знаки
В современных системах формирования цифровых водяных знаков используется принцип встраивания метки, являющейся узкополосным сигналом, в широком диапазоне частот маркируемого изображения. Указанный метод реализуется при помощи двух различных алгоритмов и их возможных модификаций. В первом случае информация скрывается путем фазовой модуляции информационного сигнала (несущей) с псевдослучайной последовательностью чисел. Во втором - имеющийся диапазон частот делится на несколько каналов и передача производится между этими каналами. Относительно исходного изображения метка является некоторым дополнительным шумом, но так как шум в сигнале присутствует всегда, его незначительное возрастание за счет внедрения метки не дает заметных на глаз искажений. Кроме того, метка рассеивается по всему исходному изображению, в результате чего становится более устойчивой к вырезанию.
В настоящее время компьютерная стеганография продолжает развиваться: формируется теоретическая база, ведется разработка новых, более стойких методов встраивания сообщений. Среди основных причин наблюдающегося всплеска интереса к стеганографии можно выделить принятые в ряде стран ограничения на использование сильной криптографии, а также проблему защиты авторских прав на художественные произведения в цифровых глобальных сетях. Поэтому в ближайшее время можно ожидать новых публикаций и разработок в этой области. n
ИСТОРИЧЕСКИЕ ЗАМЕТКИ
История стеганографии - это история развития человечества.
Местом зарождения стеганографии многие называют Египет, хотя первыми "стеганографическими сообщениями" можно назвать и наскальные рисунки древних людей.
Первое упоминание о стеганографических методах в литературе приписывается Геродоту, который описал случай передачи сообщения Демартом, который соскабливал воск с дощечек, писал письмо прямо на дереве, а потом заново покрывал дощечки воском.
Другой эпизод, который относят к тем же временам - передача послания с использованием головы раба. Для передачи тайного сообщения голову раба обривали, наносили на кожу татуировку, и когда волосы отрастали, отправляли с посланием.
В Китае письма писали на полосках щелка. Поэтому для сокрытия сообщений, полоски с текстом письма, сворачивались в шарики, покрывались воском и затем глотались посыльными.
Темное средневековье породило не только инквизицию: усиление слежки привело к развитию как криптографии, так и стеганографии. Именно в средние века впервые было применено совместное использование шифров и стеганографических методов.
В XV веке монах Тритемиус (1462-1516), занимавшийся криптографией и стеганографией, описал много различных методов скрытой передачи сообщений. Позднее, в 1499 году, эти записи были объединены в книгу "Steganographia", которую в настоящее время знающие латынь могут прочитать в Интернет.
XVII - XVIII века известны как эра "черных кабинетов" - специальных государственных органов по перехвату, перлюстрации и дешифрованию переписки. В штат "черных кабинетов", помимо криптографов и дешифровальщиков, входили и другие специалисты, в том числе и химики. Наличие специалистов-химиков было необходимо из-за активного использования так называемых невидимых чернил. Примером может служить любопытный исторический эпизод: восставшими дворянами в Бордо был арестован францисканский монах Берто, являвшийся агентом кардинала Мазарини. Восставшие разрешили Берто написать письмо знакомому священнику в город Блэй. Однако в конце этого письма религиозного содержания, монах сделал приписку, на которую никто не обратил внимание: "Посылаю Вам глазную мазь; натрите ею глаза и Вы будете лучше видеть". Так он сумел переслать не только скрытое сообщение, но и указал способ его обнаружения. В результате монах Берто был спасен.
Стеганографические методы активно использовались и в годы гражданской войны между южанами и северянами. Так, в 1779 году два агента северян Сэмюэль Вудхулл и Роберт Тоунсенд передавали информацию Джорджу Вашингтону, используя специальные чернила.
Различные симпатические чернила использовали и русские революционеры в начале XX века, что нашло отражение в советской литературе: Куканов в своей повести "У истоков грядущего" описывает применение молока в качестве чернил для написания тайных сообщений. Впрочем, царская охранка тоже знала об этом методе (в архиве хранится документ, в котором описан способ использования симпатических чернил и приведен текст перехваченного тайного сообщения революционеров).
Особое место в истории стеганографии занимают фотографические микроточки. Да, те самые микроточки, которые сводили с ума спецслужбы США во время второй мировой войны. Однако микроточки появились намного раньше, сразу же после изобретения Дагером фотографического процесса, и впервые в военном деле были использованы во времена франко-прусской войны (в 1870 году).
Конечно, можно еще упомянуть акростихи и другие языковые игры. Однако описать все изобретенные человечеством стеганографические методы нам не позволит объем данной публикации.
Литература:
1. Kahn D. The Codebreakers. N-Y, 1967.
2. Жельников В. Криптография от папируса до компьютера. М., 1996.
3. Simmons G.J. The prisoner`s problem and the subliminal channel, Proc. Workshop on Communications Security (Crypto`83), 1984, 51-67.
4. Pfitzmann B. Information Hiding Terminology, in Information Hiding, Springer Lecture Notes in Computer Science, v.1174, 1996, 347-350.
5. Aura T. Invisible communication. In Proc. of the HUT Seminar on Network Security '95, Espoo, Finland, November 1995. Telecommunications Software and Multimedia Laboratory, Helsinki University of Technology.
6. Ross J. Anderson. Stretching the limits of steganography. In IH96 [3], pages 39-48.
7. Zollner J., Federrath H.,Klimant H., Pfitzmann A., Piotraschke R., Westfeld A., Wicke G., Wolf G. Modeling the security of steganographic system, Proc. 2nd International Workshop on Information Hiding, 1998, LNCS, v.1525, 344-354.
8. E. Franz, A. Jerichow, S. Moller, A. Pfitzmann, I. Stierand. Computer Based Steganography: How it works and why therefore any restrictions on cryptography are nonsense, at best, In Information hiding: first international workshop, Cambridge, UK. Lecture Notes in Computer Science, vol. 1174, Berlin Heidelberg New York: Springer-Verlag, 1996.
9. N.F. Johnson, S. Jajodia. Exploring Steganography: Seeing the Unseen, IEEE Computer, February 1998, vol. 31, no. 2, pp.26-34.
10. Walter Bender, Daniel Gruhl, Norishige Morimoto, and Anthony Lu. Techniques for data hiding. IBM Systems Journal, 35(3 & 4):313{336, 1996.
11. Raymond B. Wolfgang and Edward J. Delp. A watermark for digital images. In International Conference on Images Processing, pages 219-222, Lausanne, Switzer-land, September 1996. IEEE.
26 мая 2009, 07:23 · se