Научная статья на тему 'Простое построение совершенных стегосистем на основе различных ошибок в помехоустойчивых кодах в модели трёх каналов'

Простое построение совершенных стегосистем на основе различных ошибок в помехоустойчивых кодах в модели трёх каналов Текст научной статьи по специальности «Математика»

CC BY
166
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СТЕГАНОГРАФИЯ / СТЕГАНОГРАФИЧЕСКИЕ МОДЕЛИ / КОДЫ ИСПРАВЛЕНИЯ ОШИБОК / СОВЕРШЕННАЯ СТЕГОСИСТЕМА / ИДЕАЛЬНАЯ СТЕГОСИСТЕМА / ЛЕММА О СОВЕРШЕННОСТИ ИДЕАЛЬНОЙ СТЕГОСИСТЕМЫ

Аннотация научной статьи по математике, автор научной работы — Слипенчук Павел Владимирович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Simple method of perfectly stegosystem construction using various errors in error correction codes of three-channels model

This paper has proof of perfectly security (against passive adversaries) for all ideal stegosystems, if two trivial assumptions are obtained. "Model of tree channels" of stegosystem, using Error Correction Code steganography is described. It is explaned that "Model of tree channels" is a special situation of Cachin "Information-Theoretic model". Perfect security stegosystem and ideal stegosystem are described. As an example of perfectly secure stegosystem, a mathematical model of optical disk Error Correction Code (ECC) is elaborated. Using this model perfectly secure stegosystem can be simply constructed. Perfect security steganography algorithm of inserting stegomessage to ECC code words is described in detail.

Текст научной работы на тему «Простое построение совершенных стегосистем на основе различных ошибок в помехоустойчивых кодах в модели трёх каналов»

УДК 519.24

Простое построение совершенных стегосистем на основе различных ошибок в помехоустойчивых кодах в модели трех каналов

© П.В. Слипенчук МГТУ им. Н.Э. Баумана, Москва, 105005, Россия

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

Ключевые слова: стеганографические модели, стеганография, коды исправления ошибок, совершенная стегосистема, идеальная стегосистема, лемма о совершенности идеальной стегосистемы.

Введение. Еще в 1998 г. Кристиан Кашен ввел понятие совершенной стегосистемы (от пассивного противника) (perfectly secure stegosystem against passive adversaries) [1]. С тех пор неоднократно предпринимались попытки построить совершенную стегосистему для различных типов стеганографических приемов.

Для модели трех каналов [2], если в канале C2 меньше помех, чем в канале C1, можно легко построить идеальную стегосистему (далее приводится пример).

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

Указанный подход применим и для любых других каналов передачи данных или носителей информации, использующих помехоустойчивые коды, например для таких, как Wi-Fi, спутниковая связь, твердотельный накопитель (Solid-State Drive, SSD), накопитель на

жестких магнитных дисках (НЖМД, hard disk drive, HDD), флеш-накопители и т. п.

Модель стеганографической системы Кашена и совершенная стегосистема. Кристиан Кашен предлагает стеганографическую модель под названием «модель стегосистемы с секретным ключом» (The model of a secret-key stegosystem) [1]. На рис. 1 показан принцип работы этой стегосистемы.

Алиса

R-

EC-

1

K I

L.

I

I

I

I

Л

Секретный канал

Вкрапление (алгоритм А)

J

S

Боб

У

Открытый канал Извлечение E

(алгоритм В)

Ева

\

Обнаружение

Рис. 1. Модель стегосистемы с секретным ключом - стеганографическая

модель Кристиана Кашена

Переключатель £ определяет состояние Алисы:

• пассивное состояние (переключатель в позиции 0) — Алиса отправляет только пустые контейнеры С Бобу по открытому каналу передачи данных. Ева имеет возможность просматривать пустые контейнеры С;

• активное состояние (переключатель в позиции 1) — Алиса отправляет стегосообщение Е, которое она вкрапила в пустой контейнер С, используя алгоритм А. Имея на входе контейнер С (получаемый случайным источником пустых контейнеров Я), ключ К и сообщение Е, алгоритм А выдает на выходе стегокон-тейнер £. Стегоконтейнер отправляется по открытому каналу Бобу. Противник Ева и получатель Боб принимают £. Используя алгоритм извлечения В, Боб с помощью ключа К извлекает сообщение ЕЕ е Е из £ в надежде, что он получил искомое стегосообщение от Алисы (Е = ЕI.

У Боба имеется так называемый «оракул»1, с помощью которого он определяет, активна Алиса или пассивна. Если Боб знает, что Алиса активна, то он извлекает стегосообщение, в противном случае он не использует алгоритм извлечения B.

Задача Евы определить, когда Алиса передавала пустой контейнер, а когда стегоконтейнер.

Обозначим через M сообщение в канале. Если Алиса активна, то M = S (стегоконтейнер), а если пассивна, то M = C (пустой контейнер). Определим распределения Pc (y) и Ps (y) соответственно как вероятность появления пустого контейнера y е C, если передавался пустой контейнер, и вероятность появления стегоконтейнера y е S, если передавался стегоконтейнер.

Допустим, что Pc и Ps известны Еве. Это напоминает предположение о неограниченных вычислительных ресурсах, которыми обладает противник, при определении Шенноном совершенной криптосистемы в работе [3]:

D ((11 px 2 )=Z px 1 (x)log2 f4X). (1)

xeX PX2 (x)

Введем множество {R = Ru {^jJ. Величину D (PX Ц PX 2 ), заданную формулой (1) из множества X в множество R, называют относительной энтропией (relative entropy), если определить 0 log2jj = 0;

T

T log2 — = да. Если хотя бы одно слагаемое в формуле (1) равно да, то

D (Px Px 2 ) = да. Заметим, что относительная энтропия не является симметричной величиной, иначе говоря, D(pc||ps) ^ D(pj||pc).

Система называется совершенной (от пассивного противника), если относительная энтропия между Pc и Ps равна нулю, т. е. если

D ( pC||pS ) = 0. (2)

Система называется 8-секретной (от пассивного противника), если

D (pC||pS ) <е. (3)

1 Термин «оракул» использует сам Кашен: «К тому же мы предполагаем, что у Боба имеется оракул, который говорит ему, активна Алиса или нет. Это серьезное допущение, обозначим его как одно из основных свойств безопасности стегосистемы. Не принимая данное допущение, мы не ухудшим качество системы. Действительно, если Боб попытается извлечь сообщение из контейнера, когда Алиса пассивна, он получит всего лишь «мусор» [1, с. 31] (перевод автора).

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

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

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

Рис. 2. Модель трех каналов

Алиса перед отправкой кодового вектора вкрапляет в него сообщение 5. Таким образом, кодовый вектор (получаемый из информационного вектора а) выступает в качестве контейнера для стегосообщения, а сообщение представляет собой искусственные ошибки [2]. Позиции, содержащие стегосообщение, определяются неким алгоритмом £, зависящим от ключа к. Таким образом, Боб, зная ключ к и алгоритм £, может отличить искусственные ошибки от подлинных, а Иванов не может.

Заметим, что модель трех каналов есть частный случай модели Ка-шена. Действительно, в модели трех каналов Алиса — это то же самое, что Алиса в активном состоянии в модели Кашена, а Алена — это Алиса в пассивном состоянии. Задача Иванова — определить, кто передает скрытые сообщения — Алиса или Алена (см. рис. 2); задача Евы — определить, когда Алиса активна (см. рис. 1). Пусть на вход канала С подается последовательность битов длиной п (см. рис. 2). Каждую ошибку можно представить п-ричным числом в двоичной системе счисления. Для каждой последовательности битов введем вероят-

ность возникновения данной ошибки. Сумма всех ошибок (с учетом нулевой ошибки) равна единице.

Будем обозначать распределения ошибок длиной п, которые представляют собой упорядоченные вероятности возникновения ошибок в каналах С1 и С2, как Ясх и Яс2 . Ошибка является случайной величиной. Обозначим через в1 ошибку в канале С.

Рассмотрим искусственные ошибки, вкрапляемые в кодовый вектор перед каналом С2. Ошибку будем обозначать буквой V. После прохождения стегоконтейнера через канал С2 на выходе будем иметь стегоконтейнер, содержащий и искусственные, и подлинные ошибки. Ошибка, состоящая из искусственных и подлинных ошибок, представляет собой случайную величину в2 + V. Определим х + у как побитную сумму по модулю 2. Множество всех ошибок длиной п будем обозначать X. Для е2 + V справедлива формула

Р(е2 + V = х)= ^ Р(е2 = х + у)-Р(V = у). (4)

ЧуеХ

Обозначим через распределение случайной величины е1, а через Р.2 распределение случайной величины е2 + V. Таким образом,

— это распределение пустых контейнеров, проходящих через канал С1, а Я2 — распределение стегоконтейнеров, проходящих через канал С2 .

Стегосистему £ назовем идеальной стегосистемой (в кодах, исправляющих ошибки) для канала С2 по отношению к каналу С1, если распределения Я1 и Я2 совпадут [2].

Совершенность идеальной стегосистемы. Введем ряд обозначений. Канал С1 будем обозначать буквой С, а канал С2 — буквой £. Соответственно ус и у£ — это информационные векторы, которые подаются на вход кодера исправления ошибок в модели трех каналов для каналов С и £. Обозначим через Ух (у) вероятность выбора информационной матрицы у для некоего канала 2.

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

ложение автор считает разумным, тем не менее формально оно является условием леммы.

Предположим также, что Yc (у) = Ys (у). Смысл этого предположения в следующем: мы считаем, что Алиса и Боб хорошо изучили пользователей канала Алену и Бориса. По этой причине «они не выделяются из толпы» и используют в качестве информационной матрицы (из которой они делают контейнер для вкрапления скрытых сообщений) такие же информационные матрицы, что и Алена с Борисом. Как и первое условие леммы, данное предположение будем считать очевидным допущением.

Лемма. Предположим, что пустые контейнеры в канале С всегда декодируются верно и Yc (у) = Ys (у). Тогда любая идеальная стегосистема является совершенной.

◄ Доказательство. Распределения R1 и R2 переобозначим как Rc и Rs соответственно.

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

Найдем вероятность появления некоторого пустого контейнера xc и некоторого стегоконтейнера xs = xc. Множество всех пустых и стегоконтейнеров обозначим X, а векторы ошибок, произошедших в каналах с шумом £ и с, на выходе которых получили кодовые матрицы xs и хс (см. [2]), — соответственно в£ и ее. Так как Х£ = хс и по условию леммы кодовая матрица декодируется верно в информационную матрицу, то равенство е£ = ее справедливо.

Обозначим Ех (е) вероятность появления ошибки е в канале Z.

Так как система по определению идеальная, то Rc = ^. Из этого следует, что

Ее (е) = Е£ (е). (5)

Так как е£ = ее и х£ = хс, то у£ = ус.

Найдем вероятность появления контейнера Ух е X:

Ухс е X ^ Ре (хс ) = Ее (ее )• Yс (ус ); (6)

Ух£ е X ^ Р£ (х£ ) = Ее (е£ )• Yс (У£ ). (7)

Из условий леммы и формул (5)-(7) для каждой пары х£ = хс следует, что

хз = хс ^ Рз (хз ) = Рс (хс ) . (8)

Из утверждения (8) легко видеть, что

хз = хс ^ 1082 = 1о§21 = 0. (9)

Подставляя результат формулы (9) в определение относительной энтропии (см. формулу (1)), получим, что В (Рс|Рз ) = 0. Следовательно, стегосистема является совершенной системой (от пассивного противника). ►

Замечание. Условие леммы о декодировании помехоустойчивого кода с почти достоверной вероятностью и условие, что Ус (у) = Уб (у),

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

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

Рис. 3. Математическая модель возникновения ошибок на оптическом диске

При чтении уже записанного диска система находится в состоянии 0. Ошибка произойдет с вероятностью Ро. Если ошибка произо-

шла, то с вероятностью Д она продолжится. В общем случае если произошла ошибка Pi (/ < N - 2), то с вероятностью Pi+1 она продолжится. Вероятности Qi (вероятность того, что ошибки не произойдет) вычисляются как Qi = 1 - Pi. Данная ММ представляет собой марковский процесс [4].

Обозначим через Aw вектор ошибок, произошедших на одном носителе данных емкостью W бит. Емкость можно измерять не только в битах, но и в байтах, буквах и т. п.; далее будем измерять в битах. Согласно ММ, приведенной на рис. 3, в случае возникновения ошибки длиной m необходимо, чтобы после ошибки был хотя бы один бит отсутствия ошибки. Таким образом, зная вектор Aw, можно вычислить количество произошедших ошибок каждой длины. Например, если А16 = 0011001100111100, то произошли две ошибки длиной 2 и одна ошибка длиной 4.

Введем обозначения:

mi — математическое ожидание ошибок длиной г на одном носителе определенного производителя из определенной партии;

М — математическое ожидание общего количества ошибок любой длины;

Р ( = / | Р0 ) — вероятность того, что длина ошибки будет равна /,

при условии, что произошла ошибка.

Тогда для ММ, изображенной на рис. 3, верны следующие формулы:

V/ = 1,N -1 ^ Р( = г | Р0) = (1 - Р)ПР], (10)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

]=1

N-1

Р ( = N | Р0 ) = П Р] . (11)

]=1

С помощью помехоустойчивого кода можно найти Aw для носителя данных. Для Aw можно подсчитать количество ошибок каждой длины. Пусть Aw (]) есть Aw для]-го носителя.

Возьмем к носителей и V] е{1,...,к| найдем Aw (]) и посчитаем количество ошибок каждой длины.

Обозначим через т (],/) количество ошибок длиной / на ]-м носителе, а через М (]) количество всех ошибок на ]-м носителе. Можно легко увидеть, что:

N

М (У ) = Е т (У,I), (12)

I=1 к

Е т (,1)

Шх = Нш —-, (13)

к шот к

ЕМ (У) N

М = Нш -= Е т1, (14)

кшот к .=1

р (На )=1ш4-ЕЕШМ^Г - (15)

кшот к Р М (у)

Вероятность возникновения ошибки найдем из следующих соображений: возьмем количество всех ошибок М (у) и разделим на количество случаев, когда система находилась в состоянии 0 (см. рис. 3). Количество случаев, когда система находилась в состоянии 0,

N

равно Ж + М (у) - Е.' т (у, I). Если у нас к носителей, то необходимо

1=1

взять среднее арифметическое. Таким образом, верна формула

Р0 =Нш1 Е-Щ.-. (16)

кшот к ■ , , ч ж—, , ч

у=1 Ж + М (у )-Е.' Ш (у, I)

I=1

На практике возьмем к достаточно большим. Выбор к должен зависеть от Ж. Если Ж очень большое (например, емкость оптического диска ИУО [5]), то к можно принять за единицу.

По формуле (16) можно найти Р,. Затем с помощью формул (10), (11) и (15) можно найти сначала Р1, затем Р2 и т. д. Это означает, что для указанной математической модели можно статистическим способом найти вероятности Р.. Очевидно, что сложность данного алгоритма нахождения этих вероятностей О (N).

В дальнейшем вероятности Р. будем представлять в виде ко-

N

нечного ряда и обозначать ЕР.. Символ Е в данном случае

I=1

обозначает ряд (т. е. упорядоченную последовательность чисел), а не сумму.

'(У,I)

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

N N

^ Рг — это вероятности для первого типа носителей, а ряд ^ Яг — г=1 г=1

вероятности для второго типа носителей. Предположим, что

V; = 1, N -1 ^ Р > Яг. (17)

Физический смысл (17) таков: носители второго типа (и устройства записи для них) более качественные с точки зрения помех, чем носители первого типа. Например, в модели трех каналов первый ряд может характеризовать канал С1, а второй ряд — канал С2.

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

Предположим теперь, что

V; = 1, N -1 ^ Р = Я. (18)

Если справедлива формула (18), то распределения ошибок канала С1, передающего пустые контейнеры, и канала С2, передающего стегоконтейнеры, совпадут. Значит, мы получили идеальную стего-систему (по определению). Естественно предполагая, что код исправления ошибок с почти достоверной вероятностью декодирует искомую информационную матрицу и что Гс1 (у) = Ус2 (У), по доказанной ранее лемме имеем совершенную стегосистему.

Формальный алгоритм вкрапления. Определение максимального объема вкрапляемого стегосообщения. Для вкрапления сооб-

N N

щения т в носитель данных необходимо знать ряды ^ Р и ^ Яг.

г=1 г=1

N N

Определим ряд ^Д = ^(Рг - Яг). Пусть М — это разница коли-

г=1 г=1

чества ошибок любой длины между каналами с1 и с2 при передаче W бит данных контейнера.

Определим В( = г1В0) аналогично формулам (10) и (11):

г-1

V/ = 1,N -1 ^ В( = г | Во) = (1 - Вг)П,

]=1

N-1

В ( = N | Во ) = П В^ . )=1

(19)

(20)

На практике определим натуральное |г следующим образом: |г = В( = г |В0)М. Строго говоря, величина |г может не принадлежать натуральному множеству. При достаточно большом Ж данную величину можно округлить до натурального значения, при этом систему все равно будем считать совершенной. В теории для соблюдения математической строгости |г можно определить следующим способом:

|г =|_В(£ = г |Во)• М] + А(|),

(21)

где

А( г) |1 с вероятностью В (£ = г | В0)• М В (£ = г ||0)-М [о в противном случае.

Разбиваем вкрапляемое сообщение на М различных последовательностей по правилу: из всех последовательностей ровно |г последовательностей длиной г. Вкрапляем каждую последовательность, начиная с определенной позиции контейнера, которая вычисляется генератором псевдослучайных чисел. Этот генератор однозначно определяет позицию по стегоключу и по порядковому номеру вкрапляемого сообщения (первое сообщение имеет номер 1, второе — 2, третье — 3 и т. д). Легко видеть, что по формуле (21) в среднем будем записывать В ( = г | В0) •М последовательностей длиной г.

Максимальная длина вкрапляемого сообщения Ь вычисляется по формуле

N

Ь = 2 г|г .

г=1

(22)

Если длина вкрапляемого сообщения меньше Ь, то следует дописать сообщение случайным набором битов.

Будем обозначать количество всех последовательностей буквой I. Данную величину можно вычислить по формуле

N

I = !>* • (23)

г=1

Если длина сообщения больше Ь, будем считать, что данный алгоритм неприменим.

Замечание. Существует вероятность, что подлинная ошибка попадет на искусственную (содержащую передаваемое скрытое сообщения). Для того чтобы можно было извлечь стегосообщение, необходимо перед вкраплением подать данное стегосообщение в кодер исправления ошибок. Предположим, что скорость кода для исправления ошибок, который используется для кодирования стегосо-общения, равна г< 1. Тогда максимальный объем передаваемых скрытых данных не должен превышать Ьг бит на один носитель емкостью Ж бит.

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

Возьмем множество всех искусственных ошибок и зафиксируем их.

Пусть Р1 — вероятность того, что подлинная ошибка не началась в битах искусственной ошибки, а Р2 — вероятность того, что ошибка, начатая не на искусственной ошибке, «дошла» до бита искусственной ошибки. Например, искусственная ошибка располагается с 5-го по 10-й бит, а подлинная — началась с 1-го бита и закончилась на 7-м, т. е. подлинная ошибка началась не на искусственной, но «успела задеть» два бита искусственной ошибки.

Таким образом, справедлива формула

Рид = Р • Р2. (24)

Зная, что всего записано искусственных ошибок длиной г, можно вычислить первый множитель:

N ■ Ь

Р =П(1 -РоГг =(1 -РоГ . (25)

г=1

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

N

P2 >П(1 -Po) =(1 -Po)/N . (26)

i=1

Из формул (24)-(26) получаем нижнюю границу для Рид:

Рид >(1 - Po ))+/N = Рн.гр.ид . (27)

Величину Рн гр ид будем называть нижней границей вероятности идеальности.

При Р0 = 10-7, L = 102 400, l = 10N, N = 200 нижняя граница вероятности идеальности равна 0,9511152. При Р0 = 10-6 и тех же значениях L, l и N справедливо неравенство Рид > 0,605 803.

При Р0 = 10-6, L = 102400, l = 10N, N = 100 вероятность идеальности больше 0,8177.

Если Р0 = 10-5, L = 102 400, l = 10N, N = 100, то Рид > 0,13. Как

видим, даже при Р0 = 10-5 граница снизу для вероятности идеальности хоть и мала, но далека от невозможного события. Иначе говоря, более чем в каждом десятом случае получим идеальную стеганогра-фическую систему.

Более того, если на практике подлинная ошибка «недостаточно часто» будет попадать на искусственную, то данная система, возможно, будет е-секретной стегосистемой [1], где 8 близка к нулю. На момент публикации статьи этот вопрос остается открытым.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Статистический подсчет вероятности. Можно подсчитать Рид на практике. Для этого следует записать U стегоконтейнеров, подать их на вход канала C2, а на выходе из него посмотреть, попала ли подлинная ошибка на искусственную. Пусть в u случаях она не попала на искусственную, тогда в пределе

u

Рид = lim - . (28)

и ^^U

u

При достаточно большом U можно принять Рид .

Выводы:

1. Любая идеальная стегосистема для канала C2 по отношению к каналу C1 при корректности декодирования кодом исправления ошибок и при Yc1 (y) = Ус2 (У) всегда является совершенной стегоси-стемой.

2. Стойкость совершенной стегосистемы при ее идеальности обусловлена корректностью математической модели возникновения ошибок. Если ММ адекватна, то система совершенная. Если существует более точная модель возникновения ошибок и противник знает о ней, а также может вычислить параметры ММ, то в рамках ММ противника система не является совершенной. Возможность вычисления параметров ММ — это необходимое условие, так как сложность вычисления параметров может быть настолько высокой, что ММ с практической точки зрения будет неприменимой, несмотря на большую точность. В примере, приведенном в данной статье, параметрами ММ являются величины Pi, и они вычисляются за O(N). Таким образом, говоря о совершенной стегосистеме, мы должны считать адекватной саму математическую модель возникновения ошибок в канале передачи данных.

3. Для любой математической модели возникновения ошибок, рассчитав ее параметры, можно попытаться построить стеганографический алгоритм, который позволял бы реализовать идеальную (а значит, и совершенную) стегосистему. Для этого необходимо, чтобы параметры ММ возникновения ошибок в канале C2 при передаче стегоконтейнеров совпадали с параметрами ММ возникновения ошибок в канале Ci при передаче по нему пустых контейнеров. Затем необходимо найти вероятность идеальности. Если вероятность идеальности близка к единице, то на практике будем считать стегосистему совершенной.

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

ЛИТЕРАТУРА

[1] Cachin C. An Information-Theoretic Model for Steganography. 2nd ed. MIT

Laboratory for Computer Science — 2002, October, 2010, p. 31.

[2] Слипенчук П.В. Стеганография в кодах, исправляющих ошибки. Вестник МГТУ им. Н.Э. Баумана. Сер. Приборостроение, спец. вып. № 5, 2012, с. 249-260.

[3] Shannon C.E. A Mathematical Theory of Communication. Bell System Technical Journal, 1948, p. 623.

[4] Волков И.К., Зуев С.М., Цветкова Г.М. Случайные процессы, 3-е изд. Москва, МГТУ им. Н.Э. Баумана, 2006, с. 163-190.

[5] International Standard ECMA-377. Information Interchange on Holographic Versatile Disc (HVD) Recordable Cartridges - Capacity: 200 Gbytes per Cartridge. May, 2007.

Статья поступила в редакцию 28.06.2013

Ссылку на эту статью просим оформлять следующим образом: Слипенчук П.В. Простое построение совершенных стегосистем на основе различных ошибок в помехоустойчивых кодах в модели трех каналов. Инженерный журнал: наука и инновации, 2013, вып. 11. URL: http://engjournal.ru/catalog/ it/security/998.html

Слипенчук Павел Владимирович родился в 1990 г., окончил физико-математический лицей № 239 в Санкт-Петербурге. Студент кафедры «Информационная безопасность» МГТУ им. Н.Э. Баумана. е-mail: [email protected]

i Надоели баннеры? Вы всегда можете отключить рекламу.