Разработка алгоритма комплексной защиты стеганографических сообщений

УДК 002.5:681.3

В. А. Михеев, М.М. Репин

РАЗРАБОТКА АЛГОРИТМА КОМПЛЕКСНОЙ ЗАЩИТЫ СТЕГАНОГРАФИЧЕСКИХ СООБЩЕНИЙ

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

Современные стеганографические системы; файл-контейнер; множественная инкапсуляция.

V.A. Mikheev, M.M. Repin DEVELOPMENT OF STEGANOGRAPHIC MESAGGES INTEGRATED PROTECTION ALGORITHM

The article presents the problem of inefficiency of modern steganographic security system as a problem depending on the reliability of steganographic security information on the amount of embedded data in the container file. On the basis of the considered mathematical apparatus and the conducted researches the algorithm that enhances reliability of concealment of the information and provides control of the integrity of steganographic message was developed.

Modern steganography system; the container file; multiple encapsulation.

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

Умение пользоваться методами стеганографического анализа со знанием заполненного контейнера (известного видеоролика, популярной музыкальной композиции, фотографии и прочего) и со знанием, к примеру, контейнера оригинала дают реальные шансы злоумышленнику получить доступ к скрываемой информации. Как показывает практика, для повышения надёжности сокрытия информации лучше использовать не вызывающий подозрения простой контейнер, существование общедоступной копии которого мало вероятно, или она вообще не существует [1].

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

Для большинства современных методов, которые используются для скрытия сообщений в файлах цифрового формата, имеет место характерная зависимость надёжности системы от объёма встраиваемых данных, представленная на рис. 1 [2].

Острой проблемой задач стеганографии является соблюдение определенного уровня устойчивости стеганосистем [2, 3]. Из рис. 1 видно, что увеличение объёма встраиваемых данных значительно снижает надежность системы.

Размер скрываемого сообщения

Рис. 1. Взаимосвязь между устойчивостью стеганосистемы и объемом скрываемого сообщения при неизменном размере контейнера

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

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

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

Следовательно, необходим алгоритм, повышающий степень надёжности сокрытия информации и предполагающий расширение пропускной способности (объема встраиваемых данных). Так же при передаче стеганографических сообщений важным остается контроль целостности. При перехвате передаваемого сообщения противником есть вероятность, что оно будет модифицировано и использовано для дезинформации. Данную проблему можно решить, применяя алгоритмы электронной цифровой подписи. Используя результаты работ [1, 5, 8], приведем алгоритм, удовлетворяющий сформулированным ранее требованиям.

Базовая модель стеганографической системы.

Рассмотрим математическую модель стеганосистемы. Процесс тривиально стеганографического преобразования описывается зависимостями [2] :

W - процесс скрытия информации;

D - процесс извлечения скрытой информации;

W: СхМ ^S;

D : S^M,

где S = {(Ci, mi), (С2, m2),..., (сп, тп), ..., (cq,mq)| = (si, S2, ..., sq} - множество контейнеров-результатов (стегонограмм). Необходимые условия: 1. Отсутствие “пересечения”, то есть, если та Ф ть, причем та, ть ЕМ, a (са, та), (сь, ть ) Є S, то Е (са, та)пЕ (сь, ть) = 0.

Ici > jMj.

Стороны должны знать алгоритмы прямого (W) и обратного (D) стенографического преобразования.

На основании этого, под стеганосистемой будем понимать совокупность

Y = (С, М, S, W, D) контейнеров, сообщений и преобразований, которые их связывают.

Для оценки надежности стеганосистемы введем функцию подобия на множестве С.

Определение 1.

Пусть С - непустое множество, тогда функция sim (С) ^ (-<я, 1] является функцией подобия на множестве С, если для каких-либо x,y х, у Є С справедливо, что sim (х, у)=1 в случае х = у и sim (х, у) < 1 при х Ф у . Стеганосистема может считаться надежной, если sim[c, Е(с, т)] « 1 для всех т Є М и с Є С, причем в качестве контейнера с должен избираться ранее не использованный.

Теперь рассмотрим понятие абсолютно надежной стеганосистемы. Её идея базируется на случайности избирания контейнера с из множества С с вероятностью Рс. Встраивание сообщения в контейнер можно описать функцией, определенной на множестве С. Пусть Рс - вероятность формирования стеганосистемы W(c, т, к) на множестве S всех возможных стеганограмм, полученных с помощью стеганосистемы. Ps (с) =0, если контейнер с никогда не используется для получения стеганограмм. Учтя распределение вероятностей на множестве ключей К и множестве сообщений М, можно вычислить вероятность Ps. Определим на множестве Q такое соотношение для относительной энтропии, с помощью которого можно измерить неэффективность принятия неверной гипотезы о распределении Р1 в случае истинного распределения Р0 :

D

где выражение log2 является алгоритмическим отношением правдоподобия.

Определение 2.

Пусть X - стеганографическая система; Ps - распределение вероятностей передачи каналом связи стеганограмм; Рс - распределение вероятностей передачи каналом связи пустых контейнеров. Система X называется р — надежной к пассивным атакам, если D(PC ||PS) < р, и является абсолютно надежной, если р = 0. Следовательно стеганостистема X теоретически абсолютно надежна, если процесс встраивания секретного сообщения в контейнер не изменяет распределение Рс.

Теорема.

Пусть X - стеганографическая система, которая является р надежной против пассивных атак. Тогда вероятность ß того, что нарушитель не обнаружит скрытое

сообщение, и вероятность а того, что он ошибочно обнаружит несуществующее скрытое сообщение, удовлетворяют соотношению й(а,р) < р, где d(a, Р) - относительная двоичная энтропия, которая определяется как

й

В частности, если а = 0, то р > 2-р.

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

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

На вход поступает соотношение Q. Введем функцию П^) = 51,Б2 ...Бп, которая осуществляет разбиение Q и зашифровывание получившихся блоков. В сте-ганокодере осуществляется распределение шифроблоков по контейнерам, причем в различных файлах должно использоваться их одинаковое число. Для повышения надежности при передаче можно использовать инверсию функции П к сообщению Q. П&) = Бп...Б2, Б1.

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

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

Для зашифровывания при разбиении целесообразно использовать алгоритмы с открытым ключом [6]. В этом случае может быть несколько участников тайного информационного обмена.

Множественная инкапсуляция

Для создания многоступенчатой системы защиты используем предложенную в [1] множественную инкапсуляцию.

Пусть ш - глубина инкапсуляции, Q - сообщение, подлежащее зашифровы-ванию, П^) = Б^^,Б2,... , Бп - функция, осуществляющая разбиение Q и зашифровывание получившихся блоков, П^) = Б^^,Б2,... , Бп - инверсия функции Е к сообщению Q, Р-^, Р2,..., Рш - псевдосообщения для инкапсуляции.

Алгоритм множественной инкапсуляции

ВХОД: Исходное сообщение Q.

ВЫХОД: Набор стеганоконтейнеров.

Шаг 1. Разбиение исходного сообщения и зашифровывание получившихся блоков П(@) = 5^Б2,... ,Бп.

Шаг 2. Разбиение псевдосообщений П(Р) = Б' 1,Б'2,... ,Б'п.

Шаг 3. Процесс инкапсуляции П(0) ^ П(Р).

Алгоритм множественной инкапсуляции представлен на рис. 2.

Рис. 2. Алгоритм процесса зашифровывания с инкапсуляцией в псевдосообщения

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

Защита от модификации стеганосообщения. Для предотвращения модификации стеганосообщения в рассмотренном алгоритме можно использовать российский стандарт электронно-цифровой подписи (ЭЦП) ГОСТ Р 34.10-2001 [7]. Стойкость алгоритма базируется на сложности дискретного логарифмирования в группе точек эллиптической кривой.

В [7] сформулированы следующие параметры ЭЦП:

♦ простое число р - модуль эллиптической кривой, удовлетворяющее неравенству р > 2255;

♦ эллиптическая кривая Е, задаваемая своим инвариантом ](Е) или коэффициентами a, b Е Fp, где Fp — конечное поле из р элементов. J(E) связан с коэффициентами а и b следующим образом:

лп 3

J

♦ целое число т - порядок группы точек эллиптической кривой Е, тфр;

♦ простое число q - порядок циклической подгруппы группы точек эллиптической кривой Е, для которого выполнены следующие условия:

(т = nq, п Е Z, п> 1

\2254 < q < 2256 ;

♦ точка Р Ф О эллиптической кривой Е, с координатами (хр, ур), удовлетворяющая равенству qP = О, где О - нулевая точка;

♦ хеш-функция h(•) Vx ^ V256, отображающая сообщения, представленные в виде двоичных векторов произвольной конечной длины, в двоичные вектора длины 256 бит. Хэш-функция определена в [8].

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

т Ф р;

т взаимно просто с

р — 1, р2 — 1,... , рк — 1.

На основе анализа, проведенного в [9], для выбора эллиптической кривой будем использовать алгоритм Newton AGM.

Алгоритм Newton AGM. Возьмем простое число р, такое, что p £ И*, q = pn и E данная эллиптическая кривая. Проблема подсчета числа точек эллиптической кривой эквивалентна вычислению следа морфизма Фробениуса Frq как # E(Fq ) = 1 + q — T^^q).

Условные обозначения и сложность гипотез. Будем считать, что произведение двух целых чисел длинной n бит занимает O(n^) битовых операций. Классически, с алгоритмом умножения целых чисел с БПФ, ц = 1 + е. Пусть p постоянное малое простое число, q = pn и Fq - конечное поле с q элементами. Обозначим через Lq кольцо нормирования неразветвленного расширения степени n из Qp, а будет обозначать перестановки Фробениуса над полем рациональных чисел Lq, что рассматривается как расширение Qp и неархимедову оценку Lq обозначим как v. Для каждого m £ И*, мы имеем каноническую проекцию nm: Lq ^ Lq/pmLq и установим п = щ для проекции на конечное поле Fq.

Многие математические объекты, использованные в описании алгоритмов, можно рассматривать как список элементов TLq. Формально говоря, отображения в пт этих элементов из Lp будут называться в этих алгоритмах математическими объектами, вычисленными “с точностью m ” или “с погрешностью m” или “по модулю pm ”.

Будем обозначать Tm n сложность перемножения двух элементов из Lpn с точностью m. Далее, пусть Smn будет временной сложностью вычисления с точностью m отображения элемента из Lq с помощью перестановок Фробениуса. Если E эллиптическая кривая над Fq, то j(E) будет j —инвариантой и Ет - канонический подъем E. Предположим, что j(E) £ Fq\Fp2. Точка, бесконечно удаленная от эллиптической кривой, будет обозначаться О.

Вычисление корней обобщенных уравнений Артина-Шрейера (Artin-Schreier’s).

Если Fq является полем характеристики р, то уравнение Артина-Шрейера имеет вид xp — x + в = 0 с в £ Fq. Будем говорить, что уравнение является обобщенным уравнением Артина-Шрейера, если оно может быть записано в виде

o

В частности, п примененное к этому уравнению дает все классические уравнения Артина-Шрейера. На рис. 3 приведен алгоритм поиска корней такого уравнения.

Алгоритм решения обобщенного уравнения Артина-Шрейера

Z

ВХОД: a и b в—— ,m и v в М.

^ pm Zq’

ВЫХОД: A и B такие, что решение a(x) = ax + b mod pm удовлетворяет av (x) = av (A) x + av (B) mod pm.

Шаг 1. Если v = 1, тогда возвращает an-1 (a)mod pm, an-1(b) mod pm.

Шаг 2. A, B := ArtinSchreierRoot(a, b, m, |V|).

Шаг 3. Вычисляем A, B = Aan- Ы (A) mod pm, Aan- Ы(B) + B mod pm.

Шаг 4. Если v mod 2 = 1, тогда A, B = Aan-v (a) mod pm,Aan -v (b) + B mod pm.

Шаг 5. Возвращает A, B.

Рис. 3. Алгоритм решения обобщенного уравнения Артина-Шрейера

Улучшенный алгоритм подъема. Опишем алгоритм, предложенный Рей-нальдом Лесьером (Reynald Lercier) и Давидом Любицом (David Lubicz) для подсчета количества точек эллиптической кривой, определенной над конечным полем [10].

Для решения основной проблемы, содержащейся в алгоритмах подсчета точек, которая заключается в поиске корней в Дч с точностью ш, при фиксированном т£М, уравнения вида ф(х, Е(х)) = о, с полиномиальными коэффициентами ф в Дч, когда решение х0 при низкой точности такого уравнения уже известно, Лесьером и Любицом был предложен расширенный алгоритм Ньютона. Основная идея этого алгоритма заключается в небольшой модификации хорошо известного алгоритма для вычисления корней одномерных полиномов над Дч с целью восстановления квадратичной сходимости.

В частности, пусть ф Є Др [х, у] двумерный полином с коэффициентами в Дч. Пусть х0 Є Дч нулевой элемент уравнения ф(х, Е(х)) = 0 шогі рш, ш Є М. Кроме того, предположим, что

Е

и

V

Единственная сложность в случае одномерного полинома, это композиция с £. Но так как такие морфизмы сохраняют оценки, доказательство результата в этом случае очень близко к доказательству для классической сходимости Ньютона [11. С. 493-494]. Опустим данное доказательство и приведем непосредственно алгоритм.

Алгоритм Ке^опЬіЙ

Алгоритм вычисляет корни ф(х, Е(х))шогі рш, при известном решении х0 по модулю р2к+\ где

к = ф

ВХОД: хо Є-2к+ГГ,шЄМ

р

ВЫХОД : х —решение ф(х,£(х))шо^ рш.

Шаг 1. Если ш < 2 к + 1 тогда возвращаем х0.

Шаг 2. ш := [ш| + к.

Шаг 3. х = №ш1опЫП:(х0, ш).

д

Шаг 4. Подъем х к тч ; у = £(х)шо^ рш.

р

Шаг 5. Дх = 5хф(х,у)шо^ рш—к;.

Ду = 5уф(х,у)шо^ рш—к.

Шаг 6. 7 = ф(х, у)шо^ рш

Шаг 7. а, Ь :=ArtinSchreierRoot (---7—), — —, ш — к, п).

V рш—кДу/ Ду '

Шаг 8. Возвращает х + рш—к(1 — а)-1Ь.

В [12] Местре описывает очень эффективный алгоритм вычисления точек на эллиптических кривых, определенных над Р2п. В нем используется алгебраическо-геометрическое среднее (AGM).

Опишем сначала версию данного алгоритма, которая обычно используется на практике. Пусть Е - эллиптическая кривая, определенная над полем Р2п уравнением у2 + ху = х3 + а6. Мы можем рассмотреть последовательность элементов Д2п, определенную как

а

—+1

(і + ап )/2ТаП

с первым элементом, равным а0 = 1 + 8а6 6 Д2И. Квадратный корень уравнения выбран так, что VI + 8£ = 1 + 4£:' с £, £' 6 Д2И. Тогда получается, что

Гг^г^) =

2аг—

-2— \ 1+агп]

Д2 \ І2І+3/

Рис. 4. Алгоритм NewtonLift

2

Другой важный факт, это ап+1 — о'(ап )шо^2п +3. Поэтому, как и алгоритм Сатоша, метод AGM можно четко разделить на две части. В первой части содержится вычисление корней 4хст(х)2 = (1 + х)2 в точности до | + 3. Вторая часть дает след Фробениуса с нормой вычисления. Первая часть может быть улучшена путем применения процедуры NewtonLift к

ф(х, у) = 4ху2 — (1 + х)2,

поскольку

и 0Х

В данном алгоритме временная сложность тривиально та же, как и в алгоритме NewtonLift.

Использование приведенного алгоритма при формировании параметров ЭЦП исключит ситуацию выбора слабых эллиптических кривых, а также сократит временные и ресурсные затраты на проведение расчетов.

Рис. 5. Применение ЭЦП при формировании стеганосообщения

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Михеев В.А. Репин М.М. Способ многоконтейнерной стеганографической защиты информации с разделением исходного сообщения на части и множественной инкапсуляцией // Материалы XXI Международной научно-практической конференции «Информационная безопасность-2010» (Часть I). - Таганрог: Изд-во ТРТУ, 2010. - С. 88-90.

2. Конахович Г.Ф. Пузыренко А.Ю. Компьютерная стеганография, теория и практика.

- Киев: МК-Пресс, 2006.

3. Christian Cachin. An Information-Theoretic Model for Steganography, In Proceeding of 2nd Workshop on Information Hiding (D. Aucsmith, ed.), Lecture Notes in Computer Science, Springer, 1998. - P. 306-318.

4. Грибунин В.Г., Оков И.Н., Туринцев И.В. Цифровая Стеганография. - М.: Солон-Пресс, 2002. - 272 с.

5. Михеев В. А., Николаев А. В., Репин М. М. Способ многоконтейнерной стеганографической защиты информации с разделением исходного сообщения на части // Вопросы защиты информации. - М.: ВиМи, 2009. - № 4 (87). - С. 32-35.

6. СаломааА. Кpиптогpафия с отбытым ключом: Пф. с англ. - М.: Мщэ, 1995. - 318 с.

7. ГОСТ Р 34.10-2001. Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи. - М.: ГОССТАНДАРТ РОССИИ, 2001.

8. ГОСТ Р 34.11-94 Информационная технология. Криптографическая защита информации. Функция хэширования. - М.: ГОССТАНДАРТ РОССИИ, 1994.

9. Михеев В.А., Репин М.М. Анализ алгоритмов подсчета числа рациональных точек эллиптической кривой // Материалы XXI Международной научно-практической конференции «Информационная безопасность-2010» (Часть I). - Таганрог: Изд-во ТРТУ, 2010.

- С. 91 -92.

10. ReynaldLercier, DavidLubicz. Counting Points on Elliptic Curves over Finite Fields of Small Characteristicin Quasi Quadratic Time. - 2005.

11. Serge Lang. Algebra (3rd revised edition), volume 211 of Graduate Texts in Mathematics. Springer-Verlag, 2002.

12. Jean-Francois Mestre. Lettre a Gaudry et Harley. Available at http://www.math.jussieu.fr/ ~mestre, 2001.

Михеев Вячеслав Алексеевич

Открытое акционерное общество «Концерн радиостроения «Вега»».

Е-mail: мikheev@vega.su.

121170, г. Москва, Кутузовский проспект, 34.

Тел.: 84992490585; факс: 84959331563.

Репин Максим Михайлович

E-mail: bmstu.iu8@gmail.com.

Тел.: 84992494429; факс: 84959331563.

Mikheev Viatcheslav Alexeevich

Joint-Stock Company «Radio Engineering Corporation «VEGA»».

E-mail: мikheev@vega.su.

34, Kutuzov avenue, Moscow, 121170. Russia.

Phone: +74992490585; fax: +74959331563.

Repin Maxim Mixajlovich

E-mail: bmstu.iu8@gmail.com.

Phone: +74992494429; fax: +74959331563.