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

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

CC BY
108
13
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
КОДОВОЕ ЗАШУМЛЕНИЕ / Q-ИЧНЫЙ СИММЕТРИЧНЫЙ КАНАЛ / РАСПОЗНАВАНИЕ КОДА / CODE NOISING / Q-ARY SYMMETRIC CHANNEL / CODE RECOGNITION

Аннотация научной статьи по математике, автор научной работы — Косолапов Юрий Владимирович, Турченко Олег Юрьевич

Рассматривается модель защиты данных с помощью метода кодового зашумле-ния. Предполагается, что кодируемые информационные блоки длины k содержат фиксированное сообщение m длины mi (mi ^ k) на фиксированной позиции ms (1 ^ ms ^ k mi + 1), а наблюдатель получает зашумлённые кодовые слова длины n через q-ичный (q степень простого числа) симметричный канал с вероятностью p для каждого ненулевого значения ошибки. Целью наблюдателя является нахождение сообщения m, когда позиция ms и длина mi неизвестны. Предложен способ нахождения сообщения m и получена оценка количества наблюдаемых кодовых слов, достаточного для восстановления сообщения m этим способом.

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

Application of one method of linear code recognition to the wire-tap channel

A security model using the method of code noising is considered. It is assumed that the information blocks of length k contain a fixed message m of length mi (mi ^ k) on a fixed position ms (1 ^ ms ^ k mi + 1), and an observer gets noisy codewords of length n through a q-ary symmetric channel qSC(p) (q prime power) with error probability p (p < 1/q) for each non-zero value. The aim of the observer is to find the unknown message m, when the position ms and the length mi are unknown. In this paper, we propose a statistical method for finding message m. The method is based on the idea of code recognition in noisy environment: we test hypothesis H0 (received vectors have been generated by a conjectural code C) against the hypothesis Hi (received vectors have not been generated by C or it's subcode). The method is as follows. From the observed vectors, the independent pairwise differences of them are compiled. The resulting vectors are code words of some unknown code C noised in a symmetric channel qSC(p(2 qp)). To determine the length mi and place ms of the unknown message m, we recognize the code C from the calculated differences of the received vectors. For this purpose, we present a code recognition algorithm (called CodeRecognition) and prove that if C is a linear [n, k] code and M(C, а, в) is the minimum number of vectors (received from the channel qSC(p)) that are sufficient for CodeRecognition algorithm to test the hypothesis H0 against the hypothesis H1 by using a constructed statistical criterion, then M(C, a, в) < f 2(k + 1), where f (x) = b(1 + (q 2)(1 pq)x (q 1)(1 pq)2x)1/2 a f (x) = Vq-1(1 pq)x, a and в are the probabilities of errors of the first kind and the second kind, respectively; a = Ф-1(а), b = Ф-1(1 в); Ф-1 Laplacian inverse function. We show that the bound above is achieved in the case of Maximum Distance Separable (MDS) codes C. On the base of this result, we obtain a sufficient number of vectors corresponding to the channel qSC(p(2 qp)). We also present some algorithms for finding the position ms, the length mi, and the message m. The main component of them is the algorithm CodeRecognition.

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

2017 Прикладная теория кодирования №35

ПРИКЛАДНАЯ ТЕОРИЯ КОДИРОВАНИЯ

УДК 621.391.7

ПРИМЕНЕНИЕ ОДНОГО МЕТОДА РАСПОЗНАВАНИЯ ЛИНЕЙНОГО КОДА ДЛЯ КАНАЛА С ПОДСЛУШИВАНИЕМ

Ю. В. Косолапов, О. Ю. Турченко Южный федеральный университет, г. Ростов-на-Дону, Россия

Рассматривается модель защиты данных с помощью метода кодового зашумле-ния. Предполагается, что кодируемые информационные блоки длины k содержат фиксированное сообщение m длины mi (mi ^ k) на фиксированной позиции ms (1 ^ ms ^ k — mi + 1), а наблюдатель получает зашумлённые кодовые слова длины n через q-ичный (q — степень простого числа) симметричный канал с вероятностью p для каждого ненулевого значения ошибки. Целью наблюдателя является нахождение сообщения m, когда позиция ms и длина mi неизвестны. Предложен способ нахождения сообщения m и получена оценка количества наблюдаемых кодовых слов, достаточного для восстановления сообщения m этим способом.

Ключевые слова: кодовое зашумление, q-ичный симметричный канал, распознавание кода.

DOI 10.17223/20710410/35/7

APPLICATION OF ONE METHOD OF LINEAR CODE RECOGNITION

TO THE WIRE-TAP CHANNEL

Y. V. Kosolapov, O.Y. Turchenko Southern Federal University, Rostov-on-Don, Russia E-mail: itaim@mail.ru

A security model using the method of code noising is considered. It is assumed that the information blocks of length k contain a fixed message m of length mi (mi ^ k) on a fixed position ms (1 ^ ms ^ k — mi + 1), and an observer gets noisy codewords of length n through a q-ary symmetric channel qSC(p) (q — prime power) with error probability p (p < 1/q) for each non-zero value. The aim of the observer is to find the unknown message m, when the position ms and the length mi are unknown. In this paper, we propose a statistical method for finding message m. The method is based on the idea of code recognition in noisy environment: we test hypothesis H0 (received vectors have been generated by a conjectural code C) against the hypothesis Hi (received vectors have not been generated by C or it's subcode). The method is as follows. From the observed vectors, the independent pairwise differences of them are compiled. The resulting vectors are code words of some unknown code C noised in a symmetric channel qSC(p(2 — qp)). To determine the length mi and place ms of the unknown message m, we recognize the code C from the calculated differences of the received vectors. For this purpose, we present a code recognition algorithm (called CodeRecognition) and prove that if C is a linear [n, k] code and M(C, а, в) is

the minimum number of vectors (received from the channel qSC(p)) that are sufficient for CodeRecognition algorithm to test the hypothesis H0 against the hypothesis H1 by using a constructed statistical criterion, then M(C,a, в) < f 2(k + 1), where

(x) = b(1 + (q - 2)(1 - pq)x - (q - 1)(1 - pq)2x)1/2 - a

f (x) = Vo-1(1 - pq)x ,

a and в are the probabilities of errors of the first kind and the second kind, respectively; a = Ф-1(а), b = Ф-1(1 - в); Ф-1 — Laplacian inverse function. We show that the bound above is achieved in the case of Maximum Distance Separable (MDS) codes C. On the base of this result, we obtain a sufficient number of vectors corresponding to the channel qSC(p(2 - qp)). We also present some algorithms for finding the position ms, the length mi, and the message m. The main component of them is the algorithm CodeRecognition.

Keywords: code noising, q-ary symmetric channel, code recognition.

Введение

Рассмотрим информационно-аналитическую систему (ИАС), в которой два легальных участника (отправитель и получатель) связаны каналом без помех, а пассивный наблюдатель подслушивает передаваемые данные по q-ичному (q — степень простого числа) симметричному каналу с вероятностью p для каждого ненулевого значения ошибки. Эта модель является частным случаем модели канала с наблюдением, впервые рассмотренной в [1]. Как ив [1], предполагается, что отправитель для защиты от наблюдения использует метод кодирования смежными классами (метод кодового за-шумления). У наблюдателя при подслушивании одного кодового слова из-за наличия помех возникает неопределённость относительно сообщения, которое было закодировано. Вычислению этой неопределённости в неасимптотическом случае для двоичного симметричного канала наблюдения (при q = 2) посвящена работа [2], а в [3] показано, что эта неопределённость может быть снята в рамках модели многократной передачи данных. В частности, в [3] найдена оценка количества зашумлённых кодовых слов, соответствующих одному информационному блоку, достаточного для нахождения этого блока с заданными вероятностями ошибок первого и второго рода. Отметим, что на метод определения информационного блока, основанный на результатах работы [3], накладывается ограничение: наблюдаемые векторы должны соответствовать одному и тому же информационному блоку. В настоящей работе рассматривается более общая задача нахождения информационного блока в рамках модели многократной передачи данных. Предполагается, что различные кодируемые информационные блоки содержат фиксированное сообщение на фиксированной позиции, а наблюдатель получает зашумлённые кодовые слова через q-ичный симметричный канал. В работе ставится задача нахождения позиции и длины подвектора. Зная эти параметры, содержание подвектора может быть определено, например, с помощью метода, основанного на результатах работы [3]. Отметим, что для случая q = 2 задача в такой постановке частично решена [4]. Рассмотрение q-ичного симметричного канала представляет не только теоретический интерес. Эта модель канала, например, в последнее время исследуется как адекватная модель пакетной передачи данных [5], а также как модель генерации ошибок в протоколах гомоморфного шифрования [6].

Работа имеет следующую структуру: п. 1 посвящён детальному описанию информационно-аналитической системы. В п. 2 описан метод, разработанный для решения поставленной задачи. Этот метод описан в общем виде, так как может быть применён

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

1. Информационно-аналитическая система

Пусть информационными блоками являются векторы длины к над полем Галуа мощности д, где д — степень простого числа. Предполагается, что в момент времени £ € N информационный блок в(4) € ^ имеет вид в(4) = (ш^ || т || т^), где подвектор

т € Fmг постоянный для всех а подвекторы ш^ и распределены случайно и равновероятно со значениями из Fms-1 и Fk-[mг+ms]+1 соответственно; запись (а || Ь) здесь и далее обозначает конкатенацию векторов а и Ь. Перед передачей в канал информационные сообщения кодируются отправителем с помощью метода кодового зашумления [2], а именно: для зафиксированных натуральных чисел к и п (к < п) легальными участниками выбирается ((п — к) х к)-матрица Р с элементами из поля Fq, а каждое сообщение длины к кодируется по следующему правилу:

Епф«) = (в« + К(4)Р || К(4)) = с(4) = (с14) || К(4)), (1)

где К(4) —случайно и равновероятно выбранный вектор из Fn-fc. Матрица Р и правило кодирования (1) известны всем участникам ИАС (в том числе и наблюдателю), поэтому при отсутствии помех в канале между отправителем и получателем правило

(t) = s(t)

декодирования имеет вид Dec(c(t)) = K(t)P + cl' = s

Предположим, что наблюдатель передаваемые кодовые слова подслушивает через q-ичный симметричный канал, в котором вероятность возникновения ошибки в каждом символе равна (q — 1)p, 0 <p< 1/q, а именно: если c(t) —вектор длины n на входе канала наблюдения, а z(t) = c(t) + e(t) —вектор на выходе этого канала, то значения координат вектора ошибок e(t) = (e^, ...,еП4)) принимают значения в соответствии со следующим распределением вероятностей:

РФ?) = 1} = Ь ' € F = F \{0}, i е {1.....n}.

{ ' } \1 — (q — 1)P, I = 0, { , , }

В дальнейшем такой q-ичный симметричный канал будем обозначать qSC(p). Наблюдателю позиции ms подвектора m и его длина mi неизвестны. Целью наблюдателя является нахождение неизвестного подвектора m при многократной передаче сообщений s(t), закодированных по правилу (1). Естественно полагать, что эта задача решается наблюдателем последовательно: сначала находятся неизвестные позиция ms и длина mi, а затем само сообщение m. Отметим, что при известных ms и mi задача нахождения содержания вектора m может быть решена методом, основанным на результатах работы [3]. Поэтому ниже строится способ нахождения неизвестных значений ms и mi.

Наблюдателем выдвигается гипотеза Hij о том, что ms = i и mi ^ j (т. е. предполагаемая длина j не превышает истинного значения длины сообщения). Далее для обозначения векторов и матриц в рамках данной гипотезы будем использовать верхний индекс (i, j). В этом случае матрица P представима в блочном виде: P = [P1(ij)|P2(ij)|P3(ij)], где P'1(i,j) —первые i — 1 столбцов матрицы P; P2(ij) —столбцы матрицы P с номерами от i до i + j — 1; P3(ij) — последние k — (i + j) +1 столбцов матрицы P. В рамках этой гипотезы наблюдаемый в момент времени t вектор z(t) = c(t) + e(t)

имеет следующим вид:

z(í) = (гй? + К(4) Рр) + в?)

Г + + в2

т

« + К«Р3(г-)

где в

(в1

в

№ 2

в

(*)

3

в^) —вектор помехи в канале; в^ Е Р

+4"

К(4) + в«), (2

¡П—1.

в

№ 2

е Р-7;

д ? 2 Е д?

(4) ^ ТТТ!^—(г+7)+1 (4) тта — к ^

вз Е ; в4 Е ; символ « » означает, что соответствующие подвекторы

могут отличаться от истинных, если гипотеза неверна.

Для подмножества Б = {¿1,...,ги} множества {1

оператор проекции п^ : ^

х = (ж1,...,жга) из вектор х^ = (хг1 , ...,хги). Рассмотрим множество координат

т(г, ]) = {г,... , г + ] — 1} и {к + 1,... , п} и выборку из N векторов (Ж чётное)

, п} рассмотрим линейный , ставящий в соответствие каждому вектору

г

т (¿,7)

/1) z(2) ,_(*)

"V(г,7)' т(г,-)' ' ' ' ' т(г,-)

(3)

где zт(¿7) = пТ(¿,7) ("г(4)) —проекция наблюдаемого вектора z(í) на множество координат т(г,). По выборке (3) построим набор векторов мощности N/2:

(1) Ъ(2)

»(N/2)

).

(4)

Т (г,7)

представим в виде

Здесь z(í)

(24—1) .

2т(г,7) , Г

1,...,Ж/2. С учётом (2), вектор z(í) в выборке (4

(К(24) — К(24—1))Р2(г,-) + в224) — в.

224—1) ц к(24) — к(24—1) + в424) — в424—1))

К(24) — К(24—1)) [р

^га—к] + ( в2 ) в2 )

,(24)

вв

(24—1)

где /га—к — единичная матрица. Далее линейный код С размерности к и длины п будем называть, как обычно, [п,к]-кодом [7], а его порождающую матрицу обозначим С(С). Фиксированный набор базисных векторов кода С обозначим Вс, а множество всех различных базисов кода С — символом Вс.

Лемма 1. Пусть выборка ZТ(г,7) вида (3) построена по векторам вида (2), наблюдаемым на выходе дЯС(р); С(г,7) — [п — к + п — к]-код с порождающей матрицей С(С(г,7)) = [Р2(г,7)|/га—к]; Нг,- —выдвигаемая гипотеза.

1) Если г = и ^ шг, то набор 9 вида (4) представляет собой набор из зашум-лённых кодовых слов кода С(г,7), полученных из д8С(р5), где р = р(2 — рд).

2) Пусть множество координат {г,... , г + ^ — 1} не вложено в {ш5,... , + шг — 1}. Тогда вероятность того, что выборка Ъ представляет собой набор из зашумлён-ных кодовых слов кода С(г,7), полученных из д8С(р), не превосходит (1/д)м/2.

Доказательство. Так как, по предположению, гипотеза верная, то из (5) следует, что набор (4) является набором из зашумлённых кодовых слов линейного кода С(г,7) с порождающей матрицей С(С(г,7)) = [Р2(г,7)|/га—к].

Покажем, что Рг{ег = /} = р для всех г Е {1,... , п}, I Е ¥**. Поскольку в (5) участвует разность помех, реализованных в канале дЯС(р), то по формуле полной вероятности вероятность Рг{ег = /} для ненулевого I равна сумме вероятностей всевозможных разностей помех, которые в результате дают /. Таких разностей ровно д, причём разностей, содержащих нулевое значение, ровно две: I — 0 и 0 — (д — /). Остальные разности

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

д-2

р = 2(1 — (д — 1)р)р + ^ р2 = 2р — 2(д — 1)р2 + р2(д — 2) = р(2 — рд).

т=1

Докажем второе утверждение леммы. Пусть Я — множество координат из {г,... , г + ^ — 1}, которые отсутствуют в {т5,... , ш3 + тг — 1}. Тогда вектор из выборки (4) представляет собой сумму зашумлённого кодового слова кода С (м) и случайного равновероятного вектора g веса |Я| (координаты этого вектора представляют собой ко-

(24) (24-1) (24) (24-1)ч гр

ординаты разности векторов т1 — т1 или т2 — т2 ). Таким образом, для

того чтобы вектор из выборки (4) представлял собой зашумлённое кодовое слово кода С(м), вектор g должен быть нулевым. Вероятность этого события для одного вектора равна (1/д)|д|. Тогда для всей выборки вероятность соответствующего события есть Наибольшее значение этой вероятности достигается при |Я| = 1. ■

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

Отметим, что функция у(х) = х(2 — хд) при каждом натуральном д ^ 2 возрастает от 0 до 1/д на отрезке [0,1/д]. Следовательно, набор (4) представляет собой набор кодовых слов, более зашумлённых, чем слова из набора (3).

В силу леммы 1, проверка верности гипотез наблюдателем сводится к задаче распознавания кода по зашумлённому набору векторов. Заметим, что эта задача имеет несколько способов решения [8, 9]. В настоящей работе применяется метод, схожий с методом из работы [8], идея которого состоит в том, что вес синдрома зашумлённого в двоичном симметричном канале (д = 2) кодового слова в среднем меньше веса синдрома произвольного (случайно выбранного) вектора. Обобщённый метод для любого допустимого д приведён далее.

2. Метод распознавания кода в канале дЯС(р) Рассмотрим линейный [п, &,^]-код С ([п,к]-код с кодовым расстоянием и ему дуальный [п, п—к]-код СЗапись (а, Ь) обозначает скалярное произведение векторов а и Ь, а для произвольного вектора Ь Е ^ символ Ь^ обозначает подпространство

размерности п — 1, ортогональное вектору Ь.

д

Рг{(ъ, Ь) = 0} = д-1(1 + (д — 1)(1 — рд)"(ь)), (6)

где '№(Ь) —вес Хэмминга вектора Ь.

Доказательство. Справедлива следующая цепочка равенств:

Рг{(ъ, Ь) = 0} = Рг{(с + е, Ь) = 0} = Рг{(е, Ь) = 0} =

п (7)

= Рг{е е Ьх} = £ — (д — 1)р)п- = Аь± (р, 1 — (д — 1)р), ^ 7

i=0

п

где Аь± (х, у) = ^ — энумератор весов кода Ьх; А^ —число векторов веса г

i=0

в коде Ь^. Для [п, 1]-кода (Ь), порождённого вектором Ь, рассмотрим энумератор ве-

п

сов Аь(х, у). По определению Аь(х,у) = ^ А^уп-\ где Ai — число векторов веса г

i=0

Лемма 2. Пусть Ь е Fn, с е Ьх, ъ = с + е — вектор на выходе дЯС(р). Тогда

в коде (Ь). Так как &ш((Ь)) = 1, то Ль (ж, у) = уп + (д — 1)ж№(ь)уга те(ь). Воспользуемся тождеством Мак-Вильямс и получим

Аьх (ж, у) = !((у + (д — 1)ж)п + (д — 1)(у — ж)"(ь)(у + (д — 1)ж)п-"(ь).

д

С учётом (7), подставив ж = р и у =1 — (д — 1)р в Аь±(ж,у), получим (6). ■

Лемма 3. Пусть 2 — случайно и равновероятно выбранный из вектор. Тогда Рг{(ъ, Ь) = 0} = д-1.

Доказательство. Рг{(ъ, Ь) = 0} = Рг{ъ е Ь;}. Но Рг{ъ е Ь;} = ——¡- = д 1. ■

Лемма 4. Пусть с — вектор, случайно и равновероятно выбранный из кода С' длины п; С' ^ С; 2 = с + е — вектор на выходе канала дВС(р). Тогда в любом базисе кода С; найдётся такой Ь, что Рг{(ъ, Ь) = 0} = д-1.

Доказательство. Так как С' ^ С, в любом базисе кода С; всегда найдётся такой вектор Ь, что Ь е С';. Выберем такой Ь. Пусть Ь; — это смежный класс подпространства Ь; вида Ь; = а + Ь;, а е Е^. Так как dim(Ь"L) = п — 1, то = д.

Рассмотрим множество ^С мощности д — 1, такое, что I и Ь; I и Ь; = Е^. Сим-

Чаек )

волом —а обозначим такой вектор, что —а + а = 0 е Е^. Так как —а е ^ для любого а , то

Pr{(z, h) = 0} = Pr{z G hx} = Pr{c + e G } = = Pr{c G hx} Pr{e G hx} + £ Pr{c G h^} Pr{e G h-a} =

= Pr{c G C П hx} Pr{e G hx} + E Pr{c G C П h^} Pr{e G h^a} =

a€R

= 1 iC/i Pr{e G hx} + £ 1 aC„ 1 Pr{e G h^a}.

|C 1 a€R |C 1

Учитывая равенство |ha П C'| = |hx П C'| для всех a G R, получим

Pr{(z, h) = 0} = |h^ n C,| (Pr{e G hx} + £ Pr{e G hfa^ - |h± П ^

|С'| V 1 аек 1 -а7 |С'| •

Пусть размерность кода С' равна г. Так как dim(Ь±) = п — 1 и С' ^ Ь; (по построению

|Ь^ п С'| дг-1 1

Ь е С';), то dim(Ь± П С') = г — 1. Тогда —— = —— = -. Отсюда следует

|С 1 дГ д

доказываемое утверждение. ■

Пусть Ь е Е^, ъ е Е^. Рассмотрим случайную величину Хь,2, принимающую значение 0, если (Ь, ъ) = 0, и значение 1 при (Ь, ъ) = 0. Если с е Ь;, ъ = с + е — вектор на выходе дВС(р), то соответствующую случайную величину Хь,2 будем обозначать если с' е С' ^ Ь;, ъ = с' + е — вектор на выходе дВС(р) или если ъ — случайно и равновероятно выбранный из вектор, то случайную величину обозначим Х^. Пусть Ро = Рг{Х0,2 = 1}, тогда из (6) получаем

1 д _ 1

Ро = 1 — - (1 + (д — 1)(1 — рдГ(ь)) = -— (1 — (1 — рдГ(ь)). (8)

дд

Пусть р1 = Р^Хья. = 1}. Из лемм 3 и 4 получаем

Р1 =1 — 1 = ^ (9)

<г я

Для Ь е Fn, 5 С Fn и Т ^ 0 обозначим через ЯТ(Ь, Б, Т) статистический критерий, согласно которому принимается решение о том, что выборка Б является набором зашумлённых векторов из Ь^, если Е Хь^ ^ Т. Рассмотрим случайные величины

М М

X = £ и X. = £ Х^, г = 0,1. zes zes

Теорема 1. Пусть Ь е Fn, Б — набор Мь векторов, полученный из канала дЯС(р). При выборе статистического критерия ЯТ(Ь, Б, Ть) проверки гипотезы Н0 : X = Х0 против альтернативы Н1 : X = Х1 вероятности ошибок первого и второго рода не превышают а и в соответственно для

У(д — 1)(1 — (1 — рд)"(ь))(1 + (д — 1)(1 — рд)"(ь^ — а' 2 МЬ = 1 (^д—Г)(1 — рд)-(ь) I , (10)

Ть = Мь д—1 + ^/Мь д 1

д д2

где а = Ф-1(а); Ь = Ф-1(1 — в); Ф-1 —обратная функция Лапласа.

Доказательство. Для каждого г е {0,1} случайная величина X. является суммой бернуллиевских случайных величин. Тогда по центральной предельной теореме случайная величина X. асимптотически нормальна и её математическое ожидание равно МьР., а дисперсия — Мьр.(1 — р.). Пусть а и в — выбранные ошибки первого и второго рода соответственно при использовании статистического критерия ЯТ(Ь,Б, Ть). Тогда при проверке гипотезы Н0 : X = Х0 против альтернативы Н1 : X = Х1 имеют место равенства

Рг{ е Х^ ^ тЛ = а, Рг{ е ^ тЛ = 1 — в.

Учитывая асимптотическую нормальность случайных величин Х0 и Х1, получим

Ть — Мьр1 ^

Ф —. = а,

v л/МьР1(1 — Р1) /

Ф( Ть — МьР0 1 =1 — в \л/МьР0(1 — Р0)) '

или

Ч = МЬР1 + Ф-1(а)^МЬР1(1 — Р1), Ть = МЬР0 + Ф-1(1 — в )^МьР0(1 — Р0).

В результате имеем

'Ть = МтьР1 + Ф-1(а)^МьР1(1 — Р1),

М =( Ф-1(1 — в )уР0(1 — Р0) — Ф-1(а)\/ Р1(1 — Р1)

ь \ Р1 — Р0

Подставив значение Р0 и Р1 из (8) и (9), получим искомые выражения для Ть и Мь

Замечание 1. В доказательстве теоремы используется аппроксимация функции распределения Я случайной величины Х^, г Е {0,1}, к функции Лапласа Ф. Поэтому в полученных формулах возникают погрешности, влияющие на доверительные вероятности. В соответствии с неравенством Берри — Эссеена [10, с. 75] погрешность для а

Ро + (1 - Ро)2 в р2 + (1 - Р1)2

меньше, чем —. , а для в меньше, чем —. .

^Ро(1 - Ро)Мь л/Р1(1 - Р1)Мь

Для каждого р Е (0,1/д) и д ^ 2 рассмотрим непрерывную функцию

А(х) = 1 + (д - 2)(1 - рд)х - (д - 1)(1 - рд)

По построению, функция А(х) для натуральных х всегда положительная. Непосредственно подставив в (10) выражение для р1 из формулы (9) и проведя необходимые преобразования, получим

= / б^АМЬ) - а 42 ь 1(1 - рд)"(ь)

Рассмотрим функцию f (х) = ( )-—. Производная f '(х) имеет вид

- 1(1 - рд)х

,( ) = 6(А(х)1/2)'^д-Г(1 - рд)х - (0А(х)1/2 - а)Т(1 - рд)х 1п(1 - рд) = ; (х) = (д - 1)(1 - рд)2х =

= Ь(А(х)1/2)' - (ЬА(х)1/2 - а) 1п(1 - рд) =

^д- 1(1 - рд)х

_ (-Ь/2А(х)1/2 - Ь/2А(х)-1/2 - Ь/2А(х)-1/2(д - 1)(1 - рд)2х + а) 1п(1 - рд)

^д - 1(1 - рд)х '

Отсюда получаем, что при р Е (0,1/д) и д ^ 2 производная равна нулю ^'(х) = 0) тогда и только тогда, когда

А(х)1/2 + А(х)-1/2 + А(х)-1/2(д - 1)(1 - рд)2х = (11)

о

Заметим, что А(х)1/2 + А(х)-1/2(1 + (д - 1)(1 - рд)2х) ^ А(х)1/2 + А(х)-1/2 ^ 2, так как функция А(х) положительная для натуральных х и у + 1/у ^ 2 для у > 0. Если а/0 < 1, то уравнение (11) решений не имеет, поэтому функция f (х) (а также и f2 (х)) либо монотонно убывает, либо монотонно возрастает для х > 0. Для произвольных р Е (0,1/д) и д ^ 2 вычисления показывают, что f (1) ^ f (2), следовательно, функция f (х) возрастающая. Таким образом, справедлива

Лемма 5. Пусть Ь = Ь', и>(Ь) > эд(Ь') и в рамках условий теоремы 1 выполняется неравенство а/0 < 1. Тогда Мь ^ МЬ/.

Таким образом, чем меньше вес вектора Ь, тем меньше может быть мощность выборки Б зашумлённых векторов для применения статистического критерия ЯТ(Ь, Б ,Ть).

Ниже приведён алгоритм 1 проверки гипотезы Н0 против альтернативы Н1. Естественно считать, что чем меньший размер выборки требуется для применения статистического критерия при заданных уровнях ошибок первого и второго рода, тем эффективнее критерий. В соответствии с леммой 5, для применения статистического критерия следует выбирать базисные векторы малого веса. Для этого нам понадобится

понятие минимального базиса кода, а именно: минимальным базисом кода С будем называть такой базис е Вс, что в любом другом базисе Вс е Вс найдётся базисный вектор, вес которого не меньше веса любого вектора из Отметим, что минимальный базис определяется неоднозначно.

Алгоритм 1. CodeRecognition(C, Б,р,а,в) (распознавание кода)

Вход: С — предполагаемый код, Б — выборка, р — вероятность ошибки в дЯС(р), а и в — доверительные вероятности ошибок 1 и 2 рода для (10). 1: Найти минимальный базис В0± кода С 2: Для всех Ь е В0х 3: найти Мь и Ть согласно теореме 1; 4: выбрать набор Бь из Б мощности Мь;

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

5: проверить с помощью критерия ЯТ(Ь, Бь, Ть) принадлежность выборки Бь каждому пространству Ь; . 6: Если выборка Бь является набором зашумлённых векторов из Ь; для каждого Ь из В0х, то

7: выборка Б полагается набором зашумлённых кодовых слов кода С, в противном случае считается, что Б не является набором зашумлённых кодовых слов кода С.

На шаге 1 алгоритма предлагается искать минимальный базис, так как в этом случае потребуется наименьшее в рамках предлагаемого способа количество наблюдаемых векторов. Для произвольного кода задача нахождения минимального базиса представляется трудной, но для некоторых кодов такой базис может быть найден легко. К последним относятся коды с максимальным достижимым расстоянием (МДР-коды) и равновесные коды. Так как порождающая матрица линейного [п, п — к]-кода С; может быть приведена к псевдосистематическому виду [7], то вес каждого вектора в В0± не превышает к + 1. Из лемм 2 и 5 следует

Теорема 2. Пусть С — [п, к]-код, М(С, а, в) —минимально необходимое количество векторов, достаточное для проверки алгоритмом CodeRecognition гипотезы Я0 против гипотезы Н1. Тогда М(С, а,в) ^ /2(к + 1), причём равенство выполняется в случае, когда С — МДР-код.

3. Поиск подвектора в подслушанных данных

Рассмотрим ИАС, описанную в п. 1. Предлагается следующий способ (алгоритм 2) определения длины и позиции сообщения т, основанный на лемме 1. Он заключается в том, что если выборка ъ вида (4) для гипотезы представляет собой набор кодовых слов кода С(га), то гипотеза Я^- верна. Тот факт, что выборка (4) является набором зашумлённых кодовых слов кода С(г,^), можно проверить с помощью статистического критерия ЯТ(Ь, ъ, Т), где Ь пробегает базис кода (С(г,^))±, а объём выборки Ъ и параметр Т для каждого Ь определяются в соответствии с теоремой 1. Таким образом, проверяя гипотезы, можно найти длину т^ и позицию сообщения т. Заметим, что при проверке текущей гипотезы необязательно перехватывать новые сообщения, так как можно использовать уже перехваченные сообщения, использовавшиеся для проверки предыдущих гипотез. Если же для какой-либо гипотезы недостаточно перехваченных ранее сообщений, то необходимо дополнительно перехватить ровно столько, сколько не хватило.

Поясним алгоритм ShiftAndLenFinding. Сначала ищется начальная координата неизвестного вектора т, при этом на основании п. 1 леммы 1 полагаем, что длина этого

Алгоритм 2. ShiftAndLenFinding(Б,р,а,в,Р) (нахождение длины и позиции)

Вход: Б — выборка, р — вероятность ошибки в дЯС(р), а и в — доверительные вероятности ошибок 1 и 2 рода для (10), Р — матрица из (1). 1: г := 1, ] := 1, т5 := —1.

2: В рамках гипотезы Ну построить матрицу [Р2(г,^) |/га-к] и найти р (см. лемму 1). 3: Для кода С(га) с порождающей матрицей С(С(ы)) = [Р2(г,^) |/га-к] вычислить М =

= тах{Мь : Ь е В0с(^))± } в соответствии с (10) для р = р. 4: Если |Б| < 2М, то перехватить недостающее количество векторов. 5: Построить выборку Б(га) вида (4).

6: Проверить гипотезу с помощью алгоритма CodeRecognition(C(г,-?), Б(г,^),р?, а, в). 7: Если т5 > 0, то перейти на шаг 9.

8: Если гипотеза неверна, то г := г + 1 и возврат к шагу 2, иначе т5 := г. 9: Если гипотеза верна, то ] := ] + 1 и возврат к шагу 2, иначе т^ := ] — 1. Выход: т5, т^ —позиция и длина сообщения т.

вектора равна 1. На этапе нахождения начальной координаты гипотеза Н0 проверяется против альтернативы Н1, так как при ошибочном выборе начальной координаты (и при предполагаемой единичной длине секретного подвектора) набор (4) представляет собой набор случайных и равновероятных векторов (при условии, что ключи К(4) и векторы т(4), г е {1, 2}, случайны и равновероятны, см. п. 1). Когда предполагаемая позиция вектора т найдена, начинается этап поиска длины путём постепенного увеличения, начиная с единицы. При этом если длина будет превышать истинную длину вектора т, то набор (4) уже будет представлять собой зашумлённые векторы некоторого кода, содержащего код С(ы). В частности, если г = т5 и ] = т^ + 1 (то есть позиция вектора угадана верно, но предполагаемая длина на единицу больше, чем истинная), построенная выборка (4) будет представлять собой векторы линейного [п — к+п — к]-кода, порождённого базисом кода С(т^,тг+1) и вектором (01 || 1 || 02), где 01 и 02 — нулевые векторы длины т^ и п — к соответственно. Но так как вектор т24) случайный и равновероятный, каждый вектор в наборе (4) с вероятностью 1 — 1/д2 принадлежит смежному классу (01 || 1 || 02) + С(т®,тг+1) кода С(т®,тг+1). При правильно найденных длине т^ и позиции т5 выборка Zr(тз,тг) вида (3) представляет собой набор векторов вида

^ = (т + К«Р2(т-тг) || К«) + (е^ || е?), I = 1, 2,... (12)

Тогда задача восстановления сообщения т может быть решена, например, полным перебором по всевозможным значениям из с помощью алгоритма CodeRecognition (если размер поля д и длина т^ сообщения позволяют произвести полный перебор за приемлемое время). Соответствующий алгоритм 3 построен ниже.

Так как р ^ р (п. 1 леммы 1), для применения алгоритма ShiftAndLenFinding потребуется как минимум в 2 раза больше перехватов, чем для применения алгоритма SubvectoгFinding. Таким образом, при нахождении содержания сообщения может быть использована выборка, построенная во время выполнения ShiftAndLenFinding. Для матрицы Р (см. правило (1)) обозначим М(Р) минимальное число векторов, достаточное для нахождения алгоритмами ShiftAndLenFinding и SubvectorFinding вектора т.

Алгоритм 3. 8иЬуес1огЕт^^(Б,р,а,в) (нахождение значения вектора)

Вход: Б = ^(4)}4=1,2,... —выборка вида (3) при г = и ] = шг, р — вероятность ошибки в дЯС(р), а и в — вероятности ошибок 1 и 2 рода для (10).

1: М := 0.

2: Для всех у Е

3: по выборке Б построить выборку Б = {'г(4)}4=1,2,..., где г;(4) = - (у || 0), 0 — нулевой вектор пространства ;

4: проверить с помощью алгоритма CodeRecognition(C(т®,т1),Б,р,а,в) гипотезу о

том, что выборка Б порождена кодовыми словами кода С(т®,т1). 5: Если гипотеза верна, то М := Ми {у}. Выход: М.

Замечание 2. Если m = y, но (m — y || 0) G C(ms'mi), то алгоритм Subvector-Finding добавит вектор y в множество кандидатов M. Так как порождающая матрица [n — к + mi,n — к]-кода C(m,mi) имеет вид G(C(m-mi)) = [P2(ms'mi)|/n_fc], то (m — y || 0) G C(ms,mi) только в случае m = y. Поэтому существуют такие значения a и в, при которых алгоритм SubvectorFinding возвращает одноэлементное множество кандидатов.

Отметим, что нахождение сообщения m по выборке ZT(ms,mi), состоящей из векторов вида (12), возможно и непереборным методом. Один из таких методов может быть построен для двоичного случая (q = 2) на основе результатов работы [3].

Для примера рассмотрим [n, n — к]-код C Рида — Соломона над полем Fq, q > 2. Пусть порождающая матрица кода C имеет вид G(C) = [P|/n_fc]. Заметим, что код C — это МДР-код, поэтому для любого ш С {1,... , к} и т = ш U {к + 1,... , n} код nT(C) с порождающей матрицей nT(G(C)) = [пш(P)|/n_k] является МДР-кодом размерности n — к и длины |ш| + n — к. Так как nT(G(C))х — также МДР-код, его кодовое расстояние равно n — к +1 (не зависит от ш и его мощности). Пусть в правиле (1) используется матрица P, являющаяся частью порождающей матрицы G(C ) рассматриваемого кода Рида — Соломона C. Тогда построенная на шаге 2 алгоритма ShiftAndLenFinding матрица nT(i,j) (P) = [P^1'^^ |1n_fc] является матрицей МДР-кода nT(i,j)(C ) размерности n — к + 1 и по теореме 2 минимальный базис B0 (г>)±, строящийся на первом шаге

алгоритма CodeRecognition (к этому алгоритму обращение происходит на шаге 6 алгоритма определения позиции и длины постоянного подвектора), состоит из векторов

веса n—к+1. Отметим, что базис B0 (г>)±, например, может представлять собой строит (i,j) (C)

ки матрицы [Ij|(—P2(i'j))т] —порождающей матрицы кода nT(ij)(Cгде Лт — транспонированная матрица Л. Таким образом, размер выборки для определения позиции и длины сообщения, а также содержания сообщения определяется на основании длины ключа, используемого в правиле (1). Результаты вычислений минимального количества перехваченных векторов для нахождения подвектора m в зашумленных данных приведены в таблице для q =16, n =15, a = 0,05, в = 0,04.

Значение величны М(Р) в случае, когда [Р\1п-к] —порождающая матрица кода Рида— Соломона, д = 16, п = 15, а = 0,05, в = 0,04

n — k p

< 0,0125 0,01875 0,025 0,03125 0,0375 0,04375 0,05 0,05625

1 2 2 2 2 2 2 2 2

2 2 2 2 2 2 2 2 213

3 2 2 2 2 2 5 519 2,0 E+6

4 2 2 2 2 6 494 3,2 E+5 2,1 E+10

5 2 2 2 3 194 60604 2,0 E+8 2,1 E+14

6 2 2 2 37 7515 7,5 E+6 1,3 E+11 2,1 E+18

7 2 2 4 570 293173 9,2 E+8 7,9 E+13 2,1 E+22

8 2 2 28 9083 1,1 E+7 1,1 E+11 4,9 E+16 2,1 E+26

9 2 2 207 145186 4,5 E+8 1,4 E+13 3,1 E+19 2,1 E+30

10 2 4 1585 2,3 E+6 1,7 E+10 1,7 E+15 1,9 E+22 2,1 E+34

11 2 15 12205 3,7 E+7 6,8 E+11 2,1 E+17 1,2 E+25 2,1 E+38

12 2 59 94107 5,9 E+8 2,7 E+13 2,6 E+19 7,5 E+27 2,1 E+42

13 2 242 725943 9,5 E+9 1,0 E+15 3,3 E+21 4,7 E+30 2,1 E+46

14 2 1003 5,6 E+6 1,5 E+11 4,1 E+16 4,0 E+23 2,9 E+33 2,1 E+50

Теорема 3. Пусть q — степень простого числа; qSC(p) — q-ичный симметричный канал с вероятностью ошибки p; n,k Е N, k < n; а, в Е [0; 1]; P и P — разные ((n — k) х ^-матрицы, причём матрица [P|In-k] является порождающей матрицей МДР-кода. Тогда M(P) ^ M(Р).

Доказательство. Ранее показано, что для МДР-кода минимальный базис дуального кода состоит из векторов веса n — k + 1. Заметим, что для не-МДР-кода минимальный базис дуального кода состоит из векторов веса, не превышающего n — k + 1. На основании теоремы 2 получаем доказываемое утверждение. ■

Таким образом, при заданных q, p, n, k, а и в лучшую стойкость метода кодового зашумления к атаке нахождения фиксированного вектора обеспечивают такие ((n — k) х ^-матрицы P, для которых матрица [P|1n-k] порождает МДР-код, так как в этом случае потребуется наибольшее количество перехватов для нахождения сообщения.

ЛИТЕРАТУРА

1. Wyner A. D. The wire-tap channel // Bell Sys. Tech. J. 1975. V. 54. P. 1355-1387.

2. Коржик В. И., Яковлев В. А. Неасимптотические оценки эффективности кодового зашумления одного канала // Пробл. передачи информ. 1981. Т. 17. №4 С. 11-18.

3. Иванов В. А. Статистические методы оценки эффективности кодового зашумления // Труды по дискретной математике. Т. 6. М.: Физматлит, 2002. С. 48-63.

4. Косолапов Ю. В., Турченко О. Ю. Поиск информационного сообщения в зашумлённых кодовых блоках при многократной передаче данных // Прикладная дискретная математика. Приложение. 2016. №9. С. 55-57.

5. Weidmann C. Coding for the q-ary symmetric channel with moderate q // IEEE Int. Symp. Inform. Theory. 2008. P. 2156-2159.

6. Couvreur A. Distinguisher-based attacks on public-key cryptosystems using Reed — Solomon codes // Designs, Codes and Cryptography. 2014. V. 73. No. 2. P. 641-666.

7. Сидельников В. М. Теория кодирования. М.: Физматлит, 2008. 324с.

8. Chabot C. Recognition of a code in a noisy environment // Proc. IEEE ISIT. June 2007. P. 2211-2215.

9. Yardi A. D. and Vijayakumaran S. Detecting linear block codes in noise using the GLRT // Proc. IEEE Intern. Conf. Communications, Budapest, Hungary, June 9-13, 2013. P. 4895-4899.

10. Ширяев А. Н. Вероятность. В 2-х кн. 3-е изд., перераб. и доп. М.: МЦНМО, 2004. Кн. 1-520с., кн. 2 - 408с.

REFERENCES

1. Wyner A. D. The wire-tap channel. Bell Sys. Tech. J., 1975, vol. 54, pp. 1355-1387.

2. Korzhik V. I. and Yakovlev V. A. Neasimptoticheskie otsenki effektivnosti kodovogo zashumleniya odnogo kanala [Nonasymptotic estimates for efficiency of code jamming in a wire-tap channel]. Probl. Peredachi Inf., 1981, vol. 17, iss.4, pp. 11-18. (in Russian)

3. Ivanov V.A. Statisticheskie metody otsenki effektivnosti kodovogo zashumleniya [Statistical estimation of the code noising efficiency]. Tr. Diskr. Mat., 2002, vol. 6, pp. 48-63. (in Russian)

4. Kosolapov Y. V. and Turchenko O. Y. Poisk informatsionnogo soobshcheniya v zashumlennykh kodovykh blokakh pri mnogokratnoy peredache dannykh [Search of an information message in noisy code blocks at repeated data transmission]. Prikladnaya Diskretnaya Matematika. Prilozhenie, 2016, no. 9, pp. 55-57. (in Russian)

5. Weidmann C. Coding for the q-ary symmetric channel with moderate q. IEEE Int. Symp. Inform. Theory, 2008, pp. 2156-2159.

6. Couvreur A. Distinguisher-based attacks on public-key cryptosystems using Reed — Solomon codes. Designs, Codes and Cryptography, 2014, vol. 73, no. 2, pp. 641-666.

7. Sidel'nikov V. M. Teoriya Kodirovaniya [Coding Theory]. Moscow, Fizmatlit Publ., 2008, 324 p. (in Russian)

8. Chabot C. Recognition of a code in a noisy environment. Proc. IEEE ISIT, June 2007, pp.2211-2215.

9. Yardi A. D. and Vijayakumaran S. Detecting linear block codes in noise using the GLRT. Proc. IEEE Intern. Conf. Communications, Budapest, Hungary, June 9-13, 2013, pp. 4895-4899.

10. Shiryaev A. N. Veroyatnost' [Probability]. Moscow, MCCME Publ., 2004. (in Russian)

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