Классификация методов сокрытия данных




Подавляющее большинство методов компьютерной стеганографии базируется на двух ключевых принципах [8]:

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

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

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

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

Для существующих методов компьютерной стеганографии вводят следующую классификацию (см. рисунок 1.3) [8, 9].


Рисунок 1.3 - Классификация методов компьютерной стеганографии

По способу выбора контейнера различают суррогатные (или так называемые эрзац-методы), селективные и конструирующие методы стеганографии [9].

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

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

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

По способу доступа к скрываемой информации различают методы для потоковых контейнеров и методы для фиксированных контейнеров.

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

По используемому принципу скрытия методы компьютерной стеганографии делятся на два основных класса: методы непосредственной замены и спектральные методы. Если первые, используя избыток информационной среды в пространственной-временной области, заключаются в замене малозначительной части контейнера битами секретного сообщения, то другие для скрытия данных используют спектральные представления элементов среды, в которую встраиваются скрываемые данные (например, в разные коэффициенты массивов дискретно-косинусных преобразований, преобразований Фурье, Каруне-на-Лоева, Адамара, Хаара и т.д.) [10].

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

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

− зарезервированные для расширения поля файлов, которые зачастую заполняются нулями и не учитываются программой;

− специальное форматирование данных (сдвиг слов, предложений, абзацев или выбор определенных позиций символов);

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

− удаление файловых заголовков-идентификаторов и т.д.

В основном, для таких методов характерны низкая степень скрытости, низкая пропускная способность и слабая производительность.

По назначению различают стеганометоды собственно для скрытой передачи (или скрытого хранения) данных и методы для скрытия данных в цифровых объектах с целью защиты авторских прав на них.

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

Рассмотрим подробнее стеганографические методы скрытия данных в аудиосигналах.


Скрытие в аудио файлах

Наиболее распространенным на сегодняшний день является формат.wav, имеющий солидный набор спецификаций, изрядно пополнившийся за последнее время..wav-файлы (Waveform Audio File Format) относятся к категории RIFF-файлов. RIFF (Resource Interchange File Format - формат файлов передачи ресурсов), введенный Microsoft и Intel, позволяет хранить и передавать мультимедийные данные вкупе с соответствующими описаниями, параметрами, форматами, разметкой для использования в семплерах и т.д. Независимо от того, какая информация содержится в RIFF-файле, он обязательно должен начинаться с заголовка (header), состоящего из символов 'RIFF', и 4-байтового числа, равного длине остальной (после заголовка) части файла в байтах.

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

Возьмем для примера example1.wav с записью синусоиды (440 Гц), продолжительностью звучания 4 секунды, моно, с оцифровкой 16 бит, 44100 Гц (PCM), тогда структура файла будет такова:

[Заголовок (8 бит) с идентификатором 'RIFF'][идентификатор формата 'WAVE' (4 бита)][сегмент формата (format chunk)][сегмент данных (data chunk)].

Идентификатор 'WAVE' можно рассматривать как некий "вырожденный" chunk. Data chunk содержит аудиоданные в виде последовательности отсчетов, а format chank - информацию, необходимую для того, чтобы эти аудиоданные правильно прочитать [11].

 

Таблица 1.1 - Описание сегмента format chunk

Номер байта шестнадцате-ричный Номер байта десятеричный Длина в байтах Описание
  00h     идентификатор "RIFF"
  04h     длина файла (в байтах) без заголовка (-8)
  08h     идентификатор формата "WAVE''
  0Ch     (начало format chunk) идентификатор "fmt''
  10h     длина сегмента формата (format chunk size) без заголовка, здесь = 16
  14h     индекс способа кодирования звука (format tag) 1 = PCM
  16h     число каналов 1 = моно, 2 = стерео и т. д.
  18h     частота семплирования в гц
  1Ch     среднее число байт в секунду (average bytes per second)
  20h     количество байт для одного семпла (отсчета) 1 = 8 бит, моно 2 = 8 бит, стерео или 16 бит, моно 4 = 16 бит, стерео
  22h     количество бит для одного семпла (конец format chunk)
  24h     (начало data chunk) идентификатор 'data'
  28h     длина сегмента данных (length of chunk) без заголовка  
  2Ch   length of data chunk аудиоданные (sample data)

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

 

Метод LSB

Суть метода LSB (Least Significant Bit, наименьший значащий бит) - заключается в замене последних значащих битов в контейнере (изображения, аудио или видеозаписи) на биты скрываемого сообщения. Разница между пустым и заполненным контейнерами должна быть не ощутима для органов восприятия человека [12].

Рассмотрим действие данного метода на примере. Возьмем несколько.wav файлов формата PCM, с частотой семплирования 44100Гц, с количество бит для одного семпла = 8, а также текстовый файл, который необходимо сокрыть. Как известно любую информацию, представленную в цифровом виде, можно отобразить в бинарном виде. Рассмотрим Data chunk каждого файла, в которой хранятся аудиоданные, а также текстовый файл, который необходимо скрыть в бинарном представление. Далее, придерживаясь принципа LSB, необходимо произвести побитную замену наименее значимых битов в каждом семпле каждого.wav файла на биты текстового файла (см. рисунок 1.4).

Рисунок 1.4 - Сокрытие в файлах формата.wav

Выбор данного метода обусловлен его простотой реализации и тем, что он позволяет скрывать в относительно небольших файлах достаточно большие объемы информации (пропускная способность создаваемого скрытого канала связи составляет при этом от 12,5 до 30%). Метод зачастую работает с аудио файлами формата.wav, представленными в формате без компрессии (PCM).

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

Наряду с методом LSB, применяется эхо-методы. Они применяются в цифровой аудиостеганографии и используют неравномерные промежутки между эхо-сигналами для кодирования последовательности значений. При наложении ряда ограничений соблюдается условие незаметности для человеческого восприятия. Эхо-методы устойчивы к амплитудным и частотным атакам, но неустойчивы к атакам по времени [12].

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

Шифрование

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

Шифрование - способ преобразования информации, применяемый для хранения важной информации в ненадёжных источниках или передачи её по незащищённым каналам связи. Согласно ГОСТ 28147-89, шифрование - процесс зашифрования или расшифрования.

В зависимости от структуры используемых ключей, методы шифрования подразделяются на:

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

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

В настоящее время симметричные шифры - это:

− блочные шифры. Обрабатывают информацию блоками определённой длины (обычно 64, 128 бит), применяя к блоку ключ в установленном порядке, как правило, несколькими циклами перемешивания и подстановки, называемыми раундами. Результатом повторения раундов является лавинный эффект - нарастающая потеря соответствия битов между блоками открытых и зашифрованных данных;

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

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

Типичным способом построения алгоритмов симметричного шифрования является сеть Фейстеля. Алгоритм строит схему шифрования на основе функции F(D, K), где D - порция данных, размером вдвое меньше блока шифрования, а K - «ключ прохода» для данного прохода. От функции не требуется обратимость - обратная ей функция может быть неизвестна. Достоинства сети Фейстеля - почти полное совпадение дешифровки с шифрованием (единственное отличие - обратный порядок «ключей прохода» в расписании), что сильно облегчает аппаратную реализацию.

Операция перестановки перемешивает биты сообщения по некоему закону. В аппаратных реализациях она тривиально реализуется как перепутывание проводников. Именно операции перестановки дают возможность достижения «эффекта лавины». Операция перестановки линейна - f(a) xor f(b) == f(a xor b)

Операции подстановки выполняются как замена значения некоей части сообщения (часто в 4, 6 или 8 бит) на стандартное, жестко встроенное в алгоритм, иное число путем обращения к константному массиву. Операция подстановки привносит в алгоритм нелинейность.

Зачастую стойкость алгоритма, особенно к дифференциальному криптоанализу, зависит от выбора значений в таблицах подстановки (S-блоках). Как минимум считается нежелательным наличие неподвижных элементов S(x) = x, а также отсутствие влияния какого-то бита входного байта на какой-то бит результата - то есть случаи, когда бит результата одинаков для всех пар входных слов, отличающихся только в данном бите.

Распространенные алгоритмы:

− AES (англ. Advanced Encryption Standard) - американский стандарт шифрования;

− ГОСТ 28147-89 - отечественный стандарт шифрования данных;

− DES (англ. Data Encryption Standard) - стандарт шифрования данных в США до AES;

− 3DES (Triple-DES, тройной DES);

− RC6 (Шифр Ривеста).

В разработанной программе в качестве алгоритма симметричного шифрования был выбран AES (Advanced Encryption Standard (Rijndael)).

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



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-06-11 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: