Стеганографическая система на основе неравновесного позиционного кодирования

КОМПЬЮТЕРНАЯ _ ИНЖЕНЕРИЯ И ТЕХНИЧЕСКАЯ ДИАГНОСТИКА

УДК621.327:681.5

СТЕГАНОГРАФИЧЕСКАЯ СИСТЕМА НА ОСНОВЕ НЕРАВНОВЕСНОГО ПОЗИЦИОННОГО КОДИРОВАНИЯ

БАРАННИК В.В., БЕКИРОВ А.Э.,

БАРАННИК Д.В._______________________

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

1. Введение

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

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

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

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

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

В процессе реализации функционального преобразования на основе неравновесного позиционного кодирования область исходного изображения, содержащая совокупность видеопоследовательностей, рассматривается как множество неравновесных позиционных чисел {A( j)}. Здесь неравновесное позиционное число A( j) без имплантации для j -го столбца массива видеоизображения состоит из m элементов,

т.е. A(j) — {a1, j;...; ai, j ;...;am, j } .

Имплантацию в число A(j) предлагается проводить поэлементно, т.е. один элемент b^ на позицию Y -го разряда числа A(j) . Здесь b^ - £ -й элемент встраиваемой последовательности B = {bi;...;b^;...;bv } ,

b^ є [0; 255], £ = i, v . В этом случае имплантация задается следующей формулой:

A(j)' = A(j) U b£ , b^ = aY,j .

В результате имплантации число A(j)' примет вид:

A(j) = { a1,j;...;aY,j;...;ai,j;...;am+1,j } ,

где A(j)' - число с имплантированным элементом

aY,j в Y -й разряд числа; (m + 1) - количество элементов в числе с имплантацией.

На следующем этапе число A(j)' с имплантированным элементом кодируется. На этом этапе проводится встраивание скрываемой информации в код-контейнер. Значение кода-контейнера, содержащее скрываемую информацию, называется стеганокодом. Формирование стеганокода на основе кодирования неравновесного позиционного (НП) числа с имплантированным элементом скрываемого сообщения называется структурным стеганографическим кодированием в неравновесном позиционном базисе.

Значения стеганокода N(j)' для НП числа с имплантацией определяется по следующей формуле:

Y-1 m+1

N(j)' = (I ai,j V,j) + aY,jVY,j + I ai.j Vi,j .

i = 1 i=Y+1

Здесь V',j - весовой коэффициент элемента ai,j; j -количество столбцов в массиве фрагмента видео-

изображения, j = l,n; V,j - весовой коэффициент имплантированного элемента aY,j.

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

m+1

VY,j = .

і;=у+1

Значение весового коэффициента V',j для элемента ai,j определяется на основе выражения:

m+1

V'y,j n^^,j, l=i+1 ^ i = 1, у -1;

m+1

^=y+1 m+1 ^ i = y ;

П^У’ l=i+1 ^ i = y + 1,m +1.

В случае такого встраивания фрагмент исходной видеопоследовательности рассматривается как позиционное число A(j)' = { a1J;-";ay,j; — ;aiJ;-";am+1,j } с имплантированным элементом aY,j, i = 1, m +1. Для числа A(j)' кодовое представление C(A(j)') его сте-ганокода N(j)' в неравновесном позиционном базисе формируется в два этапа.

Первый этап включает в себя вычисление стеганокода N(j)', как взвешенного суммирования величин ai,j 4j и aY,j VY,j. Кодограмма С(А(j)') стеганокода формируется на втором этапе для величины N(j)':

С(А(j))' = {01 О, ,...,0q(j)'} ,

где q(j)' - длина кодограммы C(A(j)').

В результате стеганографического кодирования формируются кодовые комбинации, состоящие из двух частей: служебной Т(1) и информационной N(j)' (значение стеганокода). Такую кодовую комбинацию будем называть стеганограммой.

Длина q(j)' кодограммы стеганокода N(j)' для числа A(j)' с имплантацией определяется по формуле:

m

q(j)'= lN(j)' 12 = [^°g2 vY,j + ^2 n^i,j]+1=

i=1 m

= [l°g2 ^Y,j + E ^og2^i,j] +1,

i=1

где |N(j)' І2 - длина стеганокода N(j)'.

В то же время длина q(j) кодограммы кода-контейнера N(j) числа A(j) без имплантированного элемента определяется на основе следующего выражения:

m

q(j) = І С(А( j)) | = [^og2 n^i,j]+1 =

i=1 m

= [ E ^og2Vi,j] + 1 (бит).

i=1

Из сравнения выражений для q(j)' и q(j) можно заключить, что в процессе формирования стеганоко-да для числа A(j)' с имплантированным элементом относительно варианта до встраивания вносится структурная стеганографическая избыточность, равная величине (log2 У у, j ) бит.

Появление стеганографической избыточности негативно влияет на выявление факта встраивания информации. Неавторизированный пользователь на основе

имеющейся в кодограмме системы оснований Т(1) может вычислить длину q(j) кодограммы для кода контейнера N(j). Это позволит злоумышленнику установить наличие встроенной информации.

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

Локализацию структурной стеганографической избыточности в процессе формирования стеганокода в неравновесном базисе предлагается осуществлять на основе коррекции длины кодограммы C(A(j)') стеганокода N(j)'. Процесс коррекции предусматривает приведение длины кодограммы стеганокода q(j)' к

значению длины q(j). В физическом плане реализация коррекции кодограммы заключается в отбрасывании (log2 Vy,j) младших бит кодограммы C(A(j)'), т.е.

Cj' = [ N( j)"h = [ N( j)' / yyh,

где N(j)"' - значение стеганокода, скорректированное в процессе маскирования структурной стеганографической избыточности; [N(j)''']2 - двоичное значение скорректированного стеганокода N(j)'''; C'' -кодограмма кодового представления скорректированного стеганокода N(j)"'.

Чтобы обеспечить появление минимального значения R 0)стег структурной стеганографической избыточности в процессе стеганографического кодирования предлагается встраивать элементы в двоичном представлении, т.е. b^ є [0; 1]. В этом случае основание

встроенного элемента будет равно = 2 . Тогда

количество R0)стег структурной избыточности будет равно:

ЩіЕтег = q(j)'- q(j)=1 (бит).

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

CJ = [N(j)"'h = [N(j)' /2]2 .

После локализации стеганогр афической избыточности длина q(j)'' кодограммы скорректированного стеганокода N (j)'" будет вычисляться с помощью следующей формулы:

m+1

q( j)" =[(Z ^og2Vi,j)/2]+1 = q( j).

i=1

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

вес встраиваемого элемента Vy в неравновесном позиционном числе будет наибольшим, т.е.

где A(j)' - число с имплантированным на старшую позицию элементом a1,j .

2) Формирование стеганокода N(j)' для числа A(j)' с имплантированным элементом a1,j. Учитывая механизм локализации количества структурной стеганографической избыточности, выражения для формирования стеганокода N( j)' будет иметь вид:

m+1 m+1

N(j)' = a1,j V1,j + Zai,JVlJ; V',j = П^У,

i = 2 £=i + 1

где Vi',j - весовой коэффициент элемента ai,j; Vy -весовой коэффициент имплантированного элемента, равный накопленному произведению оснований всех

элементов числа A(j)', т.е.

m+1

v1,j = nw,j,

i=2

V,j = V',j = max .{Vijj}.

1<i<m+1

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

3. Основная часть

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

Стеганографическая система включает в себя следующие базовые составляющие:

I. Стеганографическое кодирование с маскированием стуктурной стеганграфической избыточности.

Рассмотрим процесс стеганографического кодирования. Данный этап включает в себя следующие действия:

1) Имплантацию элемента Ь£ на позицию старшего элемента числа A(j) . Здесь Ь£ - £ -й элемент встраиваемой последовательности B = {Ь1;.;Ь£ ; . ;Ьv}, Ь£ є [0; Ч, £ = 1, v . Имплантация задается следующей формулой

A(j)' = A(j) U Ь£ , b£ = a1,j є [0, 1].

В результате имплантации, число A(j)' примет следующий вид:

A(j) = { a1, j;...;ai,j ’...’am+1,j } ,

здесь Vi,j - основание (i; j) -го элемента числа A(j) ' с имплантацией.

С учетом того, что a1,j є [0; 1], преобразуем выражение для стеганокода к следующему виду:

N( j) ' H

m+1

Zai,jVi',j = N(j)’ ^ a1,j = 0;

i = 2

m+1

V1,j + Z ai,j V',j = V1,j + N(j), ^ a1,j =!,

i= 2

или используя функцию sign, получим:

m+1

N(j) ' = (1 - sign (1 - ay)) • V,j + Z ai,jVi',j .

i=2

3) Маскирование структурной стеганографической избыточности. Осуществление такого маскирования

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

N(j)''' = N( j)'/2

или

m+1

N(j)'''= ((1 - sign (1 - ay)) • V,j + Z ai,jVi,j)/2.

i=2

4) Формирование кодограммы C j для кодового представления скорректированного стеганокода N( j) :

CJ= {C1 ’...’Ct ,...,Cq(j) ''} ,

где q(j)" - длина кодограммы Cj, равная

m+1

q(j)" = [(Ё ^og2Vi,j)/2] + 1 .

i=1

На рис. 2 схематически отображены этапы стеганографического кодирования.

II. Процесс извлечения данных, содержащихся в стеганограмме.

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

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

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

енного элемента, процесс декодирования осуществляется на основе следующих этапов:

1) Извлечение из кодограммы С"" скорректированного стеганокода N(j)"" при помощи системы оснований У(1).

2) Восстановление элементов исходной видеопоследовательности по формуле:

ai,j = [ N(j)"" /Vi,j] - [ N(j)"" / (уi,jVi,j) ] уi,j ,

где ai,j- i-й элемент реконструируемого числа A( j)"",

как составляющей реконструируемой j -й видеопоследовательности при неавторизированном доступе.

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

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

Исходное числа A

A(j) = {a1,j;...; ai,j;...;am,j без имплантации. Выявление системы

оснований У(1) .

{A(j)"; У(1)}

Формирование стеганокода N( j) N( j)'

для числа A(j) с

имплантацией

n

m+1  V1,j + Ё ai,jVi,j i=2

Локализация

стеганографи

ческой

избыточност

и

N( j)" = N( j)" /2

т

{NCj)";T(1)}

Реконструкция элемента

a"'j числа A(j) ""

◄ a"' = [ N( jf/Vij]-

[(N(j)""/(Wi,j Vi,j) ] ^

Ключевая

информация

V1,j =2

Формирование кодо граммы для стеганокода

Nj)"

С""= {c1 ,...,cT , ..., cq( j)"}

Реконструкция элемента a[,j числа A(j) ""

a"j = [ N( j)* /j

[ (N( j)* / (^;,jV1,j)] y1,j

У1,

{Ny)" .y(1)} не авторизировано

Нет

Реконструированное число A( j)*

A( j)* = {a*j;...; a*,j....;am,j}

как составляющей реконструируемой видеопоследовательности

Реконструкция элемента aj j исходного числа

A( j)*

<j = [ N( j)*/Vi,j]-[(N(j)* /(Vi,jVi,j)] Vi,j

Устранение

эффекта

маскирования

N( j)* = 2N( j)'

Воздействия

- трансформация по сжатию

- стегано-атаки

- ошибки в канале связи

Да

авторизировано

Рис. 1. Структурная схема стеганографической системы на основе имплантации скрываемого двоичного элемента на старшую позицию НПЧ с последующим кодированием и маскированием

а) позиция стеганокода в сжатом представлении изображения;

б) позиция встроенного элемента a1 ,j;

в) основание встроенного элемента.

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

1. Извлечение из кодограммы С"" скорректированного стеганокода N(j)"'. Такое извлечение осуществляется на основе системы оснований Т(1), которая содержится в служебной части стеганограммы.

2. Проведение демаскирования стеганокода (устранение эффекта маскирования).

Для этого к двоичному представлению стеганокода N(j)"", извлеченного из кодограммы С"", добавляется один бит (ноль). Значение восстановленного стеганокода N(j)* определяется по формуле:

N( j)* = N( j)"". 2.

3. Восстановление встроенного элемента a",j. Данный этап реализуется на основе информации о позиции стеганокода в сжатом изображении, о позиции

встроенного элемента и его основания Уу = 2. Для этого используется следующая формула:

a",j = [N(j)*/VI,j]- [N(j)*/(y1,j V1,j) ] V 1,j.

Здесь a'1,j - значение изъятого бита встроенной информации, b^ := a",j.

*

4. Восстановление остальных элементов ay исходной видеопоследовательности проводится на основе использования системы оснований Т(1). При этом применяется выражение:

a*,j = [N(j)* /Vi,j]- [N(j)* /(vi,j Vj ] vi,j,

* * где ay - i -й элемент числа A(j) , как составляющей

реконструируемой исходной j -й видеопоследовательности при авторизированном доступе.

Рассмотрим пример, когда в число A(j) = (3; 5; 2; 6) с неравновесным базисом оснований Т(1) = (7, 6, 6, 8) имплантируется бит a у = 1 на позицию старшего элемента. Тогда число A ( j) с имплантацией примет вид: A(j)" = (1; 3; 5; 2; 6).

В таблице отображены промежуточные значения величин, которые использовались для получения результирующей кодограммы с" = С(А(j) " ) стеганоко-

да N( j) для числа A( j) с имплантированным элементом. Она определяется по формуле:

C" = {2016}2 + {864}2 + {1240}2 + {16}2 + {6}2 = {3142>2.

Промежуточные значения величин, которые используются при получении кодограммы С"

i ai j V . i,j ai,jVi,j С"  ci,j [log2 ai,jVi,j] + 1 С" cj

1 1 2016 2016 111111 00000 11 3142

2 3 288 864 110110 0000 10

3 5 48 240 111100 00 8

4 2 8 16 10000 5

5 6 1 6 110 3

Имплантация двоичного элемента на старшую позицию НПЧ

Сте ганогр аф иче ск ое кодирование

------------

Процесс маскирования

структурной

стеганографической

избыточности

------------

Процесс

формирования кодового слова скорректированного стеганокода

B

А( j)"

a1,j a2,j ai,j

m+1,j

N( j)"

N( j)"'

С j

с1, ...,ст ;...Cq(j)"

Рис. 2. Структурная схема построения кодограммы скорректированного стеганокода для числа А" (j) с имплантацией

Первая строка таблицы содержит значения для встраиваемого элемента a1,j = 1. Значения для элементов числа A( j) исходной видеопоследовательности содержатся в остальных строках таблицы.

Длина q(j)' кодового представления стеганокода N(j)' числа A(j)' с имплантированным элементом a",j = 1 определяется на основе следующего выражения:

m+1

q(j)' = [log2 y1,j • ^og2 ( ПУi,j)] +1 = 12 (W).

i=2

Величина Rc^-gp стеганографической избыточности кодограммы стеганокода N(j)' числа A(j)' относительно кода-контейнера составляет:

Rcтег = q(j)' - q(j) = 12 - її = і (бит).

Здесь локализация количества R^j. стеганографической избыточности будет заключаться в приведении длины кодограммы С' стеганокода N(j)' к значению q(j). Для этого необходимо отбросить младший бит информационной части кодограммы С'. При этом

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

Процесс локализации структурной стеганографической избыточности задается формулой:

N(j)"' = N( j)' /2 = 3142/2 = 1571.

Здесь N(j)"' - значение скорректированного стеганокода.

В результате локализации структурной стеганографической избыточности значения N(j)"' и N(j) будут различными, т.е. N(j)"' = 1571 Ф N(j)' = 3142.

Значение кодограммы С"' после применения локализации будет иметь следующий вид:

С"' = {11 1 000 1 0 0 1 1} .

Рассмотрим процесс стеганографического декодирования с демаскированием стеганокода N(j)"". Для этого к двоичному представлению стеганокода N( j)"" добавляется бит (ноль). Значение демаскированного

стеганокода N(j)* определяется по формуле:

N(j)* = N(j)"" • 2 =1571 • 2 = 3142.

Встроенный элемент a1,j восстанавливается путем

извлечения из кодограммы стеганокода N(j)*. Здесь используется служебная информация, а именно сис-

тема оснований Т(1). Извлечение проводится по формуле:

a1',j = [N(j)* /Vj - [N(j)* / Mj V,j) ] y1,j =

= [3142/2016] - [3142 /(2• 2016)] • 2 = 1.

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

a1,j = a1,j .

Восстановление остальных элементов, i = 2, m +1 для кода-контейнера осуществляется с помощью выражения:

aV = [N(j)* /Vi,j]- [N(j)* /(yi,j Vj ] Vi,j.

* _•

Для i = 2 значение элемента a будет равно:

a*2 . =[3142 / 288] - [3142 / (7• 288)] • 7 = 3.

2,j

*

Для i = 3 значение элемента ai j будет равно:

a* . =[3142 / 48] - [3142 / (6-48)] • 6 = 5.

3, j

Для i = 4 значение элемента a* будет равно:

a*4j = [3142/8] - [3142 / (6 ^8)] • 6 = 2.

*

Для i = 5 значение элемента a. , будет равно: a* j = [3142/ 1] - [3142 / (84 )] ^8 = 6.

В результате демаскирующего стеганографического

декодирования значения элементов i = 2, m +1 ре*

конструированного числа A(j) восстановлены без ошибок.

4. Выводы

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

Разработано структурное стеганографическое кодирование с маскированием, базирующееся на следующих этапах:

- формирование неравновесного позиционного базиса для фрагмента изображения;

- структурное стеганографическое кодирование в неравновесном базисе оснований;

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

Разработано демаскирующее стеганографическое декодирование для извлечения имплантированного на старшую позицию бита с одновременной реконструкцией элементов исходного НП числа. Механизм демаскирующего стеганографического декодирования предусматривает:

1) восстановление исходной длины для скорректированного в процессе маскирования стеганокода;

2) структурное стеганографическое декодирование, обеспечивающее восстановление неравновесного позиционного числа с имплантированным элементом;

3) изъятие элемента скрываемого сообщения со старшей позиции неравновесного позиционного числа.

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

Литература: 1. Грибунин В. Г. Цифровая стеганография / В. Г. Грибунин, И. Н. Оков, И. В. Туринцев. М.: Солон-Пресс, 2002. 272 с. 2. Конахович Г. Ф. Компьютерная стеганография. Теория и практика / Г. Ф. Конахович, А. Ю. Пузыренко. К.: МК-Пресс, 2006. 288 с. 3. Тарасов Д. О. Класифікація та аналіз безкоштовних програмних засобів стеганографії / Д. О. Тарасов, А. С. Мельник, М. М. Голобородько // Інформаційні системи та мережі: Вісник НУ “Львівська політехніка”. №673. Львів, 2010. C. 365-374. 4. Соколов А. В. Защита от компьютерного терроризма. Справочное пособие / А. В. Соколов, О. М. Степанюк. СПб. : БВХ-Петрбург; Арлит, 2002. 496 с. 5. Баранник В.В. Технология неравновесного позиционного кодирования для функционального преобразования чисел со встроенной информации / В.В. Баранник, Ю.Н. Рябуха, А.Э. Бекиров // Радиоэлектронные компьютерные системы. 2014. №4. С.23-32.

Поступила в редколлегию 12.12.2014

Рецензент: д-р техн. наук, проф. Безрук В.М.

Баранник Владимир Викторович, д-р техн. наук, профессор, начальник кафедры боевого применения и эксплуатации автоматизированных систем управления, Харьковский университет Воздушных Сил им. И. Кожедуба. Научные интересы: обработка и передача информации. Адрес: Украина, 61023, Харьков, ул. Сумская, 77/79.

Бекиров Али Энверович, соискатель ХНУРЭ.Научные интересы: обработка и передача информации. Адрес: Украина, 61023, Харьков, ул. Ленина, 14.

Баранник Дмитрий Владимирович, студент первого курса факультета КИУ ХНУРЭ. Научные интересы: обработка и передача информации. Адрес: Украина, 61023, Харьков, ул. Ленина, 14.