Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ю.В. Романец, П.А. Тимофеев - Защита информации...docx
Скачиваний:
12
Добавлен:
01.03.2025
Размер:
1.05 Mб
Скачать

Глава 9. Защита информации 227

В ЭЛЕКТРОННЫХ ПЛАТЕЖНЫХ СИСТЕМАХ 227

9.1. Принципы функционирования электронных платежных систем 228

9.2. Электронные пластиковые карты 234

9.3. Персональный идентификационный номер 240

9.4. Обеспечение безопасности систем POS 243

9.5. Обеспечение безопасности банкоматов 247

9.6. Универсальная электронная платежная система UEPS 253

9.7. Обеспечение безопасности электронных платежей через сеть Internet 263

Основные методы защиты информации 264

Особенности функционирования протокола SET 265

Технологические решения для электронной торговли 272

Полностью контролируемые компьютерные системы 274

Частично контролируемые компьютерные системы 278

10.2. Основные элементы и средства защиты от несанкционированного доступа 279

Устройства криптографической защиты данных 281

серии КРИПТОН 281

Устройства для работы со смарт-картами 282

Программные эмуляторы функций шифрования устройств КРИПТОН 284

10.3. Системы защиты информации от несанкционированного доступа 287

Система криптографической защиты информации от НСД КРИПТОН-ВЕТО 287

4- 288

Комплекс КРИПТОН-ЗАМОК для ограничения доступа к компьютеру 292

Система защиты конфиденциальной информации 295

Secret Disk 295

Система защиты данных Crypton Sigma 296

11.1. Абонентское шифрование и электронная цифровая подпись 303

Программы АШ и ЭЦП для MS-DOS 303

пароль; 303

Программа электронной цифровой подписи Crypton Sign. 305

11.2. Пакетное шифрование 322

11.3. Защита компонентов ЛВС от НСД Защита абонентских пунктов 327

11.4. Технология работы с ключами 334

11.5. Программные продукты ЗАСТАВА фирмы "ЭЛВИС+" для защиты корпоративной сети 336

12.2. Основные принципы обеспечения безопасности платежной системы 346

ЭЛЕМЕНТЫ ТЕОРИИ ЧИСЕЛ Модулярная арифметика 358

Алгоритм Евклида для нахождения наибольшего общего делителя 361

Вычисление обратных величин 363

Расширенный алгоритм Евклида 369

(щ, и2, и3), 369

Китайская теорема об остатках 370

Квадратичные вычеты 372

Вычисления в конечных полях 373

^ Р = q . 373

Список литературы 379

Оглавление 386

Если НОД (а, п)=1, тогда существует обратное число а-1, 0<а"1<п, такое, что

а * а"1 И (mod п).

Действительно, a*i(modn) является перестановкой 0,1,...,п-1, по­этому существует i, такое, что

а * i =1(mod п).

Как уже отмечалось, набор целых чисел от 0 до п-1 называют полным набором вычетов по модулю п. Это означает, что для любого целого числа а(а>0) его вычет r=a(modn)-3To некоторое целое число в интервале от 0 до п-1.

Выделим из полного набора вычетов подмножество вычетов, взаимно простых с п. Такое подмножество называют приведен­ным набором вычетов.

Пример. Пусть модуль п =11 — простое число. Полный набор вычетов по мо­дулю 11

{0,1, 2 10}.

При формировании приведенного набора вычетов из них удаляется только один элемент-0. Приведенный набор вычетов по модулю 11 имеет 11-1=10 эле­ментов.

Вообще приведенный набор вычетов по модулю простого чис­ла п имеет п-1 элементов.

Пример. Пусть модуль п=10. Полный набор вычетов по модулю п=10

{0,1, 2, 3, 4, 5, 6, 7, 8, 9}.

Из них только 1, 3, 7, 9 не имеют общего сомножителя с числом 10. Поэтому приве­денный набор вычетов по модулю 10 равен {1, 3, 7, 9}. При формировании этого приведенного набора были исключены элементы:

0 (1 элемент), кратные 2 (4 элемента), кратные 5 (1 элемент),

т.е. всего шесть элементов. Вычитая их из 10, получаем 10-1-4-1=4, т.е. четыре элемента в приведенном наборе.

Для произведения простых чисел p*q=n приведенный набор вычетов имеет (р—1)(q—1) элементов. При n = p*q=2*5=10 число элементов в приведенном наборе

(p-1)(q-1) = (2-1)(5-1) = 4.

Пример. Приведенный набор вычетов по модулю 27= З3 имеет 18 элементов:

{1, 2, 4, 5, 7, 8, 10, 11, 13, 14, 16, 17, 19, 20, 22, 23, 25, 26}.

Из полного набора вычетов исключены элементы, кратные 3 (всего девять элементов).

Для модуля в виде простой степени пг приведенный набор вычетов имеет п' "1(п-1) элементов.

При п = 3, г=3 получаем 35"'(3-1)=32*2=18.

Функция Эйлера ф(п) характеризует число элементов в при­веденном наборе вычетов (табл. П.1).

Таблица П.1

Модуль п

Функция 1,1 (п)

п - простое

п-1

п2

п (п — 1)

п'

пг~1(п -1)

р * q (р, q - простые)

(p-1)(q -1)

г

fjpj®' (Pi - простые)

ПРгвМ(Р:-1)

1=1

Иначе говоря, функция ср(п)-это количество положительных целых, меньших п, которые взаимно просты с п [123].

Малая теорема Ферма: если п - простое и НОД (а, п)=1, то

an_1Hl(mod п).

Согласно обобщению Эйлером малой теоремы Ферма имеем: если НОД(а,п)=1, то

a^lOnod п).

Если п-простое число, то предыдущий результат, учитывая, что ф(п)=п-1, приводится к виду (малой теоремы Ферма)

а"-1 = 1 (mod л).

Основные способы нахождения обратных величин

a~1 = 1(mod п).

  1. Проверить поочередно значения 1,2,...,п-1, пока не будет найден a"1sl(modn), такой, что a*a_1(modn)=1.

  2. Если известна функция Эйлера ф(п), то можно вычислить

a"1 (mod n)ea"(l°"1(mod п),

используя алгоритм быстрого возведения в степень.

  1. Если функция Эйлера ф(п) не известна, можно использо­вать расширенный алгоритм Евклида.

Проиллюстрируем эти способы на числовых примерах. 1. Поочередная проверка значений 1,2,...,п-1, пока не будет найден x=a"1(modn), такой что a*x=1(modn).

Пусть п=7, а=5. Требуется найти x=a"1(modn).

a*x=1(modn) или 5*x = 1(mod7). п-1=7-1 = 6.

Получаем x=5"1(mod7)=3. Результаты проверки сведены в табл. П.2.

Таблица П.2

x

5»х

5 • х (mod 7)

1

5

5

2

10

3

3

15

1

4

20

6

5

25

4

6

30

2

Алгоритм Евклида можно обобщить способом, который имеет большое практическое значение. При этом способе во время вы­числения НОД(а,Ь) можно попутно вычислить такие целые числа Ui и и2, что

а * щ + b * u2 = НОД (а, Ь).

Это обобщение (расширение) алгоритма Евклида удобно опи­сать, используя векторные обозначения [45].

Расширенный алгоритм Евклида

При заданных неотрицательных целых числах а и b этот ал­горитм определяет вектор

(Ui, u2, u3),

такой, что

а * Ui + b * u2 = u3 = НОД (a, b).

В процессе вычисления используются вспомогательные век­торы ^Лг.Уз), (t1.t2.t3). Действия с векторами производятся таким образом, что в течение всего процесса вычисления выполняются соотношения

а * ti + b * t2 = t3, a * Ui + b * u2 = u3, a * Vi + b * v2 = v3.

Для вычисления обратной величины a~1(modn) используется частный режим работы расширенного алгоритма Евклида, при ко­тором b=n, НОД(а,п)=1, и этот алгоритм определяет вектор

(щ, и2, и3),

такой, что

u3 = 1, а * Ui + п * и2 = НОД (а, п) = 1, (а * Ui + п * u2) mod п = а * u^mod п) = 1, a~1(mod п) = u^mod п).

Шаги алгоритма:

    1. Начальная установка. Установить (u1t u2, u3):=(0,1, п),

(Vi, v2, v3): = (1, 0, a).

    1. u3 = 1?. Если u3 = 1, то алгоритм заканчивается.

    2. Разделить, вычесть. Установить q:=[u3/v3]. Затем установить

(ti, t2, t3): = (u1f u2, u3) - (v-i, v2, v3) * q, (u1t u2, u3): = (Vi, v2, v3), (Vi, v2, v3): = (t,, t2, t3). Возвратиться к шагу 2.

Пример.Заданы модуль п=23 и число а = 5. Найти обратное число a"1 (mod23), т.е. x=5"1(mod23).

Используя расширенный алгоритм Евклида, выполним вычисления, записы­вая результаты отдельных шагов в табл. П.З.

Таблица П.З

q

"1

"2

U2

V,

V2

V3

— .

0

1

п = 23

1

0

a = 5

4

1

0

5

-4

1

3

1

-4

1

3

5

-1

2

1

5

-1

2

-9

2

1

-

-9

2

1

При и3 = 1, и, =—9, и2= 2

(а * u, + п * и2) mod п = (5 * (-9) + 23 * 2) mod 23 = = 5* (-9) mod 23=1, a"' (mod п) = 5"' (mod 23) = (-9) mod 23 = (-9 + 23) mod 23 = 14. Итак, x = 5"' (mod 23) s14 (mod 23) =14.

Для решения более сложных сравнений

a*x = b(modn), т.е. b*1, х=? используется следующий прием. Сначала решают сравнение

а * у И (mod п),

т.е. определяют

у = a"1(mod п),

а затем находят

х = a~1b (mod п) = у * b (mod n). Пример. Найти х для сравнения

5 * х s 9 (mod 23).

Сначала решаем сравнение

5 * у И (mod 23). Получаем у = 5"'(mod 23) =14. Затем находим

х = 5"' * 9 (mod 23) =14 * 9 (mod 23) =126 (mod 23) е 11 (mod 23),

х = 11.

Китайская теорема об остатках

Любое неотрицательное целое число, не превосходящее про­изведения модулей, можно однозначно восстановить, если извест­ны его вычеты по этим модулям. Этот результат был известен еще в древнем Китае и носит название китайской теоремы об остат­ках. Теорема была предложена китайским математиком первого века Сун Це. Китайская теорема об остатках является мощным криптографическим инструментом.

Китайская теорема об остатках формулируется следующим образом.

Пусть m-i, m2,..., mt-модули (целые числа, большие 1), кото­рые являются попарно взаимно простыми, т.е. НОД(т„ rrij)=1 при i * j. Пусть a-i, а2,..., at-тоже целые числа, 0 < а,< т,. Пусть М=т12*...*т1-произведение всех гд. Обозначим Mi = M/mi.

И пусть Ni будет обратным к Mj(modmi), i=1,2,...,t, т.е. Mj*NjE= И (mod mi).

Так как НОД(М*,гд)=1, то обратный элемент Nj существует и легко находится из алгоритма Евклида из соотношения

Mj * Nj +mi * П| =1, i = 1, 2, ..., t.

Сравнения x=aj(modmj), i=1,2,...,t, имеют в интервале [О, М-1] единственное общее решение

i

х =Eai * Nj * Mj (mod M).

i=1

Рассмотрим частный случай. Пусть М=т!*т2, где ггц, т2- взаимно простые числа. Тогда для произвольных целых a^mi и а22 существует единственное число х, х<М, такое, что

xsa^modm!) и xsa2(modm2).

Чтобы найти значение решения х, сначала используют алго­ритм Евклида для вычисления значений Ni и N2, таких, что

N-i * Мт = 1 (mod mO и N2 * М2 = 1 (mod m2).

. .. М m/m, М

Здесь М^—= — -=m2; М2= — = пн

т1 т1 т2

Затем вычисляют значение

х = (ai * N-i * Mi + а2 * N2 * M2)(mod М).

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

{возврат хе[0, М -1], такого что xmod mi = ai(1<i<t)}

begin

for i: = 1 to t do

Nj: = inv(Mj mod mj, mj); x: = 0;

for i: = 1 to t do x : = [x + Mj * Nj * aj] mod n; crt: = x {crt - результат}

end

Пример. Решить систему из двух сравнений

xsl(mod 5), х ее 10 (mod 11)

а нвйти общее решение х по модулю 55. Здесь mi=5; nrii=11; M=m1*m2=5*11=55; ai=1; a2=10; м1=МЛп12=11; М2=МЛп21=5.

Найдем значения N, и N2, обратные к М, и М2 соответственно по modm, и ■nod m2:

М, * N, =1 (mod m,), 11 * N, И (mod 5) => N, =1, M2 * N2 si (mod m2), 5 * N2 (mod 11) => N2 = 9. Вычисляем общее значение

x = (a,M,N, + a2M2N2)(mod N) = (1 *11 *1 +10 * 5 * 9)(mod 55) = = (11 + 450)(mod 55) = 461 (mod 55) = 21 (mod 55).

Итак, x=21(mod 55).

Квадратичные вычеты

Рассмотрим некоторое простое р>2 и число а<р. Если число а сравнимо с квадратом некоторого числа х по модулю р, т.е. вы­полняется сравнение x2sa(modp), тогда а называют квадратич­ным вычетом по модулю р. В противном случае а называют квад­ратичным невычетом по модулю р.

Если а-квадратичный вычет, сравнение x2 = a(modp) имеет два решения: +х и -х, т.е. а имеет два квадратных корня по мо­дулю р.

Все квадратичные вычеты находят возведением в квадрат элементов 1,2,3,(р—1)/2.

Не все значения а<р являются квадратичными вычетами. На­пример, при р=7 квадратичные вычеты это 1, 2. 4:

12 = 1 = 1 (mod 7), 22 = 4 = 4(mod 7), 32 = 9 = 2(mod 7), 42 = 16 = 2(mod 7), 52 = 25 = 4(mod 7), б2 = 36=1 (mod 7).

Заметим, что каждый квадратичный вычет появляется в этом списке дважды. Не существует никаких значений х, которые удов­летворяли бы любому из следующих уравнений:

x2 = 3(mod 7),

х2 = 5(mod 7),

x2 = 6(mod 7).

Числа 3, 5 и 6 - квадратичные невычеты по модулю 7. Можно доказать, что существует точно (р-1)/2 квадратичных вычетов по модулю р и (р—1)/2 квадратичных невычетов по модулю р.

Если а-квадратичный вычет по модулю р, то а имеет точно два квадратных корня: один корень между 0 и (р-1)/2, другой ко­рень между (р-1)/2 и (р-1).

Один из этих квадратных корней также является квадратич­ным вычетом по модулю р; он называется главным квадратным корнем.

Вычисление квадратных корней при р=7 представлено в табл.П.4.

Таблица П.4

х2 я a (mod 7)

Корни

Xl

*2

12э i(mod 7)

+1

-1 = -1 + 7 = 6

22 = 4(mod 7)

+2

-2 = -2 + 7 = 5

З2 a 2(mod 7)

+3

-3 = -3 + 7 = 4

Если п - произведение двух простых р и q, т.е. n=p*q, то су­ществуют точно

(p-1)(q-1)/4

квадратичных вычетов по модулю п, взаимно простых с п. Напри­мер, по модулю 35(р=5, q=7, л = 5*7=35) существуют (5 - 7)(7 -1)_4*6_q 4 4

квадратичных вычетов: 1, 4, 9,11,16, 29, взаимно простых с 35.

Вычисления в конечных полях

Поле F есть множество, на котором определены операции сложения и умножения, удовлетворяющие требованиям: ассоциа­тивности, коммутативности, дистрибутивности, существования ад­дитивного 0 и мультипликативной 1, аддитивных обратных и муль­типликативных обратных для всех элементов за исключением 0.

Конечное поле F(p) с конечным числом р элементов играет важную роль в криптографии. В общем случае число элементов

и. -

^ Р = q .

где q-некоторое простое число и п>1. Такие конечные поля назы­вают полями Галуа и обозначают GF(q") или GF(q) при п=1. (Эва- рист Галуа-французский математик начала XIX века.) Многие криптосистемы базируются на полях Галуа GF(q), где q-большое простое число. 360

Пример. Поле Галуа GF(5) имеет элементы 0,1, 2, 3, 4 и описывается табли­цами сложения и умножения (табл. П.5):

Таблица П.5

» +

0

1

2

3

4

" 0

0

1 .

2

3

4

1

1

2

3

4

0

' 2

2

3

4

0

1

3

3

4

0

1

2

4

4

0

1

2

3

x

1

2

3

4

1

1

2

3

4

2

2

4

1

3

3

3

1

4

2

4

4

3

2

1

Если q-простое число, то число ae[1,q-1] является взаимно Простым с q, и поэтому обратный элемент а"1 имеет единственное ^значение. Тем самым однозначно определяется операция де­ления.

Обозначим через GF*(q) множество всех ненулевых элемен­тов поля GF(q). Некоторый элемент g из GF*(q) называют обра­зующим или порождающим элементом GF*(q), если для всех а из ;GF*(q) найдется такое целое х, что gx=amodq. Всего имеется *<p(q-1) образующих элементов д. Число х называют дискретным логарифмом элемента а по основанию g и модулю q. Вычисление •дискретных логарифмов (когда заданы д, а и q) примерно такая же труднорешаемая задача, как и разложение на множители.

Еще один тип поля Галуа, используемый в криптографии, ос­новывается на арифметике по модулю неприводимых многочленов степени п; чьи коэффициенты-целые числа по модулю q, где q- простое. Эти поля Галуа обозначают как GF(qn). Они имеют эле­менты, которые описываются многочленами степени не выше (п-1) в форме

а (х) = an_iXn"1 +... + aiX + а0.

Каждый элемент а(Х) является вычетом по модулю р(Х), где р(Х) - неприводимый многочлен степени п (т.е. р(Х) нельзя разло­жить на сомножители-многочлены степени меньше п).

Арифметические действия над коэффициентами ai выполня­ются по модулю q, а наивысшая степень X равна (п-1), так как выполняется приведение по модулю многочлена р(Х), имеющего старшую степень п.

Особый интерес представляют поля GF(2n). Здесь коэффици­ентами а, являются 0 и 1. Поэтому многочлен а(Х) степени не выше (п-1) можно представить как вектор из п двоичных цифр:

an-ian-2 ■•• а^о.

Каждый из n-битовых векторов соответствует конкретному элемен­ту поля GF(2").

Например, поле Галуа GF(23) имеет элементы:

Многочлены Двоичная форма

  1. ООО

  2. 001 х 010 х +1 011 х2 100 х2 + 1 101 х2+х 110 х2 + х +1 111

Организация вычислений в полях Галуа предполагает знание некоторых свойств многочленов и их корней в двоичном поле GF(2). Кратко приведем некоторые из них:

Свойство 1. Ненулевые элементы поля GF(2n) являются кор­нями обобщенного многочлена X2 "1+1.

Свойство 2. Каждый многочлен р(Х) степени п, неприводимый

над полем GF(2), является делителем двучлена X2 ~1+1, и каждый

делитель двучлена X2 ~1+1, неприводимый над полем GF(2), имеет степень, равную п и менее.

Свойство 3. Все элементы поля GF(2n) можно получить как со­вокупность остатков от деления 100...00 на неприводимый много­член р(Х), входящий в разложение двучлена (X2 ~1+1). Эти остатки-

корни двучлена (X2 ~1+1), т.е. обращают его в нуль. Число остатков равно (2п-1).

Свойство 4. В поле GF(2n) существует примитивный элемент а, такой, что каждый ненулевой элемент поля GF(2n) может быть представлен как некоторая степень а, т.е. мультипликативная группа GF(2n) является циклической.

Пример. Определение элементов а, поля GF(24). Согласно свойству 1 нену­левые элементы поля GF(24) являются корнями обобщенного двучлена (X2 ""+1) = (Х15+1). Двучлен (Х,5+1) можно представить в виде произведения непри­водимых многочленов - сомножителей:

(X15 +1) = Р(Х') * Р(Х2) * Р,(Х4) * Р24) * Р34),

где

P(X1) = (X +1), Р(Х2) = X2 + X +1, P,(X4) = X4 + X +1, Р24) = Х43+1, Рз(Х4) = Х432 + Х+1.

В соответствии со свойством 3 вычислим элементы а, поля GF(24) как сово­купность остатков отделения 100...00 на неприводимый многочлен Pi(X4)=X4+X+1.

Процедура определения остатков Делят на Р,(Х4)=Х4+Х+1<-»10011 единицу с возрастающим числом нулей, т.е.

делят одночлены X', где j = 0,1,2,3 на многочлен (Х4+Х+1). Степени одночленов

Х°, X1, X2, X3 меньше степени многочлена Pi(X4), поэтому первые четыре остатка от деления на Р,(X4) равны делимым, т.е. одночленам X , X1, X2, Х°. Для одночлена X4 <->10000 получаем остаток

000011 00 1 1 001 ll 0 0 1 1 X4.

Для одночлена X5 <->100000 получаем остаток

Ш1 0000011 00 1 1 W1 0 01 1 I

0 1 1 0 о- X5.

Схема вычисления остатков:

00000000000000 0| 10011 W1 0011 I

Х4<-> m 0 0 1 1 0 0 0 10 0 1 1 X7 д\ 10 110 W 10 0 11 Х8^ ж 0 1010 0 ® ' 1 00 1"1 Х10^ m 0 1 1 1 0 0

® "looli

X12 ф 11110

"16011"

X13 <-> д\ 11010 ® 100 11 X14 д\ 10010

® Tb'oTi

Х15^ 0 0 0 1 (= Х°).

Вычисленные остатки и нулевые элементы ао-аи поля Галуа GF(24) сведены в табл. П. 6.

Таблица П.6

X'

Остаток

ОС,

Х°

000 1

а0

X'

00 10

а(

X2

0 100

аг

X3

1000

аз

V4

0011

С£4

х°

0 110

а5

X6

1100

X7

10 11

0С7

Xs

0 10 1

а ь

X9

10 10

а9

X10

0 111

а)0

X"

1110

- an

X12

1111

ai2

X13

110 1

an

X14

1 001

ак

Поле Галуа GF(24) построено как поле многочленов с коэффициентами 0 и 1 по модулю неприводимого многочлена:

Р(Х4)=Х4 + Х+1<->100 11.

В поле Галуа GF(2n) определены четыре алгебраические опе­рации. Операции сложения и вычитания выполняются как опера­ции поразрядного сложения по модулю 2; операция умножения

элементов поля выполняется как умножение соответствующих многочленов с приведением по модулю неприводимого многочле­на Р(Х), т.е. многочлена, по модулю которого построены элементы поля GF(2n).

Пример. а5=0110, а6=1100, а5+аб=1010, так как

m 0 1 1 0 Ш 1 100 10 10.

Пример. cti4 =1001,

ан ■ ан= a2H= сиз no mod Р,(Х4) <->1 0 0 1 1.

1001 /Т\ 1 000 00 11 1 00 1 1

1001 Ш1 001 1 I

ш 1001 an «-» 110 1.

100 1

1 00000 1.

Чтобы выполнить деление элемента b на элемент а в поле GF(2n) по модулю Р(Х), сначала находят обратный элемент а-1 (mod Р(Х)), а затем вычисляют

b * а"1 (mod Р(Х)).

Каждый двоичный вектор длиной п, исключая 0, является вза­имно простым с неприводимым многочленом Р(Х) независимо от значения Р(Х). Поэтому число вычетов, взаимно простых с Р(Х), равно ф(Р(Х))=2п-1 (расширение функции Эйлера для многочле­нов). Поэтому

а-1 _ ач>(Р(х))-1 mQd р(Х) _ a2n-2mod р(Х)

Пример. Пусть а=100 и Р(Х)=1011 в поле GF(23).

а"1 =10023"2 (mod 1011) =1006 (mod 1011) =1002 * ЮО4 (mod 1011).

ЮО2 (mod 1011) =10000 ©10110=110 1 0 0 0 0! 1011 или W 10 11 !

1.1.0

ЮО4 (mod 1011) =1102 (mod 1011) = 010

1 1 0 1 1 0

110 0 10 1 00

или 0 0 0 0

10 100

10 11

1002*1004 (mod 1011) =110* 010 (mod 1011) =1100 (mod 1011) =111

ffi1 100 w 10 11

111

Итак, a"1=111.

11 о 1 о 1 од 10 11

10 11 I

Проверка: a=100, a"1=111, P(X)=1011. a * a'^110 *100 =11100.

дч 1 1 1 0 ol 1 О 1 1

01 1 I 01 о Ш1 01 1 .00.1

т.е. а * a~1(mod 1011)=1.

Достоинства вычислений в поле GF(2n):

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

  2. Сложение и вычитание элементов поля GF(2n) не требует деления на модуль.

  3. Алгоритмы вычислений в поле GF(2n) допускают парал­лельную реализацию.

  4. Для поля GF(2n) обычно применяют в качестве модуля трех­член Р(Хп)=Хп+Х+1.

Длинная строка нулей между коэффициентами при X" и X .обеспечивает более простую реализацию быстрого умножения (с приведением по модулю). Трехчлен Р(ХП) должен быть неприво­димым и примитивным.

Трехчлен Р(Хп)=Хп+Х+1 является примитивным для следую­щих значений п(п<1000):

1, 3, 4, 6, 9, 15, 22, 28, 30, 46, 60, 63, 127, 153, 172, 303, 471, 532, 865, 900.

Список литературы