Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 26 - КРИПТОГРАФИЧЕСКИЕ И СТЕГАНОГРАФИЧЕС....doc
Скачиваний:
66
Добавлен:
23.12.2018
Размер:
802.82 Кб
Скачать

Методы реализации компьютерных стегосистем

Текстовые стеганографы

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

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

Можно выделить следующие методы, которые встречаются в современных лингвистических стеганографах:

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

  • Сокрытие тайного сообщения (в битовом представлении) можно проводить путем добавления одного или двух символов пробела в конце предложений после символа конца (например, точки — для натурального языка или точки с запятой — для кода программы на языке С): один дополнительный пробел кодирует значение бита "0", а два — "1". Этот простой метод имеет недостатки. Во-первых, он неэффективен, т.к. необходим контейнер большого объема (скорость передачи скрытых данных в данном случае приблизительно равна одному биту на 160 байт текста). Во-вторых, возможность сокрытия зависит от структуры текста (некоторые тексты, например белые стихи, не имеют четких признаков конца). В-третьих, текстовые редакторы часто автоматически добавляют символы пробела после точки.

  • Кодировать секретные данные можно дополнительными пробелами в конце каждой строчки текста. Преимущество такого метода кодирования состоит в том, что оно может быть выполнено с любым текстом; изменения в формате резко не бросаются в глаза читателю, обеспечивается передача большего количества скрытых данных по сравнению с предыдущим методом (1 бит на 80 байт). Недостаток метода состоит в том, что некоторые программы (например, sendmail) могут неосторожно удалять дополнительные пробелы. Помимо этого, скрытые таким образом данные не всегда могут быть восстановлены с печатной копии документа.

  • Метод сокрытия данных с помощью пробелов манипулирует с текстами, которые выровнены с обеих сторон. В этом методе данные кодируются путем управляемого выбора мест для размещения дополнительных символов пробела. Один символ между словами интерпретируется как 0, а два — как 1. Метод позволяет встраивать несколько бит скрытой информации в каждую строку текста.

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

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

До сих пор вопрос о создании безопасной лингвистической стегосистемы остается открытым. Любая обработка текста редактором, его печать или перевод в другой формат (HTML, PostScript, PDF или RTF) может изменить расположение пробелов и уничтожить скрытый текст. Низкая устойчивость подобных методов к возможным модификациям документа является одной из причин поиска других методов поиска данных в тексте.

2. Синтаксические методы лингвистической стеганографии – это методы изменения пунктуации и методы изменения стиля и структуры текста.

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

Средняя скорость передачи данных такими методами равна нескольким битам на килобайт текста.

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

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

3. Семантические методы стеганографии аналогичны синтаксическим методам. Для этих методов элементарными лингвистическими компонентами считаются отдельные слова, поэтому сокрытие данных реализуется путем непосредственной замены слов. Для такой замены необходимы таблицы синонимов. Кодирование секретного сообщения проводится выбором синонима из необходимого места таблицы. Например, первому слову-синониму соответствует 1, а второму — 0:

Фрагмент таблицы синонимов

1

0

след

отпечаток

дыра

отверстие

оборона

защита

овация

аплодисменты

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

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

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

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

Сокрытие данных в изображении и видео

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

  • кодовой избыточностью, возникающей при неоптимальном описании изображения;

  • межпиксельной избыточностью, которая обусловлена наличием сильной корреляционной зависимостью между пикселями реального изображения;

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

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

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

1. Методы замены во временной (пространственной) области. Общий принцип данных методов заключается в замене избыточной, малозначимой части изображения битами секретного сообщения. Для извлечения сообщения необходимо знать место, где была размещена скрываемая информация.

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

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

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

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

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

К методам замены можно также отнести метод квантования изображений.

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

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

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

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

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

Для сокрытия информации применяют два основных способа расширения спектра:

  • с помощью псевдослучайной последовательности, когда секретный сигнал, отличающийся на константу, модулируется псевдослучайным сигналом;

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

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

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

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

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

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

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

Сокрытие информации в звуковой среде

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

К стеганографическим методам защиты данных в звуковой среде относятся:

1. Метод наименьших значащих битов – применяется при цифровом представлении аудиосигнала и пригоден для использования при любых скоростях связи. При преобразовании звукового сигнала в цифровую форму всегда присутствует шум дискретизации, который не вносит существенных искажений. "Шумовым" битам соответствуют младшие биты цифрового представления сигнала, которые можно заменить скрываемыми данными. Например, если звуковой сигнал представлен в 16-битовом виде, то изменение четырех младших битов не приведет к заметным на слух искажениям. В качестве стегоключа обычно используется указатель местоположения битов, в которых содержатся скрываемые данные.

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

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

4. Фазовые методы сокрытия применяются как для аналогового, так и для цифрового сигнала. Они используют тот факт, что плавное изменение фазы на слух определить нельзя. В таких методах защищаемые данные кодируются либо определенным значением фазы, либо изменением фаз в спектре.

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

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

ВЫВОДЫ

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

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

Специалисты выделяют следующие причины ненадежности криптографических и стеганографических средств:

  1. Невозможность применения стойких криптоалгоритмов. Эта группа причин является наиболее распространенной из-за следующих факторов:

  • малая скорость работы стойких криптоалгоритмов с открытым ключом (если аппаратная реализация DES в настоящее время достигает скорости 20 Мбит/с, то RSA обеспечивает скорость около 5 Кбит/с при 512-битном ключе);

  • экспортные ограничения (из США запрещен экспорт криптоалгоритмов с длиной ключа более 40 бит, что не может считаться надежным при современных вычислительных мощностях);

  • использование во многих программах собственных криптоалгоритмов, которые не обеспечивают заданной стойкости (например, в пакете Microsoft Office для определения пароля, которым закрыт файл, необходимо знать всего 16 байт файла .doc или .xls, после чего достаточно перебрать всего 24=16 вариантов).

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

    • уменьшение криптостойкости при генерации ключа за счет сокращения его длины;

    • отсутствие проверки на слабые ключи;

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

    • наличие зависимости во времени обработки ключей;

    • ошибки в программной реализации;

    • наличие «люков» в криптоалгоритмах – разработчик хочет иметь контроль над обрабатываемой в его системе информацией;

    • недостатки датчиков случайных чисел (ДСЧ), являющихся основой подавляющего большинства криптоалгоритмов при выработке ключей.

    1. Неправильное применение криптоалгоритмов. Эта группа причин приводит к тому, что оказываются ненадежными криптостойкие и корректно реализованные алгоритмы из-за:

    • малой длины ключа;

    • повторного наложения гаммы шифра;

    • хранения ключа вместе с данными.

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

    • выбор коротких или осмысленных паролей (существуют два эффективных метода их вскрытия: атака полным перебором и атака по словарю);

    • незнание особенностей функционирования современных операционных систем (виртуальной памяти, не до конца удаленных файлов и т.п.);

    • нарушение режима физической безопасности;

    • утечка данных в многопользовательских системах;

    • пренебрежение возможностью проведения радиоатаки или криптоанализа и др.