Научная статья на тему 'Алгоритм формирования остатков в расширенных полях'

Алгоритм формирования остатков в расширенных полях Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Петренко В.И., Кузьминов Ю.В.

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Петренко В.И., Кузьминов Ю.В.

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

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

INFORMATION SOCIETY TECHNOLOGIES

His

В E S E A R >: II

Алгоритм формирования остатков в расширенных полях

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

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

Петренко В.И., Кузьминов Ю.В.,

Ставропольский государственный университет

Большинство современных алгоритмов, используемых в теории кодирования, криптографических приложениях, устройствах цифровой обработки сигналов и устройствах обмена цифровой информацией используют процедуры вычисления остатков в конечных полях [1]. Однако, если для простых полей Галуа GF(р) существует ряд достаточно эффективных способов формирования остатков, то вычисление остатков в расширенных полях GF(рn) в основном сводится к процедуре последовательного деления, что в случае больших массивов данных приводит к значительным временным затратам. Кроме того, известные алгоритмы формирования остатков в расширенных полях GF(рn) реализованы для частных случаев модуля p и расширения поля степени п и не позволяют выполнять вычисления для произвольных значений p и п. В связи с этим для большинства приложений, использующих теорию конечных полей, являются актуальными вопросами построения алгоритмов формирования остатков для расширенных полей с произвольными значениями p и п.

Целью нашего исследования является разработка алгоритма формирования остатков в расширенных полях GF(рП) с произвольными значениями p и п.

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

Пусть A(x) = anx" + an-1x"-1 +.... + a1x + a0 и F( x) = bkxk + bk_1xk-1 + .... + b,x + b0 —полиномы над полем GF(рn), причем к<п. Наибольший практический интерес представляет случай, когда используемый для получения остатка от полинома А(х) по двойному модулю (F(x), р) полином F(x) является неприводимым над полем GF(рn) и нормированным, то есть приведенным к виду F(x) = xk + bk_1xk-1 +.... + b1x + b0.

Процесс формирования остатка начинается с вычисления частичного остатка младшей степени полинома A(x) по двойному модулю (F(x), р) с последующим увеличением степени на один разряд. Очевидно, что при всех значениях степени полинома F(x), меньших k, частичным остатком будет являться значение самого делимого.

Рассмотрим процесс формирования частичных остатков при достижении степенью полинома A(x) значения k.

Пусть с1 — коэффициенты при степенях частичного остатка, полученного по завершении k-й операции. В общем виде данный частичный остаток R4(x) можно представить выражением:

R( x) = Ck -I*" + Ck-2xk-2 + ■■■ ■ + C1X + C0 (1)

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

R'( x) =(ck-1xk-1 + ck-2xk-2 + cx + c0) x = (2) = c. ,xk +c. 2xk-1 +... + c,x2 + c0x.

Residuals formation algorithm in expanded fields

Petrenko V. I., Kuzminov Yu.V.,

Stavropol state university

Abstract

Now the existing algorithms used in the coding theory, cryptography applications, devices of digital signal processing and devices of an exchange of digital information use procedures of computation of residuals in finite fields. Computation of residuals in the expanded GF (pn) fields is generally reduced to procedure of sequential division that in case of data bulks leads to the considerable time expenditure. Besides, known algorithms of formation of residuals in the expanded GF (pn) fields are implemented for special cases of the module p and extension of a field of a level of n and don't allow to execute computation for arbitrary values of p and n. In this regard for the majority of the applications using the theory of finite fields, are topical issues of creation of algorithms of formation of residuals for expanded fields with arbitrary values of p and n. The purpose of article is development of algorithm of formation of residuals in the expanded GF (pn) fields with arbitrary values of p and n.

Keywords: algorithm, expanded fields, coding theory, cryptography, digital signal processing.

High technologies

in Earth space research —

№ 1-2012 27

His

II K К Б А И е II

Полученное в (2) выражение служит делимым для вычисления частичного остатка от (к+1)-й степени полинома А(х). Для осуществления указанной операции полином Г[х) необходимо умножить на коэффициент при к-й степени частичного остатка:

F * (.г) = c^F(x) = + ■■■■ + V + Ь„) =

[3]

Далее выражение (3) необходимо вычесть из делимого (2): /?'(д')-/''*(д') = ((.',_,.v' +с,_2хы +...++ <ус) - =

= ct_lxl +...+q jr + с^х - с,, .y' — t'j .¡л'1—... — =

= .v'"1(c1., -t't-A^J+^ic,., -Ci_A_,)+...4-.i(t'0-e^pHfcA')-

(4)

Значения выражений в скобках по сути являются коэффициентами с при степенях частичного остатка R (х) в выражении (1).

Вышеуказанные операции вычисления частичных остатков производятся для каждой степени полинома А(х), после чего каждый полученный частичный остаток от степени полинома А(х) умножается но коэффициент при донной степени. Результаты умножения суммируются по модулю р, а результат суммирования представляет собой остаток от полинома А[х) по двойному модулю |F(x), р).

В общем виде остаток R(x) от полинома А[х) над полем GF(p") по двойному модулю (Г(х), р) можно записать в виде

(5)

ТЕХНОЛОГИИ ИНФОРМАЦИОННОГО ОБЩЕСТВА

схема устройства формирования остатка па двойному модулю, на рисунке 2 - схема блока формирования частичных остатков, на рисунке 3 - схема блока формирования коэффициентов.

Ju

1 <Г-|Г- 1 1

F t fcp i 4

v

Bf

v\

3 S- 3 /1-

1- Si-

Таким образом, выражение (4) представляет собой обобщенное правило формирования частичных остатков от произвольного полинома над полем СР(р") по двойному модулю

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

1. Вычисляется частичный остаток от младшей степени полинома.

2. Полученный частичный остаток умножается на коэффициент при этой же степени полинома.

3. Результат умножения накапливается в суммирующем устройстве.

4. Степень сформированного частичного остатка увеличивается на один разряд.

5. От полученного выражения также вычисляется частичный остаток, с которым производятся операции согласно пунктов 2-4.

6. По завершении п-й операции на выходе суммирующего устройства формируется остаток от исходного полинома над полем СР[р") по двойному модулю.

Устройство, реализующее предложенный алгоритм представлено на рисунках ]-3 [2]. На рисунке ] представлена

I

Рис. 1. Устройство формирования остатка по двойному модулю: 1 - блок формирования частичных остатков;

2 - умножитель по модулю, 3-сумматор по модулю

Устройство формирования остатка по двойному модулю состоит из (п+1) последовательно соединенных блоков 1 формирования частичных остатков, (л+1) умножителей 2 по модулю и п сумматоров 3 по модулю [см, рис. I).

Первый вход первого блока 1 формирования частичных остатков служит для записи кода «1 », являющегося кодом начала операции, на первый вход каждого из последующих блоков 1 формирования частичных остатков подаются выходы разрядов предыдущего блока 1 формирования частичных остатков со сдвигом на один разряд в сторону старшего. Второй вход каждого блока 1 формирования частичных остатков служит для записи кода модуля р, поступающего со входа 5 устройства. На третий вход каждого блока 1 формирования частичных остатков подаются коэффициенты полинома модуля. На третий вход каждого умножителя 2 по модулю подается код модуля р со входа 5 устройства. На третий вход каждого сумматора 3 по модулю подается код модуля р со входа 5 устройства. Выход п-го сумматора является выходом устройства.

wv

Рис. 2. Блок формирования частичных остатков

Наукоёмкие технологии в космических исследованиях Земли № 1-2012

His

it i: s к л « с и

INFORMATION SOCIETY TECHNOLOGIES

Блок 1 формирования частичных остатков [см. рис. 2) содержит ic блоков 7 формирования коэффициентов, на первые входы которых подается коэффициент при (fc-1 }-й степени частичного остатка, полученного на предыдущем шаге.

На второй вход т-го блока 7 формирования коэффициентов подается коэффициент при (ш-2)-й степени частичного остатка, полученного на предыдущем шоге, причем т-2,.,,,к, второй вход первого блока 7 формирования коэффициентов отключен.

На третий вход г-го блока 7 формирования коэффициентов подается коэффициент при (г-))-й степени полинома модуля, поступающий со входа 4 устройства, причем r=l,...,Jfc. Выход г-го блока 7 формирования коэффициентов представляет коэффициент при (г-1 )-й степени частичного остатка. Блок 7 формирования коэффициентов (см. рис. 3) содержит последовательно соединенные умножитель 8 по модулю, вычитатель 9 по модулю и сумматор ] 0 по модулю.

Устройство работает следующим образом. В исходном состоянии на вход 4 поданы коэффициенты полинома модуля Р(х), на вход 5 устройства подон код модуля р. Входы 4 и 5 определяют двойной модуль (Р(х), р), по которому формируется остаток от полинома А(х}. Коэффициенты данного полинома со входо 6 устройства поданы но вторые входы соответствующих умножителей 2 по модулю и опредепяют значение частичного остатка от соответствующей степени полинома А{х), которое поступит в сумматор 3 по модулю.

Процесс формирования остатка начинается с подачи на первый вход первого блока 1 кода число «1». В блоке 1 формирования частичных остатков данный код поступает на второй вход второго блока 7 формирования коэффициентов.

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

Полученное значение коэффициента с выхода сумматора 10 по модулю поступает на выход блока 7 формирования коэффициентов, после чего вместе со значениями коэффициентов, сформированными в остальных блоках 7 формирования коэффициентов, поступает на выход блока 1 формирования частичных остатков. С выхода блока 1 формирования частичных остатков значения коэффициентов поступают на вход последующего блока 1 формирования частичных остатков со сдвигом на один разряд в сторону старшего, где с ними осуществляются все вышеуказанные операции, а также на вход умножителя 2 по модулю. В умножителе 2 по модулю значения коэффициентов частичного остатка умножаются на значение коэффициента при степени полинома А[х}, от которой вычисляется остаток (на вход i-ro умножителя 2 по модулю подается значение коэффициента при (/-1)-й степени полинома А[х), где 1=1,...,п) в соответствии с модулем р, поступающим со входа 5 устройства. С выхода умножителя 2 по модулю полученные значения поступают на вход сумматора 3 по модулю, где суммируются со значениями, полученными на предыдущем шаге, в соответствии с модулем р, поступающим со входа 5 устройства. Значения коэффициентов, полученные но выходе n-го сумматора 3 по модулю, являются коэффициентами остатка от полинома А[х) по двойному модулю (F(x), р).

Таким образом, предложенный алгоритм позволяет формировать остатки в расширенных полях GF[p") с произвольными значениями р и п от полинома А{х) по двойному модулю (F[x), р).

Литература

1. Лидл Р., Нидеррайтер Г. Конечные поля. - М.: Наука, ) 98 1.

2. Петренко В.И., Кузьминов Ю.В. Устройство для формирования остатка по двойному модулю. Патент РФ №2299462. Бюллетень №14 от 20.05.07.

High technologies in Earth space research № 1-2012

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