Дифференцирование полиномов нескольких переменных над полями Галуа нечетной мощности и приложения к кодам Рида-Маллера

ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ

ТЕХНИКА И УПРАВЛЕНИЕ INFORMATION TECHNOLOGY, COMPUTER SCIENCE, AND MANAGEMENT

УДК 512.6+519.725 https://doi.org/10.23947/1992-5980-2018-18-3-339-348

Дифференцирование полиномов нескольких переменных над полями Галуа нечетной мощности и приложения к кодам Рида-Маллера*

В. М. Деундяк12, Н. С. Могилевская2**

1 НИИ «Спецвузавтоматика», г. Ростов-на-Дону, Российская Федерация.

2 Южный федеральный университет, г. Ростов-на-Дону, Российская Федерация.

Differentiation of polynomials in several variables over Galois fields of fuzzy cardinality and applications to Reed-Muller codes***

V. M. Deundyak12, N. S. Mogilevskaya2**

1 Research Institute "Spetsvuzavtomatika", Rostov-on-Don, Russian Federation.

2 Southern Federal University, Rostov-on-Don, Russian Federation

Введение. Полиномы нескольких переменных над полями Галуа лежат в основе теории кодов Рида-Маллера, а также используются в ряде криптографических задач. В работе изучаются свойства таких полиномов, заданных над произвольными полями Галуа нечетной мощности. Для полученных результатов предложены два практических приложения: схема разделения данных и декодер кодов Рида-Маллера.

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

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

Introduction. Polynomials in several variables over Galois fields provide the basis for the Reed-Muller coding theory, and are also used in a number of cryptographic problems. The properties of such polynomials specified over the derived Galois fields of fuzzy cardinality are studied. For the results obtained, two real-world applications are proposed: partitioning scheme and Reed-Muller code decoder. Materials and Methods. Using linear algebra, theory of Galois fields, and general theory of polynomials in several variables, we have obtained results related to the differentiation and integration of polynomials in several variables over Galois fields of fuzzy cardinality. An analog of the differentiation operator is constructed and studied for vectors. Research Results. On the basis of the obtained results on the differentiation and integration of polynomials, a new decoder for Reed-Muller codes of the second order is given, and a scheme for organizing the partitioned transfer of confidential data is proposed. This is a communication system in which the source data on the sender is divided into several parts and, independently of one another, transmitted through different communication channels, and then, on the receiver, the initial data is restored of the parts retrieved. The proposed scheme feature is that it enables to protect data, both from the nonlegitimate access, and from unintentional errors; herewith, one and the same mathematical apparatus is used in both cases. The developed decoder for the second-order Reed-Muller codes prescribed over the derived odd Galois field may have a constraint to the recoverable error level; however, its

Работа выполнена в рамках инициативной НИР. '* E-mail: vl.deundyak@gmail.com, nadezhda.mogilevskaia@yandex.ru '** The research is done within the frame of independent R&D.

©

(U S X <u 4 CO eö Л

G

^

IS

eö «

IS X

X

<a

i«

й X Л

ч

(U

h —

4 О

IS

X

3 m

eö И

IS

eö

5 a о

X

5

каналов связи.

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

use is advisable for a number of the communication channels. Discussion and Conclusions. The proposed practical applications of the results obtained are useful for the organization of reliable communication systems. In future, it is planned to study the restoration process of the original polynomial by its derivatives, in case of their partial distortion, and the development of appropriate applications.

Ключевые слова: полиномы нескольких переменных, поля Галуа, производные полиномов, дифференцирование полиномов, коды Рида-Маллера, декодирование, разделенная передача данных.,

Keywords: polynomials in several variables, Galois fields, polynomial derivatives, differentiation of polynomials, Reed-Muller codes, decoding, partitioned data transmission.

ö о

43 M

"3

-M

сл <U

Ü £ Л

Образец для цитирования: Деундяк, В. М. Дифференцирование полиномов нескольких переменных над полями Галуа нечетной мощности и приложения к кодам Рида-Маллера / В. М. Деундяк, Н. С. Могилевская // Вестник Дон. гос. техн. ун-та. — 2018. — Т. 18, № 3. — С. 339-348. https://doi.org/10.23947/1992-5980-2018-18-3-339-348

For citation: V. M. Deundyak, N. S. Mogilevskaya. Differentiation of polynomials in several variables over Galois fields of fuzzy cardinality and applications to Reed-Muller codes. Vestnik of DSTU, 2018, vol. 18, no.3, pp. 339-348. https://doi.org/10.23947/1992-5980-2018-18-3-339-348

Введение. Полиномы нескольких переменных над полями Галуа и их производные применяются в различных областях защиты информации. Некоторые вопросы, связанные с интегрированием и дифференцированием полиномов нескольких переменных, рассмотрены в ряде работ. Например, в [1] исследуются полиномы, заданные над простыми полями Галуа, в [2-4] получены результаты для булевых функций, а в [5-6] получены результаты для полиномов, заданных над троичными полями Галуа.

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

Предложенная схема разделения данных может быть использована для организации разделенной передачи конфиденциальных данных, т.е. такой системы связи, в которой исходные данные на стороне отправителя разделяются на несколько частей и, независимо друг от друга, передаются по различным каналам связи, а на стороне получателя из принятых частей восстанавливаются исходные данные. Особенностью предлагаемой схемы является то, что она позволяет защищать данные, как от нелегитимного доступа, так и от непреднамеренных ошибок. При этом в обоих случаях используется один и тот же математический аппарат, связанный с РМ-кодами и дифференцированием полиномов. Разделенная передача может быть использована как для повышения скорости связи, так и для обеспечения конфиденциальности данных за счет усложнения задачи перехвата из нескольких линий связи. Некоторые вопросы разделения данных рассмотрены в работах [7-11].

Для РМ-кодов второго порядка детерминированные декодеры известны только для некоторых значений мощности q полей Галуа. Например, довольно много известно декодеров для случая q = 2 , например [12-13], для случая q = 3 и использования полунепрерывного канала связи сконструирован декодер [5]. В [14]

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

Дифференцирование полиномов нескольких переменных. Пусть q = р", р — простое нечетное число, " е N, ^ — поле Галуа мощности q. Рассмотрим кольцо полиномов от т переменных ¥[х1,...,хт] над

полем ¥ч . Линейное пространство полиномов из ¥ [х1,..., хт] степени не выше г обозначим ¥((г)[х1

Пусть ¥т — т -мерное линейное пространство над р .

Производной полинома / е ¥(г}[х15...,хт ] по направлению Ь е р называется результат действия оператора дифференцирования [3]:

где /Ь (X) = /(X + Ь). Легко показать, что БЬ/ е ¥(г-1) [х15..., хт ], а оператор

Б-/: ¥<

является линейным.

Сумму координат вектора а е ¥рт, где р — простое, как натуральных чисел обозначим р(а). Полиномы / е ¥(С[х^,...,хт ] будем записывать в каноническом виде

/(х) = 2 /ах5 = «с х5 + X «ах+ Е «5хй ,

ае¥т р(а)=1 р(а)=2

где при записи монома ха = х51 ...хатт показатели аг будем отождествлять с элементами поля ¥р, а слагаемые в каждой сумме будем располагать в лексикографическом порядке по возрастанию. Если последняя сумма в

равна нулю, то получаем полином из ¥()[х1,...,хт ].

Лемма 1. Пусть q = р", р — простое нечетное число, /(х) е ¥((2)[х1,...,хт ] — полином в

каноническом виде (3), b = (b15...,bm) е F^ . Тогда

/(x) = fi0...00 + X(./10...005./01...005...5 foo...oi) + xAx ,

(D-bf)(x) = b (fl0...00,f0i...00,...,f00...0i J + 2XAbT + bAbT = 2Ar + f(b)-^

где

(

A =

f20

f /2 f /2

./110..00' ./101..00'

./1l0..00 / 2 f02

f /2 ./011..00'

f 101.00 / ^ f011..00 / 2 ./00

f /2 f /2 f

100..10 010..10 00

/2

f100..01 / 2 f010..01 / 2 f00> / 2

/2 /2^

J100..10 ' J100..01 '

f 12 f /2

J010..10 ' J010..01 '

fan.. 10 ! 2 /001..01 ! 2

f000.20 fООО..II I

/ооо..п^2 f000.02 J

\J100.m ' ^ 010. 01 ' ^ 001. 01 '

Доказательство. В случае простого поля Галуа доказательство содержится в [1]. Используя (1), (4) и симметричность матрицы А получаем:

Л(х) = У(х + Ь) = /00...00 + (х + Ь)(У10...00>/01...00»-»/00...01 )Г + (х + Ь)А(х + Ь)Г ,

(о-ь/)(х) = / (х) - /(х) = Ь (/10...00, /01...00,..., /00...01 )т + хаьт + ЬАхг + ЬАЬ~г,

(РЕГ)(х) = Ь (¿0...00,/01...00,...,/00...01 )Т + 2хаьт + ЬАЬг = 2хАЬТ + /(Ь)-/^ .•

Докажем теорему, которая определяет способ восстановления с точностью до постоянного слагаемого полинома из ¥q(2) [х15х2,...,хт] по набору его производных, вычисленных в базисных направлениях.

Теорема 1. Пусть Р = {Ь,. =(Ь1',Ь2,...,Ь'т)}(=1 т — некоторый базис пространства ¥™, где q — нечетное. Рассмотрим полином / е ¥,(2) [^, х2,..., хт ] вида (4):

f(x) 1/00...00 +X (1/10...00' ^^..00,..., f00...01 ) +xAx .

Если

то

{( D,f )( X ) = a;xr

A =

^a1

va m

^b!

Л"1

b\ b;

bl b2

<u S I

(U

и

ей

а

с

^

IS

<й и

S I X <и h

ей X Л

4

(U h

5

4 о

5 £

S и

ей И S

<3 S а о

-е х X

1

С О тз

M

"¡3

-M

ХЛ <U

£ л

( f

J10

fox

\ in,1

Vfoo...oi J

a0 - bxAbx

a„ -bnAbnT

K<~KAbJ j

T V U1

b\ b\ ••• b

1 v

к к

Ы

bm bm ••• b"

У1 U2 m

Доказательство. Из (5), (6) получаем:

V i 1,..., m: 2 Abf = (aj, a'2,..., a'J, f(bf )-f00.a0 = a'0.

Тогда

(ui

2 A

bi1 bi2

b\ b\

\bi bl

1 m bi

( „1

a,

a,

V m m

Следовательно, формула (7) верна.

Из (4) следует, что для любого Ь е ГЦ":

/(Ь)-/оо..оо = Ь (/10...00,./01...00'---'/00...01) + Ь^Ь • Возьмем в качестве Ь векторы Ь (ер и воспользуемся равенством /(Ьг) - /00 00 = а0 из (9). Тогда

V г= 1,..., т : а0 - Ь,.ДГ = Ь . (^...оо, /оl...оо,..., /00...01) Г .

Следовательно,

^ ГЬ' Ъ1 ••• ¿'У/- "

°2 °т У10...00

/о1...оо

( „1

а° - b0Abj а,2 - b2Ab2T

V aom - bm Ab J J V, bim b2m

К К •••

/о

т )\J 00...01 У

и формула (8) доказана. •

q-ичные коды Рида-Маллера ЕМч(г,т). Рассмотрим РМ-коды над конечным полем ^ где ц = р", р — простое нечетное число, 5 е N [15-16]. Элементы Г(г)[х1,...,хт] являются информационными полиномами кода КМд(г,т); будем полагать, что т > г > 0, т > 2. Вектор / , составленный из коэффициентов информационного полинома /(х1,..., хт), называется информационным вектором. В векторном пространстве ГЦ" зафиксируем некоторое упорядочение

{а!,..., ап }

Произвольный информационный полином /(х) е Р?(г)[х,,...,хт] кодируется путем вычисления его значений в точках упорядоченного пространства ГЦ" :

с

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

С: ГГ,...,Хт ] ^ Гп. Коды Рида-Маллера определяются натуральными параметрами г и т

ЯМд(Г,т) = {(/(а1),...,/(ая))|/(Х) е ГДх,...,Хт],с^(/) < г}с^, параметр г называется порядком кода. Они образуют семейство линейных [п,к,й]ц-кодов, длина п и размерность к которых определяются по формулам

п=цт, к=хе (-^стс-^,

г=о j=о

где |_ ] — округление до меньшего целого, а минимальное кодовое расстояние й кода (г, т) удобно вычислять, используя параметры дуального кода ЯМд (г1, т), где г1 = т(ц -1) - г -1. Пусть р — остаток от деления г1 +1 на ц-1: г1+1 = а(ц-1) + р, где р<ц-1, тогда параметр й кода ЯМд(г,т) задается выражением

й =

Отметим, что произвольный [п,к,С]д-код позволяет исправить ? = й -1) / 2J ошибок в одном кодовом слове [17].

Далее будем рассматривать РМ-коды порядков 1 и 2, заданные над полями Галуа нечетной мощности, соответствующие им информационные полиномы записывать в виде (3), а для нумерации координат информационного вектора использовать упорядочение (10).

Лемма 2. Пусть г е (1; 2}, д > 3 , тогда минимальное кодовое расстояние кода КМд (г, т) вычисляется по формуле:

dr = (q - r)qm

а значения гарантировано исправляемых ошибок tr й -1) /2J кодами КМд (г, т), г е{1;2}, связаны следующим образом:

Ф < 12.

Доказательство. Воспользуемся тем, что г < д, и вычислим ст и р — неполное частное и остаток от деления г1 +1 на д -1 соответственно:

ст = (т(д -1) - г) сИу (д -1) = т -1; р = (т(д-1)-г)тоС(д-1) = д-1 -г . Тогда из формулы (12) получаем (13). Из равенств = (д -1)дт-1, й2 = (д - 2)дт-1 получаем, что искомое неравенство (14) имеет вид

(q -1)qm-1 -1

Отметим, что d2 — нечетное, а йх — четное, поэтому

(q - 2)qm -1 -1

(q -1)qm-1 -1

Следовательно, неравенство (14) приобретает вид

(q - 2)qm-1 -1

(q - 2)qm -1 -1

(q -1)qm-1 - 2

1 f (q -1)qm-1 - 2 (q - 2)qm-1 -1

легко видеть, что оно эквивалентно неравенству д > 3 . •

Следствие. Если д>3, то в (14) — строгое неравенство, то д=3, то в (14) — равенство. В таблице 1 приведены параметры некоторых РМ-кодов. В трех верхних строках указаны такие

параметры рассматриваемого кода КМд

содержатся значения: к — размерность кода, — минимальное кодовое расстояние и ?! — число

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

<и S X <и

ю ей

а

с

^

IS ей

и

S X

X (U

h «

ей X Л

4

(U h

5

4 о

5 £

S и

ей И S

<3 S а о

-е х X

Таблица 1

Значения параметров некоторых РМ-кодов

q 3 5 7

m 2 3 5 7 2 3 5 7 2 3 4 5

n 9 27 243 2i87 25 i25 3i25 78i25 49 343 240i i6807

r=0 ki 3 4 6 8 3 4 6 8 3 4 5 6

d0 6 i8 i62 i458 20 i00 2500 62500 42 294 2058 i4406

ti 2 8 80 728 9 49 i249 3i249 20 i46 i028 7202

r=2 k2 6 io 2i 36 6 i0 2i 36 6 i0 i5 2i

d2 3 9 8i 729 i5 75 i875 46875 35 245 i725 i2005

t2 i 4 40 364 7 37 937 23437 i7 i22 857 6002

Теперь введем аналог оператора дифференцирования Бь , действующего в пространстве полиномов (2), для пространства Г, где п = цт. Координаты векторов из Г будем нумеровать векторами из упорядоченного множества Г™ (см.(10)). Рассмотрим оператор сдвига тЬ : Г ^ Г , действующий по формуле

тг(а) = (а_ г,...,а_ г),

где а = (а- ,...,а- ) е Ь = (Ь1,...,Ьт) е . Отметим, что оператор сдвига Ть является перемешивающим биективным отображением. Линейный оператор : Г ^ Г, являющийся аналогом Б^ , определим формулой:

А"

Будем называть Аь (а) производным вектором вектора а по направлению Ь .

Лемма 3. Рассмотрим полином / е Г(2) [х1,х2,...,хт], вектор Ъ = (Ь1,...,Ьт) е ГЦ", операторы АЬ, БЪ и С . Тогда

х4-

Доказательство проводится прямыми выкладками и для ц = 3 имеется в [6].« Отметим, что из (2) и (16) вытекает, что если С(м>) е ЯМд (2, т), то (С(е ЯМд (1, т).

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

Алгоритм разделения данных

Вход: информационный вектор й е Г2 кода (2, т) и упорядоченный набор базисных векторов

р={ь;=

который является секретным ключом рассматриваемой схемы. Выход: векторы 5,. е Г^1, г = 1, т . 3 Шаг 1. Сопоставим входному вектору й информационный полином й = й(Х) и закодируем его с

использованием (11) в вектор С(й) е Гц кода ЯМч (2, т).

Шаг 2. Сформируем т производных векторов (см. (15)):

Аь (С (й)) = С (Бь (й)) е Гц , г = , Ъ ер .

Отметим, что С (Бъ (м>)) е ЯМд (1, т) .

О, ' ---

Шаг 3. Каждый вектор С(Бь (й)) е Г, г = 1, т конкатенируем с коэффициентом /00 00 := й(0) кодового

вектора С(й):

5,,= С(БЬ (й))||/оо..оо е Гц .

<и

>

Далее векторы 5,. е р+', г = 1, т, передаются по т различным линиям связи. Очевидно, что во время передачи векторы , г = 1, т, могут быть искажены. Таким образом, из канала связи будут получены векторы

= (С(О (*)))•!!/_ е р , = Гт . где (С(и)))' — возможно искаженный вектор С(Въ (и*)), а скаляр /^ — возможно искаженное значение /00 00. Скаляр /^ соответствующий 5,' обозначим /^ .

Алгоритм восстановления данных

Вход: векторы 5,', г = 1, т и секретный ключ р (см. (17)) . Выход: вектор и' е р2 .

Шаг 1. Из каждого вектора 5,', г = 1, т, выделяем две компоненты: (С(О (и)))' е р и /^ , г = 1, т . Шаг 2. Векторы (С(Б^ (и)))' направляем в декодеры кода ЯМд (1, т). Отметим, что декодеры могут быть использованы произвольные, например, [16], [18]. На выходе рассматриваемых декодеров формируются полиномы 0ъ (и) с р1} [х1,х2,...,хт], г = 1,...,т .

Шаг 3. Из коэффициентов / формируем вектор (/"' , /"' ,..., /"' ) и подаем на вход декодера

А А ^ 00..00,г А А А ^ XV./ оо..оо,1 ^ 00..00,2 ^ 00..00,т А

кода КМд (0, т), фактически совпадающего с кодом т -кратного повторения. Результатом работы этого декодера является скаляр /00 00.

Шаг 4. Значения коэффициентов полиномов £Ь(и) с р(1) [х1,х2,...,хт], г = 1,т, и ключ р (см. (17)) подставляем в формулы (7) и (8) и из полученных результатов строим полином /(х). Затем вычисляем искомый полином и'(х) = /(х) + /00 00.

Шаг 5. Получателю сообщений выдаем информационный вектор и' е р, соответствующий полиному

и'(х ).

Замечание 1. Корректность алгоритма восстановления данных зависит от числа ошибок, повредивших векторы 5 е р+' во время их передачи по линиям связи, а также от корректирующей способности используемых РМ-кодов первого порядка. Очевидно, что если используемые декодеры корректно восстановят векторы С(0^ (и)) и значение /00 00 , то и восстановление исходных данных с использованием результатов

теоремы 1 будет корректным, и, следовательно, вектор и'(х), полученный на выходе алгоритма ^ восстановления данных, совпадает с исходным информационным вектором и е р2 . Отметим, что работа £ декодеров по восстановлению С(Бъ (и)) корректна, если ™

V г = 1т : ак (С(О (и)), (С(0-ъ (и)))') < [_Ц -1)/2] , ^

____^ _ _ К

где (х, у) — расстояние Хемминга между векторами х, у . Скаляр /00 00 восстанавливается корректно, если ^

ы

вектор (/ ,/ ,..., / ), сформированный на шаге 3 алгоритма, содержит менее т/2 координат, ^

' _ _ __^

отличных от значения /00 00 = и(0). Если в 5( е р+', г = 1, т, произошло ошибок больше, чем могут исправить н

_ и «

используемые декодеры, то восстановление и е р2 не гарантируется. ¡^

Замечание 2. В предложенных алгоритмах разбиения и восстановления используются коды Рида- ч

Маллера как первого, так и второго порядков, однако декодеры применяются только для кодов первого ^

порядка. §

Замечание 3. Конфиденциальность передаваемых данных обеспечивается не только необходимостью ^

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

Декодер кодов Рида-Маллера второго порядка. Сначала рассмотрим идею организации алгоритма

декодирования, а затем опишем алгоритм по шагам. ¡^

Зафиксируем некоторый базис Р = {Ъ = (Ъ, Ъ2,..., Ъ'т) ер" }-=1 т в пространстве р", где д = р", р — простое ^ нечетное число. Предположим, что на вход декодера поступает У = С(м) + e (е Б"), где и — информационный к

_ д К

полином, С(м) — кодовый вектор [", к2, а?2]? -кода ЯМд (2, т), е е Р" — вектор ошибок, для которого

-O

"c

и (U

Ü £ Л

где wth (.) — вес Хемминга, t2 = (йг -1) / 2]. По вектору У с помощью оператора Д; построим т производных векторов, вычисленных в базисных направлениях:

Д- (У) = Д- (С(м) + е) = Д- (С(м)) + Д- (е) , г = 1,..., т

каждый из которых представляет собой вектор Дъ (С(м)) е ЯМд(1,т), искаженный вектором ошибок Д4 (е) е рд, и может быть безошибочно декодирован произвольным декодером [п, к1, ё1]д -кода КМд (1, т), работающим до половины кодового расстояния (см., напр., [16], [18]), в случае, если число ошибок не превосходит ^ = (-1)/2 j, т.е. когда

Если векторы Д4

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

Алгоритм декодирования кода ЯМд

Вход: параметры [п, к2, ё2 ]д -кода КМд (2, т), У = (Уо, ,.. .У^) е рд . Выход: восстановленный информационный вектор М .

Шаг 1. Зафиксируем некоторый базис Р = {Ъг. = (4,Ъ,...,Ъ'т) еР™}т пространства Рч и вычислим производные векторы по всем направлениям Ъ1 е р :

Д- (У) =т4- (У) - У .

Шаг 2. Декодируем Д4 (У), г = 1,...,т , используя произвольный декодер ЯМд(1,т) -кодов, работающий до половины кодового расстояния, и в результате получаем векторы р; и их полиномиальные представления

Ръ (Х) =0,;^ +а'2х2 +... + атхт +а'0 с р1) [^x2,...,Хт], г = 1,...,т .

Шаг 3. Используя полиномы р; (Х), г = 1,...,т, по формулам (7) и (8) найдем полином /(Х) с

нулевым свободным членом.

Шаг 4. Для всех 2 е Рд вычислим

Y(z) = X|C(f (x) + z)a -Ya

где С(/(х) + г)а — аг -тая координата вектора С(/(х) + г) (см. (11)). Обозначим г0 значение 7 на котором функция г) достигла своего минимума.

Шаг 5. Результатом декодирования является вектор М взаимно однозначно соответствующий информационному полиному м(Х) = /(Х) + г0 .•

Теорема 2. Для того, чтобы построенный алгоритм декодирования кода ЯМд (2, т) исправил все ошибки в У = С(м) + е достаточно, чтобы выполнялись условия (18) и

wth

где tl = (йх -1) / 2], йх — минимальное кодовое расстояние кода ЯМд (1, т). Доказательство. На шаге 2 на вход декодера поступают векторы 2 Д- (У) = Т4- (У)-У = Т4- (С(М)) + Т4- (е)-С(М)-е = Д- (С(м)) + Д- (е) .

^ Напомним, что Д4 (С(м)) е КМд (1, т), а декодеры кода КМд (1, т), работающие до половины кодового с '

о расстояния, исправляют до t1 ошибок в кодовом слове. Из условия (20) вытекает, что

(Д; (е)) < мгь (т; (е)) + wth (е) = 2 (е) < ^ Следовательно, векторы р; , которые формируются на шаге 2, совпадают с Д4 (С(м)). Из этого вытекает, что на шаге 3, в силу теоремы 1, формируется полином / (Х) = м( Х) - м(0).

Из условия (18) вытекает, что вычисленная на шаге 4 величина г0 равна свободному члену м(0) искомого информационного полинома м(Х). Таким образом, на шаге 5 алгоритма получается искомый информационный вектор М . •

Отметим, что для правильного декодирования по предложенной схеме требуется выполнение условия (20), из которого вытекает (19), хотя более естественным является условие (18). Рассмотрим связь между этими условиями.

Лемма 4. Для кодов ЯМд (2, т) в случае д = 3 условия (18) и (20) равносильны, а в случае д > 3 при выполнении условия (18) выполнение условия (20) не гарантируется.

Доказательство. Из следствия леммы 2 получаем, что при д = 3 справедливо равенство ^/2 = /2, т.е. правые части неравенств (18) и (20) совпадают, следовательно, из выполнения одного из них вытекает выполнение другого. При д >3 из следствия леммы 2 получаем, что /¡/2 < /2, т.е. из выполнения (18) не вытекает выполнение (20). •

Замечание 1. В [5-6] описан декодер ЯМ3(2,т)-кода, где, как и в предложенном алгоритме, для

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

Замечание 2. Для кодов ЯМд (2, т), д = 3, предлагаемый декодер работает до половины кодового

расстояния. Для кодов ЯМд (2, т), д > 3, предлагаемый декодер не гарантирует исправление всех ошибок, число которых не превосходит /2 , но декодер будет работать корректно при соблюдении более слабого условия (20). Отметим, что использование предлагаемой схемы декодирования в случае полей мощности больше трех, несмотря на указанное ограничение, может быть целесообразно по следующим причинам. Во-первых, теория декодеров РМ-кодов второго порядка проработана недостаточно, но, если имеется декодер первого порядка, то предлагаемый декодер, являющийся надстройкой над ним, восполняет этот пробел. Во-вторых, при использовании каналов связи, вероятность ошибок в которых такова, что (20) выполняется, переход от РМ-кодов первого порядка к кодам второго порядка уменьшает избыточность (см. таблицу 1).

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

Библиографический список §

1. Деундяк, В. М. Интегрируемость систем полиномов нескольких переменных первой и второй ¡Ц степени над простыми полями Галуа / В. М. Деундяк, А. В. Кнутова // Известия вузов. Сев.-Кавк. регион.  Естественные науки. — 2016. — №2. — С. 41-46. с

2. Абросимов, А. С. Свойства бент-функций q-значной логики над конечными полями / ¡3 А. С. Абросимов // Дискретная математика. — 1994. — № 3(6). — С. 50-60.

3. Логачев, О. А. Булевы функции в теории кодирования и криптологии / О. А. Логачев, §

А. А. Сальников, В. В. Ященко. — Москва: МЦНМО, 2004. — 470 с. Й

н

4. Мазуренко, А. Способ восстановления булевой функции нескольких переменных по ее к; производной / А. Мазуренко, Н. С. Могилевская // Вестник Донского гос. техн. ун-та. — 2017. — № 1 (88). — С. К 122-131. £

5. Деундяк, В. М. Модель троичного канала передачи данных с использованием декодера мягких §

решений кодов Рида-Маллера второго порядка / В. М. Деундяк, Н. С. Могилевская // Известия вузов. Сев.-Кавк. о

К

регион. Технические науки. — 2015. — № 1 (182). — С. 3-10. £

л

6. Деундяк, В. М. Об условиях корректности декодера мягких решений троичных кодов Рида-Маллера и второго порядка / В. М. Деундяк, Н. С. Могилевская // Владикавказский математический журнал. — 2016, — Т. ^ 18. Вып. 4. — С. 23-33.

я

7. Могилевская, Н. С. Пороговое разделение файлов на основе битовых масок: идея и возможное 2

^

применение / Н. С. Могилевская, Р. В. Кульбикаян, Л. А. Журавлев / Вестник Дон. гос. техн. ун-та. — 2011. — о Т.11. № 10. — С. 1749-1755.

К

8. Тормасов, А. Г. Обеспечение отказоустойчивости в распределенных средах / А. Г. Тормасов, М. А. Хасин, Ю. И. Пахомов // Программирование. — 2001. — Т.27, № 5. — С. 26.

<и

9. Мищенко, В. А. Ущербные тексты и многоканальная криптография / В. А. Мищенко, Ю. В. Виланский. — Минск: Энциклопедикс, 2007. — 292 с.

10. Деундяк, В. М. Модель организации защищенного документооборота на базе распределенной передачи данных с аутентификацией / В. М. Деундяк, С. Б. Попова // Вестник Дон. гос. техн. ун-та. — 2015. — Т. 15, № 4. — С. 101-106.

11. Могилевская, Н. С. О применении порогового разделения данных для организации разделенной передачи на примере метода битовых масок [электронный ресурс] / Н. С. Могилевская // Инженерный вестник Дона. — 2017. — № 2. — Режим доступа: http://www.ivdon.ru/uploads/article/pdf/IVD_48_ Mogilevskaya.pdf_492254b6f1.pdf (дата обращения : 12.08.2017).

12. Сидельников, В. М. Декодирование кодов Рида-Маллера при большом числе ошибок / В. М. Сидельников, А. С. Першаков // Проблемы передачи информации. — 1992. — Т.28, №3. — С. 80-94.

13. Карякин, Ю. Д. Быстрое корреляционное декодирование кодов Рида—Маллера / Ю. Д. Карякин // Проблемы передачи информации. — 1987. — Том 23, № 2. — С. 40-49.

14. Paterson K. G., Jones A. E. Efficient decoding algorithms for generalized Reed-Muller codes // IEEE Transactions on Communications. 2000, Vol. 48. Issue 8. Pp. 1272 - 1285.

15. Pellikaan R., Wu X.-W. List decoding of q-ary Reed-Muller Codes // IEEE Trans. On Information Theory. 2004. Vol. 50. Issue 3. P. 679-682.

16. Santhi N. On Algebraic Decoding of q-ary Reed-Muller and Product Reed-Solomon Codes. - ISIT 2007 Conference, June 24 -29, Nice, France, 2007.

17. Деундяк, В. М. Методы помехоустойчивой защиты данных / В. М. Деундяк, А. Э. Маевский, Н. С. Могилевская. — Ростов-на-Дону: ЮФУ, 2014. — 309 с.

18. Ashikhmin A. E., Litsyn S. N. Fast Decoding of Non-Binary First Order Reed-Muller Codes // Applicable Algebra in Engineering, Communication and Computing. 1996. Vol. 7. Issue 4. pp. 299-308.

Поступила в редакцию 08.11.2017 Сдана в редакцию 09.12.2017 Запланирована в номер 21.06.2018

Received 08.11.2017 Submitted 09.12.2017 Scheduled in the issue 21.06.2018

Об авторах:

Деундяк Владимир Михайлович,

доцент Института математики, механики и компьютерных наук им. И.И. Воровича Южного федерального университета (РФ, 344090, г. Ростов-на-Дону, ул. Мильчакова 8А), старший научный сотрудник Южного регионального аттестационного центра (ЮРАЦ) ФГАНУ НИИ "Спецвузавтоматика"(РФ, 344002, г. Ростов-на-Дону, пер. Газетный, 51), кандидат физ.-мат. наук, доцент, ORCID: http://orcid.org/0000-0001-8258-2419 vl.deundyak@gmail.com

Могилевская Надежда Сергеевна,

5 доцент Института математики, механики и

3 компьютерных наук им. И.И. Воровича Южного

й федерального университета (РФ, 344090,.

-о г. Ростов-на-Дону, ул. Мильчакова, 8-а), кандидат

г^ технических наук, доцент,

£ ORCID: http://orcid.org/0000-0003-1357-5869

> nadezhda. тр gilevskaia@yandex.ru

Authors:

Deundyak, Vladimir M.,

associate professor of the Algebra and Discrete Mathematics Department, Vorovich Institute for Mathematics, Mechanics, and Computer Science, Southern Federal University, Senior Research Scholar, Southern Regional Certification Centre, Research Institute "Spetsvuzavtomatika" (51, Gazetny per., Rostov-on-Don, 344002, RF), Cand(Phys-Math), associate professor, ORCID: http://orcid.org/0000-0001-8258-2419 vl.deundyak@gmail.com

Mogilevskaya, Nadezhda S.,

associate professor of Vorovich Institute for Mathematics, Mechanics, and Computer Science, Southern Federal University (8-a, ul. Milchakova, Rostov-on-Don, 344090, RF), Cand(Eng), associate professor, ORCID: http://orcid.org/0000-0003-1357-5869 nadezhda.mogilevskaia@yandex.ru