Специальные классы кодов для стеганографических систем

УДК 681.322

С.В. Беззатеев, Н.В. Волошина, К.А. Жиданов

Специальные классы кодов для стеганографических систем

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

Ключевые слова: стеганография, Б5, коды во взвешенной метрике Хэмминга, ЖР5.

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

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

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

Обобщенная схема стегосистемы (этап встраивания) представлена на рис. 1. Извлечение информации производится в обратном порядке.

Рис. 1. Схема встраивания

Схема встраивания состоит из двух основных этапов:

• первый - формирование рабочей области контейнера и формирование битового блока;

• второй - процесс встраивания передаваемого сообщения в контейнер (формирование стего-контейнера).

Задачей первого этапа является формирование рабочей области контейнера, куда будет производиться встраивание информации. Для современных методов характерен подход, при котором контейнер делится на две части (зоны), а при встраивании используется только одна из них. Например, встраивание с использованием одной зоны в мультимедиаданных, содержащей наименее значимую информацию. Наиболее известным примером являются ЬББ-методы встраивания в изображения [1, 2]. В результате рабочая область контейнера содержит биты, имеющие одинаковую значимость, с точки зрения влияния их изменения на искажение контейнера. Далее выделенная рабочая область преобразуется в блок бит (битовый блок), над которыми осуществляется преобразование встраивания.

Основной задачей на втором этапе является разработка метода встраивания передаваемого сообщения в сформированную рабочую область контейнера путем внесения изменений в сформиро-

ванный битовый блок. При этом решается задача обеспечения незаметности факта встраивания. Незаметность искажений принято оценивать отношением количества искаженных бит в битовом блоке к его объему. Чем большее значение имеет этот параметр, тем менее эффективным считается предлагаемый метод [3, 4]. Также эффективность метода встраивания определяется отношением объема встраиваемой информации к объему контейнера (рабочей области). Чем большее значение имеет данный параметр, тем эффективнее стегоалгоритм.

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

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

Одним из эффективных методов встраивания информации в контейнер является использование помехоустойчивых кодов [3]. В статье рассматривается возможность повышения эффективности стегоалгоритма с учетом предложенной взвешенной модели контейнера и согласованных с ней специальных классов помехоустойчивых кодов во взвешенной метрике Хэмминга [5].

Стеганографический метод Р5

В качестве базового метода встраивания сообщений, использующего помехоустойчивые коды, рассмотрим алгоритм Б5 [3], структурная схема которого представлена на рис. 2.

1Іоследователь ность

синдромов ч

длины Г

Рабочая область: DCTe [-7, 7]

Вычисление синдрома S/ длины Г

Ж

Вычисление вектора ошибки Є/

Рис. 2. Схема F5

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

Как известно, код Хэмминга является совершенным, что обеспечивает соответствие любому ненулевому двоичному вектору длины r (синдрому) уникального вектора e (вектор ошибки) длины n с числом единиц, равным 1, т.е. вес Хэмминга такого вектора wth (e) = 1. Проверочная матрица H такого кода имеет в качестве столбцов все возможные ненулевые векторы длины r . Очевидно, что число таких векторов n = 2r -1. Например, для r = 3 матрица H имеет следующий вид:

"0011011"

H =0101101.

1 0 0 0 1 1 1

Синдром S , вектор a и проверочная матрица кода Хэмминга H связаны соотношением

а • Нт = 8 .

Описание процедуры встраивания стеганографического метода Б5:

• Встраиваемая информация I разбивается на последовательности длины г бит.

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

проверочной матрице Н и соответствующим вектором е. длины п .

• Рабочая область контейнера (битовый блок) рассматривается как последовательность векторов а. длины п с синдромами 8., полученными по той же проверочной матрице Н.

• Процедура встраивания состоит в замене текущего вектора а, длины п битового блока на вектор а', = а, © е,, дающий требуемый синдром 8о., равный передаваемой последовательности длины г бит.

• Для Б5 такая замена возможна путем внесения искажений е,, ^їн (е 1 в битовый блок

рабочей области контейнера.

Работа Б5 схематически представлена на рис. 3.

Г

ч Ч - Ч

г

8і 82

а1 а2

Встраивание: 8, = 8о. © 8, ^Є.

Г

8оі 802

а} = аі © еі а2 = а2 © е2

8і

а.

' Г чп

а}= а. © е.

Рис. 3. Схема процедуры встраивания в

Для данного метода в дальнейшем были предложены идеи усовершенствования за счет использования других кодов, например БЧХ-кодов, исправляющих две ошибки [6]. В результате при увеличении максимального числа вносимых искажений увеличилось соотношение длины синдрома г к длине вектора п, что значительно увеличило максимальный объем встраиваемой информации. В то же время отношение числа искаженных бит к объему рабочей области стало хуже, поскольку для выбранных кодов БЧХ максимальное число искажений Ї на длину вектора п равно 3.

В представленных выше методах для формирования рабочей области контейнера используется примитивная модель контейнера, содержащая только две зоны. В Б5 в качестве рабочей области используются БСТ коэффициенты, значения которых принадлежат множеству {-7,-6,...,6,7}\{0}.

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

Предлагаемый метод

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

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

Взвешенная модель контейнера

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

Таким образом, элементам рабочей области контейнера назначаются веса Wj, задающие их

значимость. Вес элемента Wj характеризует вклад искажений элементов контейнера данного веса Wj в заметность результирующих искажений контейнера. Элементы одинакового веса объединяются в зоны. В результате контейнер представляет собой множество зон {zi,Z2,...,zm}, для каждой из которых определен соответствующий вес значимости {wZl,wz2,.,wZm} (рис. 4).

Рис. 4. Формирование взвешенной рабочей области

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

В случае представления контейнера, как множества элементов, разбитого на т зон с различной

значимостью (весом м?} ), можно сформировать рабочую область контейнера с взвешенными элементами. Для встраивания информации в такой взвешенный контейнер предлагается использовать коды во взвешенной метрике Хэмминга [5]. Такой подход позволяет согласовать метод встраивания с взвешенной моделью контейнера.

Коды во взвешенной метрике Хэмминга

В большинстве случаев в теории кодирования рассматривается ситуация, когда каждая позиция передаваемого вектора а длины п имеет одинаковую вероятность р искажения. То есть, в двоичном случае для каждой позиции передаваемого вектора а вероятность перехода из 1 в 0 и из 0 в 1 равна р . Однако существуют модели каналов передачи и хранения информации, в которых вероятность искажения на различных позициях различна. Тогда длина вектора представляется суммой длин П1,П2,...,щ:п = Х!-1П'. Вероятность искажения символа, соответственно, различна -Р1, Р2,---, Р1 и зависит от того, на какой позиции он находится. Очевидно, что в этом случае эффективным решением является использование помехоустойчивых кодов во взвешенной метрике Хэмминга. Такие коды позволяют адаптировать корректирующую способность кода к неравномерному

распределению вероятности ошибки на длине передаваемого вектора . Задание таких кодов определяется вектором весов позиций Ж = {м1,м^,...,щ/}, набором длин {п1,П2,...,п/}, числом информационных символов к и корректирующей способностью кода, определяемой его расстоянием во взвешенной метрике Хэмминга:

й-1

—- > щ -Т1 + щ-Т2 + ...+ м/-т/,

где X -Т1 +Т2 +... + т/ - общее число ошибок, которые такой код может исправить, т - число ошибок, исправляемых кодом на щ позициях, имеющих вес щ' и вероятность ошибки р'. Максимальное значение Т' определяется как

й-1 т - -------- .

'тах _щ • 2_

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

В стандартном методе Б5 используется самая простая модель контейнера, состоящая всего из двух зон значимости: 20- ЬББ и 21- МББ с весами щ20 и щ21 соответственно. Рабочая область контейнера состоит только из элементов зоны ¿о . Таким образом, встраивание производится только за счет изменения БСТ-коэффициентов, значения которых принадлежат множеству

{-7,-6,...,6,7}/{0} . Для расширения рабочей области контейнера воспользуемся описанной выше взвешенной моделью контейнера. Допустим, контейнер описывается моделью, в которой существу-

щ щ щ 20 21 22 тт

ют три взвешенные зоны значимости 20 , 21 и 22 с весами соответственно щ 0щ ,щ 2. Пусть

щ V А щ щ Г-Х щ

зона 20 полностью совпадает с зоной 20. А зона 2! разделена на две: 2! и 22 . Зона 22 является

МББ-зоной и не допускает внесения искажений. Зона 2щ выделена из зоны 21 и содержит элементы контейнера, допускающие искажения, но в меньшей степени, чем элементы зоны 20 . Тогда для элементов зоны 2щ назначаются веса большие, чем веса элементов зоны 2щ, т.е.

щ20 < щ2 < щ22 -да . Такое представление позволяет расширить размер рабочей зоны контейнера.

При использовании взвешенной модели в процессе формирования битового блока также необходимо учитывать веса элементов, преобразуемых в биты. В этом случае битовый блок представляет собой набор взвешенных подблоков ', с разными весами щ'. Искажения бит разных подблоков оказывают неодинаковое влияние на заметность искажений в результирующем стегоконтейнере. Для алгоритма Б5 и его модификаций неравнозначность весов подблоков можно задавать максимальным числом искажений X на длине вектора а. Для кода Хэмминга эта величина равна 1 [3], а для БЧХ

равна 3 [6]. В работе [6] показано, что для стандартной рабочей области Б5 20 допускается значение X=1. Тогда и для зоны 2щ допустимо значение X - 3 . Для более значимой зоны 2щ значение для X равно 1. Тогда для внедрения информации в первом подблоке '0 выбирается БЧХ (БСН), код, исправляющий две ошибки, а для Ъ1 - код Хэмминга. При этом встраивание информации в подблоки происходит независимо.

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

Тогда в случае невзвешенного встраивания для векторов аъ0 битового подблока '0 используются следующие параметры: пъ0 -15, ' - 3, ' - 8 . Для векторов а' подблока '1 используются: п' - 7, ' -1, ' - 3 . В этом случае для итогового вектора а' битового блока используются параметры: пъ -22, X' - 4, V -11. Такой способ встраивания обозначим БСН+Б5.

В случае взвешенного встраивания с такими же параметрами взвешенного битового блока 'щ

щ щ щ щ 1 С п л щ о тт

для вектора а' задаются параметры: п' - п' + п^ -15 + 7 - 22, X' - 4, ' - 8. При данных параметрах для подблоков взвешенного вектора а'щ назначаются веса щ'0 -1 и щ'1 - 4 . Такой способ встраивания обозначим как WF5.

Для описанного выше варианта распределения зон и весов была построена схема встраивания, представленная на рис. 5.

Сравнение эффективности методов производится по параметрам п - длина вектора встраивания а, ґ - максимальное число искажений на длине п, г - длина синдрома

вектора а, ґ - оценка среднего числа искажений на длине п.

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

искажения. Таким образом, штрафная функция имеет следующий вид:

I

Е (ч)=Е *і -Пі, і=0

где Пі - штрафной коэффициент искажения, вносимого в і -й зоне контейнера.

Результаты сравнения эффективности методов представлены в таблице.

Сравнение алгоритмов

Параметр оценки эффективности Алгоритм

F5+BCH WF5

Длина вектора а 22 22

Длина синдрома г 8+3 NN

Максимальное число искажений ґ на длине вектора а 3+N 4

Оценка средней ошибки ґ на длине вектора а 3,34 3,44

N £ II о 5,97 3,63

о N II 4,22 3,62

График зависимости изменения значения штрафной функции F (п) от величины штрафа Пь характеризующего попадание вносимого искажения в зону ¿1, для взвешенного метода WF5 (жирная

линия) и невзвешенного метода BCH+F5 (пунктирная линия) представлен на рис. 6.

Из представленного графика видно, что если не учитывать значимости искажений (по =П1 = 1),

то метод BCH+F5 является более эффективным. Однако при увеличении значения штрафа п за попадание искажений в более значимую зону z\ эффективность предложенного взвешенного метода WF5 возрастает. Таким образом, для взвешенных моделей контейнера предложенный метод дает большую эффективность, чем стандартные методы стеганографического встраивания.

Рис. 6. Оценка эффективности встраивания 0 2 4 6 п0 штрафной функции /'

Заключение

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

использованием взвешенной модели контейнера

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

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

2. Оптимизация процедуры построения рабочей зоны взвешенного контейнера.

3. Построение согласованных с взвешенным контейнером кодов во взвешенной метрике Хэмминга.

4. Оптимизация параметров и вида штрафной функции для оценки искажений при использовании предложенного подхода.

5. Расширение предложенного подхода с использованием взвешенной модели контейнера на другие классы стеганографических систем.

Литература

1. Chandramouli R. Analysis of LSB based image steganography techniques // Image Processing: International Conference. - 2001. - P. 1019-1022.

2. Neeta D. Implementation of lsb steganography and its evaluation for various bits / D. Neeta, K. Snehal, D. Jacobs // Digital Information Management: 1st International Conference - 2006.- P. 173-178.

3. Westfeld A. High Capacity Despite Better Steganalysis (F5-A Steganographic Algorithm) / I.S. Mos-kowitz (eds.) // Information Hiding. 4-th International Workshop. Lecture Notes Computer Science. - Berlin; Heidelberg; New York: Springer-Verlag, 2001. - Vol. 2137. — P.. 289-302.

4. Galand F. Information hiding by coverings / F. Galand, G. Kabatiansky // Proc. of IEEE Information Theory Workshop. - 2003. - P. 151-154.

5. Bezzateev S. Class of binary generalized Goppa codes perfect in weighted Hamming metric / S. Bez-zateev, N. Shekhunova // Worrkshop on coding and cryptography. - Paris, France, 2011. - P. 233-242.

6. Medeni M.B. A Novel Steganographic Protocol from Error-correcting Codes / M.B. Medeni, El.M. Soudi // Journal of Information Hiding and Multimedia Signal Processing. - 2010. - P. 339-343.

7. Bezzateev S. Special Class of (L,G) Codes for Watermark Protection in DRM / S. Bezzateev, N. Voloshina, V. Minchenkov // Eighth International Conference on Computer Science and Information Technologies. - Yerevan, Armenia, 2011. - P. 225-228.

Беззатеев Сергей Валентинович

Д-р техн. наук, доцент, зав. каф. технологий защиты информации

Санкт-Петербургский государственный университет аэрокосмического приборостроения (ГУАП) Тел.: 8 (812) 494-70-52 Эл. почта: bsv@aanet.ru

Волошина Наталия Викторовна

Канд. техн. наук, доцент каф. технологий защиты информации ГУАП Тел.: 8 (812) 494-70-52 Эл. почта: natali@vu.spb.ru

Жиданов Константин Александрович

Ассистент каф. технологий защиты информации ГУАП

Тел.: 8 (812) 494-70-52

Эл. почта: konstantin.zhidanov@gmail.com

Bezzateev S.V, Voloshina N.V., Zhidanov K.A.

Special class of error correcting codes for steganographic systems

A new method for embedding messages in the container, taking into account the significance of the original container elements, is proposed. The comparison of the proposed method and algorithm F5 and its modifications is represented. Enhancement of the stegoalgorithm efficiency is achieved by using a special class of codes in the weighted Hamming metric applied to the improved weighed model of stegocontainer.

Keywords: steganography, F5, Hamming waited metric codes, WF5.