Научная статья на тему 'Умножение элементов конечного поля GF(2m)'

Умножение элементов конечного поля GF(2m) Текст научной статьи по специальности «Математика»

CC BY
991
127
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
УМНОЖЕНИЕ / МНОГОЧЛЕН / КОНЕЧНОЕ ПОЛЕ / КОМБИНАЦИОННАЯ СХЕМА

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

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

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

MULTIPLICATION OF ELEMENTS OF FINITE FIELD GF(

Operation of multiplication of elements of finite field GF(2m) with use of operations of multiplication and division of polynomials is considered. Mathematical expressions are deduced for performance of the specified operation and the approach to construction of the combinational schemes realizing these expressions is offered. Possible hardware and time complexities of realization of these schemes are defined.

Текст научной работы на тему «Умножение элементов конечного поля GF(2m)»

2009

НАУЧНЫЙ ВЕСТНИК МГТУ ГА серия Прикладная математика. Информатика

№ 145

УДК 681.325.3:621.391.25:621.394.14

УМНОЖЕНИЕ ЭЛЕМЕНТОВ КОНЕЧНОГО ПОЛЯ СР(2Ш)

В.И. КУБИЦКИЙ

Статья представлена доктором технических наук, профессором Рудельсоном Л.Е.

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

Ключевые слова: умножение, многочлен, конечное поле, комбинационная схема.

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

необходимо либо иметь отдельную схему для вычисления операционных коэффициентов, либо вычислять эти коэффициенты заранее, и их значения учитывать в структуре комбинационной схемы. В первом случае это приводит к увеличению аппаратурной сложности комбинационной схемы, во втором - практически исключает возможность наращивания комбинационной схемы при изменении образующего конечное поле полинома р(х)=хт+рт-] хт~]+...+ р0 х0, из которого определяются операционные коэффициенты.

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

1. Математические выражения для умножения элементов конечного поля

Перемножаемые элементы конечного поля представим в виде многочленов:

Умножение элементов конечного поля может быть выполнено по правилу умножения представляющих эти элементы многочленов а(х) и Ь(х) по модулю некоторого неприводимого примитивного многочленар(х) [5]:

Выражение (2) запишем в виде:

а( х) • Ь( х) = р( х) • д( х) + с( х), которое с учетом того, что операции над многочленами выполняются в поле ОБ(2), можно представить как

Введение

(1)

(2)

е( х) = а( х) 0 Ь( х) = р( х) 0 д( х) © с( х) = / (х) © с( х),

где 4(х) = чч-1хЧ-1 + чд-2х4~2 + • -+41х + 40; (3)

с( х) = сс-1хс-1 + сс-2 хс-2 + • + с1х + с0;

т+(д-1) і

/(х)— 2 /х, / = І Рі 0 4і-] (здесь выполняется суммирование по модулю 2).

і=0 і=о

0 , © - умножение и сложение по модулю 2 соответственно.

Степень многочлена е(х) (делимого) равна

ёе§ е(х)=ёе§ a(x)+deg Ь(х)=2(т-1).

Степень многочлена 4(х) (частного) изначально неизвестна, но ее можно вычислить из выражения

ёе§ 4(x)=deg е(х) - ёе§р(х)=(т-2).

Степень многочлена с(х) (остатка) определяется степенью делителяр(х) и равна

ёе§ c(x)<deg р(х)<(т-1).

С учетом записанного

Є(х) = I егх' = I Єт+кхт+к + I

2т-2 т-2 т-1

іх = '~ ....................

і=0 к=0 5=0

т+(т-2) т-2 т-1 т-1 т-2 т-1

т- 2 /х=(2 /т*х-*к+2/х) © 2су = 2/,мх"+к+2(/. © с.)х.

і=0 к=0 5=0 .=0 к=0 .=0

Подставим эти выражения в (3) и преобразуем

т-1 т-2

2 V* - (/тч © с,-)хт-' + 2 (/. © с.)х ;

.=0 .=0

т-2 т-2

^е хт+к — ^ / хт+к

^т+кХ ¿шUJm+kX ’

к=0 к=0

. т-1-к

где е. = 2 а.-и 0 Ьи , ет+к = 2 ат-и ^ Ьк+и , (4)

и=0 и=1

т-2 . т-2-к

/т-1 = 2 р(т-1)-и 0 4и , /. = 2 р.-и 0 4и , /т+к = 2 рт-и 0 4к+и ■

и=0 и=0 и=0

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

Соотношения коэффициентов многочленов е(х), р(х), 4(х), с(х) представим в виде расчетных выражений

е0 = /0 © с0 = р0 0 40 © с0

е1 = /1 © с1 = р1 0 40 © р0 0 41 © с1 (5)

е2 = /2 © с2 = р2 0 40 © р1 0 41 © р0 0 42 © с2

ет-2 = /т-2 © ст-2 = рт-2 0 40 © рт-3 0 41 © ... © р0 0 4т-2 © ст-2 ет-1 = /т-1 © ст-1 = р„-1 0 40 © рт-2 0 41 © ... © А 0 4т-2 © ст-1

и

Єт = Рт 0 Ч0 © Р т-1 0 Ч1 © ••• © Рі 0 Чт-2

Єт+1 Р т

0 Чі © Рт-1 0 Чі © ••• © Рз 0 Чт-2 Єт+2 = Рт 0 Чі © Рт-1 0 Чз © ••• © Ра 0 Чт-2 (6)

Єт+(т-3) = Рт 0 Чт-3 © Рт-1 0 Чт-2

Єт+(т-2) _ Рт 0 Чт-2 •

В матричной записи выражения (5) и (6) представляются в виде

Ч " /о © С0 " Р0 Ч0 С0 Ч0 С0

е1 / © С Р1 Р0 Ч1 С1 Ч1 С1

Є2 = 2/ © 2 = Р2 0 Р0 ^ ... 0 Ч2 © С2 = Р 0 Ч2 © С2

Єт-2 2 - т о © 2 - __/т __ Рт-2 Р1 СО - т Р Р0 Чт-3 Ст-2 Чт-3 Ст-2

_Єт-1 _ 1 -т/ 1 © с т 1 1 _ Р т-1 2 Р2 2 - т Р Р1 _ _Чт-2 _ _Ст-1 _ _Чт-2 _ _Ст-1 _

е т 1 Р т Рт-1 2 - т Р СО Січ 1 2 Р2 Ч0

Єт+1 Рт Рт-1 •• Ра Р3 Ч1

Єт+ 2 = Рт • • Р5 Ра 0 Ч2

СО - т 2 Рт Р т-1 Чт-3

1 2 т 2 1 Рт _ __ Чт-2

1 Рт-1 2 - т Р • Р3 Р 2 " Ч0 Ч0

1 Рт-1 • • Ра Р3 Ч1 Ч1

1 • Р 5 Ра 0 Ч2 = Р2 0 Ч2

1 Р т-1 со - т со - т

1 1 т 2 1 1 т 2 1

Здесь Р1 - (т, т-1)-матрица; Р2 - квадратная матрица порядка (т-1)

Анализ выражений (5) и (6) и их матричных представлений показывает:

1 Выражение (5) является системой т линейных уравнений с (2т-1) неизвестными

( Чo, Чl,••■, Чт-2 и ^ C1,-, Ст-1^

2^ Выражение (6) является системой (да-1) линейных уравнений с (да-1) неизвестными ( ч0, Ч1, • • •, Чт-2), которые являются также неизвестными для выражений (5)

3^ Матрица Р2 является треугольной квадратной матрицей, порядок которой определяется разрядностью делителя (степенью многочлена р(х)).

4 Матрица Р1 является (да, да-1)-матрицей

2. Алгоритм умножения элементов конечного поля

В данной работе предлагается следующий алгоритм умножения элементов конечного поля GF(2m).

Шаг 1.

Из выражений (4) определяются коэффициенты многочлена е(х), являющегося произведением многочленов а(х) и Ъ(х).

Шаг 2.

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

Проверим, имеет ли система линейных уравнений (6) решение. Количество уравнений в этой системе совпадает с количеством неизвестных, а определитель треугольной матрицы Р2 системы отличен от нуля, так как отличны от нуля диагональные элементы этой матрицы (рт-1=1). Следовательно, данная система линейных уравнений является крамеровской системой и имеет только одно решение [6].

Чг =

р

1

Рт-1

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

1

Р т-2 Р т-1 1

Єт — Рз Р 2

Єт+1 - Ра Рз

ет+2 - Р5 Ра

Є2т+3 — 1 Р т-1

Є2т-2 — 1

г=0, 1, 2,

(т-2).

Так как Р2 = 1 [6], то получим:

Чг =

1 Р т-1 Р т-2 — Єт

1 Р т-1 — Єт+1

1 — е

т+2

- Рз Р 2

... Ра Рз

— Р5 Ра

Рт-1

1

(7)

2т-2

Шаг 3.

Из выражения (5) определяется остаток (коэффициенты при неизвестных многочлена с(х))

с0 " Р0 Ч0 е0

с1 Р1 Р0 Ч1 Є1

С2 = Р 2 0 Р0 5р ... Ч2 ® Є2

Ст-2 Р т-2 Р т 3 1Р Р0 Чт-3 Єт-2

Ст-1 _ _ Р т-1 2 Р2 2 - т Р Р1 _ Чт-2 Єт-1

(8)

где величины ч0, Ч1, Ч2, — , Чт-3, Чт-2 определены на втором этапе вычислении.

3. Умножение элементов конечного поля на комбинационных схемах

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

( ^ al, — , атЛ ( b0, К — , Ьт-1) ( e0, el, — , Єт-1, Єт ,— , Є2т-2 ), ( Рo, Рl, — , Рт ) и ( Чo, Чl, — , Чт-2^

соответствующими многочленам а(х), Ь(х), е(х), р(х) и ч(х) над полем ОБ(2). Вычисление вели-

1

чин е0, е1, — , ет-1, ет,— , е2т-2 осуществляется параллельно. Вычисление величин частного Ч0, Ч1, — , Чт-2 производится последовательно, начиная со старшего коэффициента и заканчивая младшим: первым будет определено значение чт-2, последним - значение ч0 . Величины остатка с0, с1, — , ст-1 определяются параллельно, т.е. все значения этих величин будут получены одновременно.

Комбинационную схему умножения элементов конечного поля ОБ(2ш) (КСУЭ) можно условно разделить на два уровня:

1. На первом уровне производится умножение многочленов над полем ОБ(2) [3], представляющих перемножаемые элементы конечного поля ОБ(2т). Здесь используются комбинационные схемы умножения многочленов (КСУМ), реализация которых рассмотрена в [2].

2. На втором уровне выполняется деление многочлена, полученного в результате умножения многочленов, на неприводимый примитивный многочлен р(х). Операция деления, реализующая выражения (7) и (8), выполняется на комбинационных схемах деления многочленов (КСДМ) [4].

КСУЭ можно построить на основе функциональной ячейки (ФЯ), состоящей из одного двухвходового элемента И и сумматора по модулю 2, и эта ФЯ выбирается в качестве базовой ячейки (БЯ). Схему, построенную на основе БЯ, будем называть универсальной КСУЭ (УК-СУЭ). Структура УКСУЭ обладает однородностью и универсальностью.

КСУЭ можно легко адаптировать к изменениям степени неприводимого примитивного многочлена р(х). При этом будут соответственно изменяться степени многочленов а(х), Ь(х), е(х), ч(х) и с(х). Следует отметить, что при изменении на единицу степени многочлена р(х) степени других многочленов изменятся следующим образом:

степени многочленов а(х), Ъ(х), ч(х) и с(х) - на 1;

степень многочлена е(х) - на 2.

Покажем это на примере УКСУЭ для двух случаев изменения на единицу степени многочлена р(х): при уменьшении степени и при увеличении степени.

Пример 1.

При уменьшении степени многочлена р(х) первый уровень УКСУЭ (или универсальной комбинационной схемы умножения многочленов - УКСУМ) можно не менять. При этом необходимо будет менять второй уровень УКСУЭ (или универсальной комбинационной схемы деления многочленов - УКСДМ) следующим образом:

а) если на входы подавались коэффициенты исходного многочлена р(х), начиная со старших коэффициентов, то на них необходимо подавать коэффициенты нового многочлена р(х), тоже начиная со старших коэффициентов. Т. е. «старшие» входы старой и новой схем будут одинаковыми. Аналогично меняется подсоединение выходов первого уровня УКСУЭ (УКСУМ) к входам второго уровня УКСУЭ (УКСДМ) для коэффициентов многочлена е(х).

Оставшиеся «младшие» входы старой схемы не будут задействованы, т. е. на них должен быть “0”;

б) коэффициенты нового многочлена ч(х) должны сниматься, начиная со «старших» выходов старой схемы. Оставшийся «младший» выход старой схемы будет выходом старшего коэффициента нового многочлена с(х);

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

Пример 2.

При увеличении степени многочлена р(х) первый уровень УКСУЭ (УКСУМ) можно изменять, как это показано для УКСУМ в [3]. При этом необходимо будет менять второй уровень

УКСУЭ (УКСДМ) следующим образом:

а) на входы, на которые подавались коэффициенты старого многочлена р(х), начиная со старших коэффициентов, необходимо подавать коэффициенты нового многочлена р(х), тоже начиная со старших коэффициентов. Т. е. входы старой схемы и «старшие» входы новой схемы будут одинаковыми. Для младшего коэффициента р0 нового многочлена р(х) создается дополнительный вход. Дополнительно вводятся также:

• (да-1) БЯ, на один из входов схем И которых подаются вычисленные величины Ч1, — , Чт-3, Чт-2 коэффициентов нового многочлена ч(х); на второй вход схем И подается младший коэффициент ро нового многочлена р(х); на один из входов каждого сумматора по модулю

2 БЯ подаются соответствующие вычисленные на первом уровне УКСУЭ (УКСУМ) величины е1, — , ет-3, ет-2 коэффициентов нового многочлена е(х); выходы сумматоров, на которые подаются новые величины е2, — , ет-3, ет-2, подсоединяются к соответствующим входам сумматоров, на которые подавались старые величины е0, е1,— , ет-3 коэффициентов старого многочлена е(х).

• т БЯ, с выходов которых будут сниматься величины с0, — , ст-2, ст-1 коэффициентов нового многочлена с(х); на один из входов схем И этих БЯ подается вычисленный младший коэффициент ч0 нового многочлена ч(х), выдаваемый с того выхода БЯ, который был выходом для величины ст-1 старого многочлена с(х); вторые входы схем И этих БЯ подключаются к соответствующим входам коэффициентов нового многочлена р(х); одним их входов сумматоров по модулю 2, на выходах которых снимаются величины с2, — , ст-1 коэффициентов нового многочлена с(х), являются соответствующие выходы старой схемы, с которых снимались величины с0, — , ст-2 коэффициентов старого многочлена с(х); одним их входов сумматора по модулю 2,

на выходе которого снимается величина с1 коэффициента нового многочлена с(х), является выход сумматора по модулю 2, на один из входов которого подается величина е1 коэффициента нового многочлена е(х); на один их входов сумматора по модулю 2, на выходе которого снимается величина с0 коэффициента нового многочлена с(х), подается величина е0 коэффициента

нового многочлена е(х);

б) на входы, на которые подавались т коэффициентов старого многочлена е(х), начиная со старших коэффициентов, необходимо подавать (да-1) коэффициентов нового многочлена е(х), тоже начиная со старших коэффициентов. Т. е. входы старой схемы и «старшие» входы новой схемы будут одинаковыми. Для ввода остальных коэффициентов нового многочлена е(х) создаются дополнительные БЯ, рассмотренные выше;

в) величины ч1, — , Чт-3, Чт-2 коэффициентов нового многочлена ч(х) должны сниматься с выходов старой схемы. Для величины ч0 младшего коэффициента нового многочлена ч(х) является «старший» выход старой схемы, с которого снималась величина ст-1 старшего коэффициента старого многочлена с(х).

Для фиксированного многочлена р(х) степени т и веса V КСУЭ можно упростить. В этом случае значения величин рг (0 или 1) фиксированного многочлена р(х) известны заранее (до синтеза схемы) и должны учитываться в структуре второго уровня КСУЭ (КСДМ), в которой будут отсутствовать некоторые БЯ, характерные для КСДМ. Отсутствуют те БЯ, на один из входов которых подается величинарг=0. Количество таких БЯ будет равно (т +1 -у)(т -1). Не будет также схем И. Таким образом, базовая ячейка (БЯ) второго уровня КСУЭ (КСДМ) будет состоять из одного двухвходового сумматора по модулю 2.

4. Сложность комбинационных схем умножения элементов конечного поля

Определим аппаратурную и временную сложности схем, реализующих операцию умножения элементов конечного поля 0¥(рт) предложенным выше способом.

Под аппаратурной сложностью реализации схемы будем понимать число функциональных элементов базисного набора (схем И с двумя входами, схем ИЛИ с двумя входами и схем НЕ) в схеме, реализующей заданную функцию.

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

Примем, что сложность (аппаратурная и временная) всех функциональных элементов базисного набора одинакова. Известно, что сумматор по модулю 2 можно реализовать с помощью 4-х элементов базисного набора. Время сложения в сумматоре по модулю 2 составляет 3t.

С учетом сказанного и результатов, полученных в [7, 8], имеем

1) Для аппаратурной сложности

NКСУЭ = т(10т -13) + 4,

^УКСУЭ = 5т(2т — 1) .

2) Для временной сложности

ТКСУЭ = (7т — 6> ,

ТУКСУЭ = (7т — 3> .

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

^СУЭ = т(5т — 8) + 4 + 4(т — 1)(у — 1),

Тксуэ =[3(т + V) — 8]t.

Как известно, для многих значений т существуют неприводимые над полем 0¥(рт) примитивные многочлены р(х), вес которых равен 3. В этом случае получаем нижние границы сложности

КнкФуэ = 5т2 — 4,

ТКСУЭ = (3т + ^ .

Сравнивая сложности схем реализации умножения элементов конечного поля 0¥(рт) предложенным здесь способом со сложностью схем, реализующих умножение способом, изложенным в [1], получаем:

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

2. Для данного способа умножения аппаратурная сложность КСУЭ равна аппаратурной сложности КСУЭ, реализующей умножение способом из [1], но без учета схем для вычисления величин р( 1) .

3. Для фиксированного полинома р(х) одинаковы нижние границы аппаратурной сложности. Нижняя граница временной сложности схем, реализующих данный способ умножения, равна временной сложности схем из [1].

Сложность схем, реализующих данный способ умножения, также меньше сложности матричных вычислительных устройств [9] и схем умножения по способу, предложенному в [10].

Заключение

Предложенный способ построения схем умножения элементов конечного поля GF(2m) так же, как и способ, приведенный в [1], позволяет создавать схемы, структура которых однородна и универсальна, что делает их перспективными для реализации в виде БИС. Структуру схем, синтезируемых предложенным способом, также можно легко наращивать при увеличении степени многочленов, так как схемы синтезируются из универсальных однородных элементов. В то же время сложность этих схем меньше сложностей схем, реализующих способы умножения элементов конечного поля, известные из [1].

ЛИТЕРАТУРА

1. Жуков И.А., Кубицкий В.И., Дрововозов В.И. Алгоритмы выполнения операций над элементами конечного поля GF(2m) в вычислительных устройствах // Матеріали VIII Міжнародної науково-технічноі конференції “АВІА-2007”. - Т.1. - Киев: НАУ, 2007.

2. Жуков И.А., Кубицкий В.И., Синельников А.А. Устройство для умножения элементов конечных полей GF(2m). - Патент №25491, Украина. Опубликовано 10.08.2007, Бюл. № 12, 2007 г. МПК G06F 7/49 (2007/01).

3. Кубицкий В.И. Операции над многочленами в поле GF(2) // Научный Вестник ГосНИИ “Аэронавигация”, серия Проблемы организации воздушного движения. Безопасность полетов, №7, 2007. С. 186-195.

4. Кубицкий В.И. Деление многочленов над полем GF(2) // Научный Вестник МГТУ ГА, серия Прикладная математика. Информатика, № 132 (8), 2008. С. 86-93.

5. Берлекэмп Э. Алгебраическая теория кодирования. - М.: Мир, 1971.

6. Мальцев А.И. Основы линейной алгебры. - М.: Наука, 1975.

7. Кубицкий В.И. Сложность реализации операций над многочленами в поле GF(2) // Научный Вестник ГосНИИ “Аэронавигация”, серия Проблемы организации воздушного движения. Безопасность полетов, №7, 2007. -

С. 149-155.

8. Кубицкий В.И. Сложность реализации операций над элементами конечного поля GF(2m). - Проблеми інформатизаціі та управління: Збірник наукових праць: Випуск 2 (20). - Киев: НАУ, 2007. С. 91-97.

9. Смолов В. Б., Шумилов Л. А., Зайкова Л. А. Построение матричных вычислительных устройств для выполнения операций над многочленами и элементами конечных полей GF(2m) // Электронное моделирование, 1979, № 2. С. 63-67.

10. Bartee T.C., Shneider D.I. Computations wiïh fimte fields. - Information and control, 1963, 6, - pp. 79-98.

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

MULTIPLICATION OF ELEMENTS OF FINITE FIELD GF(2M)

Kubitskiy V.I.

Operation of multiplication of elements of finite field GF(2m) with use of operations of multiplication and division of polynomials is considered. Mathematical expressions are deduced for performance of the specified operation and the approach to construction of the combinational schemes realizing these expressions is offered. Possible hardware and time complexities of realization of these schemes are defined.

Сведения об авторе

Кубицкий Валерий Иванович, 1951 г. р., окончил КИИГА (1973), начальник сектора ФГУП ГосНИИ «Аэронавигация», автор более 30 научных работ, область научных интересов - проектирование, эксплуатация, надежность и помехоустойчивость АС УВД, компьютерные системы и компоненты.

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