Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория чисел (расчётка).doc
Скачиваний:
125
Добавлен:
16.12.2018
Размер:
870.91 Кб
Скачать
    1. Квадратичные вычеты

Рассмотрим некотрое простое p < q и число a < p. Если число а сравнимо с квадратом некоторого числа х по модулю p, т.е. выполняется сравнение х2  а (mod p), тогда а называют квадратичным вычетом по модулю p. В противном случае а называют квадратичным невычетом по модулю p.

Если а – квадратичный вычет, сравнение х2  а (mod p) имеет два решения: +х и –х, т.е. а имеет два квадратных корня по модулю р.

Все квадратичные вычеты находят возведением в квадрат элементов 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),

62 = 36  1 (mod 7).

Каждый квадратичный вычет появляется в этом списке дважды.

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

х2  3 (mod 7),

х2  5 (mod 7),

х2  6 (mod 7).

Числа 3, 5 и 6 – квадратичные невычеты по модулю 7.

Можно доказать, что существует точно (р – 1) / 2 квадратичных вычетов по модулю р и (р – 1) / 2 квадратичных невычетов по модулю р.

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

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

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

Таблица 1.7.1 Вычисление квадратных корней при р = 7

х2  а (mod 7)

Корни

х 1

х 2

12  1 (mod 7)

22  4 (mod 7)

32  2 (mod 7)

+1

+2

+3

-1 = -1 + 7 = 6

-2 = -2 + 7 = 5

-3 = -3 + 7 = 4

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

(p – 1) • (q – 1) / 4

квадратичных вычетов по модулю n, взаимно простых n.

Пример. По модулю 35 (р = 5, q = 7, n = 5 • 7 = 35) существуют

(5 – 1) • (7 – 1) 4 • 6

= = 6

4 4

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

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

Поле F есть множество, на котором определены операции сложения и умножения, удовлетворяющие требованиям:

  • ассоциативности,

  • коммутативности,

  • дистрибутивности,

  • существования аддитивного 0,

  • существования мультипликативной 1,

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

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

В общем случае число элементов р = q n, где q – некотрое простое число и n  1.

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

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

Таблица 1.8.1 – сложение в поле Галуа GF(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

Таблица 1.8.2 – умножение в поле Галуа GF(5)

×

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 – простое число, то число а  [1, q – 1] является взаимно простым с q, и поэтому обратный элемент а –1 имеет единственное значение. Тем самым обнозначно определяется операция деления.

Обозначим через GF*(q) множество ненулевых элементов поля GF(q). Некоторый элемент g из GF*(q) называют образующим или порождающим элементом GF*(q), если для всех а из GF*(q) найдется такое целое х, что g x = a mod q. Всего имеется (q – 1) образующих элементов g. Число х называется дискретным логарифмом элемента а по основанию g и модулю q. Вычисление дискретных логарифмов (когда заданы g, a и q) примерно такая же труднорешаемая задача, как и разложение на множители.

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

а (Х) = а n – 1 X n – 1 + … + а 1 X + а 0.

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

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

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

а n – 1 а n – 2 … а 1 а 0.

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

Пример. Поле Галуа GF(2 3) имеет элементы:

Многочлены

Двоичная форма

0

000

1

001

х

010

х + 1

011

х 2

100

х 2 + 1

101

х 2 + х

110

х 2 + х + 1

111

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