Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Теоретико-числовые методы в криптографии и криптопротоколах. Учебное пособие.pdf
X
- •ПРЕДИСЛОВИЕ
- •1. ОСНОВНЫЕ АЛГЕБРАИЧЕСКИЕ КОНСТРУКЦИИ
- •1.1. Группы
- •1.2. Кольца
- •2. ЭЛЕМЕНТЫ ТЕОРИИ ЧИСЕЛ, КОНЕЧНЫХ ПОЛЕЙ И ЭЛЛИПТИЧЕСКИХ КРИВЫХ
- •2.1. Элементы теории сложности алгоритмов
- •2.2. Свойства кольца
- •2.3. Конечные поля
- •2.4. Группа точек эллиптической кривой
- •3.2. Примеры асимметрических криптосистем
- •3.3. Электронная подпись
- •3.4. Примеры криптопротоколов
- •4. АЛГЕБРАИЧЕСКИЕ ОПЕРАЦИИ В КОНЕЧНЫХ КОЛЬЦАХ И ПОЛЯХ
- •4.1. Вычисления в кольцах
- •4.2. Решение квадратных уравнений в кольцах
- •5.1. Вычисления в поле Галуа
- •6. АСИММЕТРИЧЕСКИЕ КРИПТОСИСТЕМЫ И КРИПТОПРОТОКОЛЫ
- •6.1. Криптосистема RSA
- •6.2. Криптосистема Эль-Гамаля
- •6.3. Криптосистема Хора – Ривеста
- •6.4. Протоколы электронной подписи
- •ЗАКЛЮЧЕНИЕ
- •БИБЛИОГРАФИЧЕСКИЙ СПИСОК

МИНОБРНАУКИ РОССИИ
————————————
Федеральное государственное автономное
образовательное учреждение высшего образования
«Омский государственный технический университет»
М. Н. Болдырева, А. А. Магазев, И. В. Широков
ТЕОРЕТИКО-ЧИСЛОВЫЕ
МЕТОДЫ В КРИПТОГРАФИИ
И КРИПТОПРОТОКОЛАХ
Уче
бное текстовое электронное издание
локального распространения
Р
екомендовано редакционно-издательским советом
Омского государственного технического университета
ск
Ом
Издательство ОмГТУ
2023
————————————————————————–———–––—————
Сведения об издании: 1, 2
© ОмГТУ, 2023
ISBN 978-5-8149-3672-1

УДК 511:004(075)
ББК 22.13+32.97я73
Б79
Рецензенты:
С. Н. Чуканов, д. т. н., профессор, профессор кафедры ЦТ СибАДИ;
А. В. Пролубников, к. ф.-м. н., доцент кафедры КМиПО
ОмГУ им. Ф. М. Достоевского
Болдырева, М. Н. Теоретико-числовые методы в криптографии и крипто-
протоколах : учеб. пособие / М. Н. Болдырева, А. А. Магазев, И. В. Широков ;
Минобрнауки России, Ом. гос. техн. ун-т. – Омск : Изд-во ОмГТУ, 2023. – 1 CD-ROM
(1,65 Мб). – Систем. требования: процессор с частотой 800 МГц и выше ; 128 Мб
RAM и более ; свободное место на жестком диске 300 Мб и более ; Linux / Windows
XP и выше ; MacOS X 10.4 и выше ; CD/DVD-ROM-дисковод ; ПО для просмотра pdfи mp4-файлов. – Загл. с титул. экрана. – ISBN 978-5-8149-3672-1.
Учебное пособие знакомит студентов с базовыми алгебраическими конструк-
циями, составляющими фундамент современной асимметрической криптографии.
В издании приведены необходимые определения, свойства и теоремы алгебры
и теории чисел; рассмотрены конкретные криптопротоколы; предложены задачи для
самостоятельного решения.
Предназначено для обучающихся на очном отделении по направлению 10.03.01
«Информационная безопасность» и специальности 10.05.05 «Безопасность информационных технологий в правоохранительной сфере».
Редактор О. В. Маер
Компьютерная верстка Л. Ю. Бутаковой
Для дизайна этикетки использованы материалы
из открытых интернет-источников
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Сводный темплан 2023 г. © ОмГТУ, 2023
Подписано к использованию 22.06.23.
Объем 1,65 Мб.
2

ОГЛАВЛЕНИЕ
n
n
n
ПРЕДИСЛОВИЕ ......................................................................................... 5
ЧАСТЬ I. НЕОБХОДИМЫЕ ТЕОРЕТИЧЕСКИЕ
СВЕДЕНИЯ .............................................................................. 6
1. ОСНОВНЫЕ АЛГЕБРАИЧЕСКИЕ КОНСТРУКЦИИ .......................... 6
1.1. ГРУППЫ ............................................................................................. 6
1.2. КОЛЬЦА ........................................................................................... 19
2. ЭЛЕМЕНТЫ ТЕОРИИ ЧИСЕЛ, КОНЕЧНЫХ ПОЛЕЙ
И ЭЛЛИПТИЧЕСКИХ КРИВЫХ ........................................................... 26
2.1. ЭЛЕМЕНТЫ ТЕОРИИ СЛОЖНОСТИ АЛГОРИТМОВ ............................ 26
2.2. СВОЙСТВА КОЛЬЦА
................................................................... 37
2.3. КОНЕЧНЫЕ ПОЛЯ ............................................................................. 50
2.4. ГРУППА ТОЧЕК ЭЛЛИПТИЧЕСКОЙ КРИВОЙ ..................................... 71
3. КРИПТОПРОТОКОЛЫ
И АСИММЕТРИЧЕСКИЕ КРИПТОСИСТЕМЫ ................................. 81
3.1. ОСНОВНЫЕ ПОНЯТИЯ АСИММЕТРИЧЕСКОЙ КРИПТОГРАФИИ ........ 81
3.2. ПРИМЕРЫ АСИММЕТРИЧЕСКИХ КРИПТОСИСТЕМ ........................... 88
3.3. ЭЛЕКТРОННАЯ ПОДПИСЬ ................................................................. 99
3.4. ПРИМЕРЫ КРИПТОПРОТОКОЛОВ ................................................... 105
ЧАСТЬ II. ЗАДАЧИ ДЛЯ САМОСТОЯТЕЛЬНОГО РЕШЕНИЯ .... 114
4. АЛГЕБРАИЧЕСКИЕ ОПЕРАЦИИ В КОНЕЧНЫХ
КОЛЬЦАХ И ПОЛЯХ ............................................................................ 114
4.1. ВЫЧИСЛЕНИЯ В КОЛЬЦАХ
4.2. РЕШЕНИЕ КВАДРАТНЫХ УРАВНЕНИЙ В КОЛЬЦАХ
....................................................... 114
.................. 117
5. ЭЛЛИПТИЧЕСКИЕ КРИВЫЕ НАД КОНЕЧНЫМИ ПОЛЯМИ ..... 121
5.1. ВЫЧИСЛЕНИЯ В ПОЛЕ ГАЛУА ....................................................... 121
5.2. ВЫЧИСЛЕНИЯ В ГРУППЕ ТОЧЕК ЭЛЛИПТИЧЕСКОЙ КРИВОЙ
НАД ПРОСТЫМ КОНЕЧНЫМ ПОЛЕМ ............................................... 124
3

5.3. ВЫЧИСЛЕНИЯ В ГРУППЕ ТОЧЕК ЭЛЛИПТИЧЕСКОЙ КРИВОЙ
НАД ПОЛЕМ ГАЛУА ХАРАКТЕРИСТИКИ 2 ...................................... 130
6. АСИММЕТРИЧЕСКИЕ КРИПТОСИСТЕМЫ
И КРИПТОПРОТОКОЛЫ ..................................................................... 133
6.1. КРИПТОСИСТЕМА RSA ................................................................. 133
6.2. КРИПТОСИСТЕМА ЭЛЬ-ГАМАЛЯ ................................................... 134
6.3. КРИПТОСИСТЕМА ХОРА-РИВЕСТА ............................................... 136
6.4. ПРОТОКОЛЫ ЭЛЕКТРОННОЙ ПОДПИСИ ......................................... 139
ЗАКЛЮЧЕНИЕ ...................................................................................... 149
БИБЛИОГРАФИЧЕСКИЙ СПИСОК .................................................. 150
4

ПРЕДИСЛОВИЕ
Криптография как область человеческой деятельности возникла очень давно.
Так, например, один из первых, дошедших до нас шифров, приписывается рим-
скому полководцу и императору Цезарю (т. н. шифр Цезаря датируется I веком
до н. э.). Однако как наука криптография достаточно молода, ее становление как
науки ассоциируют с выходом работы Клода Шеннона «Теория связи в секретных
системах» (1946). С этого момента криптография является разделом математики
прикладного характера, тесно связанным с такими старейшими ее областями, как
теория вероятностей, математическая логика, алгебра и теория чисел.
Для освоения криптографии как учебной дисциплины необходим большой
объем математических знаний, приобрести которые в рамках стандартных общематематических курсов университетов не возможно. Исключения составляют
специальности по информационной безопасности математического характера
(например, по специальности «Компьютерная безопасность» читается цикл курсов
криптографической направленности: «Алгебра» (3 семестра), «Теоретико-числовые методы в криптографии» (1 семестр), «Криптография» (2 семестра), «Криптопротоколы» (1 семестр)). В то же время в технических вузах на изучение дисциплины «Криптография», как правило, отводится один семестр. И если студенты
этих вузов в какой-то мере знакомы с теорией вероятности и математической логикой, то общая алгебра и теория чисел им не известна вовсе.
Настоящее учебное пособие посвящено алгебраическим вопросам криптографии. «Алгебра» и «Теория чисел» – слишком объемные дисциплины, чтобы
за несколько десятков страниц дать хоть какое-то представление о них. Авторы
и не ставили перед собой такую цель. В данном учебном пособии приведены
лишь те сведения, которые необходимы для изучения асимметрических криптосистем. При этом изложение имеет замкнутый вид и не требует предварительных знаний, выходящих за рамки высшей математики технического вуза.
Во второй части учебного пособия приведены задачи на вычисления. Авторы убеждены, что без самостоятельного прорешивания задач нельзя говорить
о получении настоящих знаний.
Предложенный в конце издания список литературы предназначен для более глубокого и обстоятельного погружения в рассматриваемые вопросы.
При его составлении авторы в первую очередь руководствовались соображениями доступности источника.
5

Часть I
{ }
12
,,A aa=
{ }
12
,,B bb=
AB
×
( ) ( ) ( ) ( )
{ }
11 12 21 2 2
,,,,,,,,,A B ab ab ab ab×=
AA×
2
A
3
AAA A××=
AA A×→
(
)
,ab
( )
2
,ab A∈
cA∈
GG G×→
( ) ( )
a bc ab c
∗∗= ∗∗
,,abc G
∀∈
eG∃∈
ae ea a∗=∗=
aG∀∈
aG∀∈
1
aG
−
∃∈
11
aa a a e
−−
∗ = ∗=
НЕОБХОДИМЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
1. ОСНОВНЫЕ АЛГЕБРАИЧЕСКИЕ КОНСТРУКЦИИ
1.1. ГРУППЫ
1.1.1. Определение и примеры групп
Пусть
конечные или бесконечные). Декартовым произведением двух множеств
называется множество, состоящее из всех упорядоченных пар:
падают, то вместо
,
часто пишут
– некоторые множества (неважно,
. Если множества A и B сов-
,
и т. д.
Говорят, что на множестве A задана бинарная операция, если определено отображение
вится в соответствие по некоторому правилу элемент c из этого же мно-
жества A. Для бинарной операции обычно придумывается специальный
знак. Например, запись a◊b = c означает, что паре элементов
ставится в соответствие элемент
пользовался знак «◊»).
Определение 1. Непустое множество G, на котором задана бинар-
ная операция «∗»:
операция удовлетворяет следующим свойствам (эти свойства называ-
ются аксиомами группы):
1. Свойство ассоциативности:
, т. е. каждой упорядоченной паре
(здесь для бинарной операции ис-
, называется группой, если эта бинарная
,
.
ста-
2. Существование единичного элемента:
.
3. Существование обратного элемента:
,
,
.
6
,
,

Бинарная операция, определенная на группе, называется умножением
( )
,G ∗
,
ab G
∈
ab ba∗=∗
G
( )
,⋅
1e =
x ∈
2 ∈
21x =
1
2
(
)
,
⋅
(
)
,⋅
( )
,+
в группе (мы всегда должны помнить, что это просто название бинарной
операции, которая, как правило, ничего общего с обычным умножением
чисел не имеет).
В общем случае, на одном и том же множестве существует (или можно определить) несколько бинарных операций (например, на множестве
целых чисел определены две стандартные бинарные операции: сложения
и умножения). Во избежание путаницы под группой понимается пара
где G – множество, «∗» – бинарная операция на этом множестве.
Если для любых двух элементов группы
, то такая группа называется коммутативной (или абелевой).
Группа называется конечной, если она конечна как множество, и бес-
конечной в противном случае. Количество элементов в конечной группе G
называется порядком группы и обозначается
За более точным и развернутым изложением определения групп мы
отсылаем читателя к классическим монографиям [1–3].
Приведем примеры групп.
Пример 1. Пусть – множество натуральных чисел. Проверим, явля-
ется ли это множество группой с обычной операцией умножения:
группа? Очевидно, что умножение натуральных чисел ассоциативно, т. е.
справедливо равенство
.
–
,
первая аксиома группы выполняется. Также очевидно, что существует
единичный элемент – это обычная единичка:
шение третьей аксиомы, достаточно привести хотя бы один контрпример.
Найдем элемент
делению
число
ется группой. Легко проверить, что множество
группой.
Пример 2. Множество
первая аксиома выполняется, единичным элементом в этом случае будет
не является натуральным. Таким образом, объект
. Но такого натурального числа не существует, так как
, обратный к натуральному числу
не является группой. Действительно,
7
. Чтобы доказать нару-
. По опре-
не явля-
также не является

ноль:
00a aa+=+=
1a−
a ∈
( )
a−
( ) ( )
0a a aa+− =− + =
( )
,+
{ }
|, , 0mn mn n
∗
= ∈≠|
( )
,
∗
⋅|
( )
n
Mat
( )
k
ik kj
ij
AB A B=
∑
01
00
A
=
( )
n
Mat
1
A
−
det 0A ≠
( ) ( )
{ }
| det 0
nn
GL A Mat A=∈≠
рая аксиома не выполняется. Третья аксиома также не выполняется,
, который не является натуральным числом, т. е. вто-
так как обратный элемент
, которое не является натуральным. Если же вместо
натуральных чисел рассмотреть множество целых чисел
множество будет бесконечной коммутативной группой – аддитивной
группой целых чисел.
Пример 3. Если расширить множество ненулевых целых чисел, доба-
вив все дроби, то получившееся множество будет множеством ненулевых
рациональных чисел
проверить, является бесконечной коммутативной группой – мультипли-
кативной группой рациональных чисел.
Пример 4. Проверим, является ли множество квадратных матриц
с вещественными элементами относительно стандартного мат-
к элементу
. Объект
есть число
, то такое
, как можно
:
ричного умножения группой. Матричное умножение
ассоциативная операция. Таким образом, первая аксиома выполняется.
Вторая аксиома также выполняется, так как существует единичный эле-
мент
ная матрица имеет обратную. Например, матрица
ратной. Таким образом, множество
рием существования обратной матрицы
ее определителя:
вещественных матриц
E = diag(1,1,,1
– единичная матрица. Однако не каждая квадрат-
)
не имеет об-
не является группой. Крите-
является ненулевое значение
. Рассмотрим подмножество невырожденных
.
–
Чтобы проверить, является ли это подмножество группой, необходи-
мо сначала проверить замкнутость операции умножения, т. е. определена
8

ли бинарная операция на этом подмножестве. Положительность ответа
det det detAB A B= ⋅
( )
n
GL
AB BA≠
( )
n
GL
{ }
|1
n
n
= ε∈ ε ={
12,n
εε∈
3 12 n
ε =ε ⋅ε ∈
(
)
3 12 1 2
11 1
n
n nn
ε = ε ⋅ε =ε ⋅ε = ⋅ =
n
1
n
∈
11n
n
−−
ε=ε ∈
( )
,
n
⋅
n
n=
{ }
2
| 0, 1, , 1
ik n
nk
ek n
π
=ε= = −
n
S
n
Sα∈
{ }
1, 2, ,
n
Xn=
следует из свойства определителя:
Множество квадратных невырожденных матриц
. (1.1)
с матрич-
ной операцией умножения называется общей линейной группой (General
Linear group). В общем случае для матриц
, и поэтому группа
некоммутативна.
Пример 5. Рассмотрим множество комплексных корней степени n из
единицы
.
Легко видеть, что это множество замкнуто относительно обычной
операции умножения комплексных чисел, т. е. если
. Действительно,
. Таким обра-
, то
зом, на множестве
определена бинарная операция – умножение. Эта
операция, как обычное умножение комплексных чисел, обладает свойством ассоциативности (и коммутативности). Кроме того,
а
порядка
. Таким образом,
– конечная коммутативная группа
(группа комплексных корней из единицы). Используя три-
гонометрическую запись комплексных чисел, это множество можно записать в виде
Пример 6. Символом
обычно обозначают множество перестановок
. (1.2)
множества из n элементов. Элементами этого множества являются перестановки. Каждая перестановка
задает отображение множества
,
на себя и записывается в виде
9

12
12
n
n
α=
αα α
,
(
)
i
iα=α
n
S
αβα
( )( ) ( )
( )
iiα β =αβα
(
)
,
n
S
α
n
S
!
n
Sn=
HG⊂
(
)
,G ∗
{
}
1
He=
2
HG=
(
)
n
SL
( ) (
)
{
}
| det 1
nn
SL A GL A=∈=
(
)
(
)
,
n
SL
⋅
( )
( )
,
n
GL ⋅
n
n
{ }
0, ,2,3, , ,n n n n kn= ±± ± ±
( )
,n +
( )
,+
{ }
1 1 23
,,,G a ea a= =
{ }
2 1 23
,,,G b eb b= =
{ }
12
GG e∩=
{
}
12
| 1, , ; 1, ,
ij
GabiGjG= = =
.
На множестве
. Можно проверить, что
нечная группа (группа перестановок). Группа
Если подмножество
носительно той же бинарной операции «∗», то такое подмножество называется подгруппой группы G.
Каждая группа G всегда имеет две подгруппы:
состоящая из одного единичного элемента, и подгруппа
ющая со всей группой G. Эти две подгруппы называются тривиальными
(или несобственными). Любые другие подгруппы называются собствен-
ными (или нетривиальными).
Пример 7. Возвращаясь к примеру 4, введем подмножество квадрат-
определим бинарную операцию
– некоммутативная ко-
имеет порядок
группы
само является группой от-
, полагая:
.
– подгруппа,
, совпада-
ных матриц
В силу свойства определителей (1.1) множество
подгруппой группы
ной группой (Special Linear group).
Пример 8. Обозначим через
щихся без остатка на заданное натуральное число
являющаяся подгруппой аддитивной группы целых чисел
Определение 2. Пусть группа G имеет две подгруппы:
с единичным определителем:
, которая называется специальной линей-
подмножество целых чисел, деля-
. Нетрудно проверить, что
и
, такие что
.
является
– группа,
.
:
,
.
10
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
