Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Posobie_algebra_I_Teoria_Chisel_1_30_el_uchebni...doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
3.12 Mб
Скачать

ЗМІСТ

Вступ

6

§ 1

Основні означення та властивості алгебраїчних систем

8

1.1. Алгебраїчні системи з однією операцією

8

1.2. Підгрупи, класи суміжності. Теорема Лагранжа

13

Питання для самоконтролю

19

Задачі до § 1

20

§ 2

Властивості циклічних груп

21

2.1. Властивості циклічних груп

22

2.2. Відображення груп. Нормальні підгрупи. Терема про ізоморфізм груп

24

2.3. Внутрішні автоморфізми групи та спряжені елементи

30

2.4. Нормалізатор множини. Центр групи

31

Питання для самоконтролю

34

Задачі до § 2

35

§ 3

Алгебраїчні системи з двома операціями. Ідеал кільця. Факторкільце за ідеалом

38

3.1. Означення та основні властивості кілець

38

3.2. Ідеал кільця. Факторкільце за ідеалом

42

3.3. Відображення кілець

46

Питання для самоконтролю

48

Задачі до § 3

49

§ 4

Характеристика кільця. Характеристика скінченного поля. Факторкільця за різними ідеалами, їх властивості

51

4.1. Характеристика кільця, її властивості

51

4.2. Залежність властивостей факторкільця від ідеалу

54

Питання для самоконтролю

58

Задачі до § 4

59

§ 5

Алгоритм Евкліда. Основна теорема арифметики. Конгруенції та їх властивості. Китайська теорема про лишки

62

5.1. Прості числа, НСД, НСК. Розширений алгоритм Евкліда, його наслідки

62

5.2. Розклад на прості множники. Фундаментальна теорема арифметики

67

5.3. Конгруенції (порівняння) та їх властивості

69

5.4. Кільця лишків Zn, їх властивості

70

Питання для самоконтролю

76

Задачі до § 5

77

§ 6

Подільність, факторизація. Застосування факторизації

78

6.1. Узагальнення Китайської теореми про лишки

78

6.2. Наслідки теореми Ойлера

80

6.3. Структура мультиплікативної групи скінченого поля

83

Питання для самоконтролю

86

Задачі до § 6

87

§ 7

Алгоритми та їх складність. Поліноміальні та експоненційні алгоритми. Час роботи основних алгоритмів

89

7.1. Означення часу роботи алгоритму. Типи алгоритмів

89

7.2. Час роботи основних алгоритмів

93

Питання для самоконтролю

98

Задачі до § 7

99

§ 8

Імовірнісні алгоритми. Алгоритми з оракулами. Порівняння складності задач

100

8.1. Означення імовірнісного алгоритму. Типи імовірнісних алгоритмів

100

8.2. Алгоритми з оракулами

105

Питання для самоконтролю

108

Задачі до § 8

109

§ 9

Квадратичні лишки та нелишки. Добування квадратного кореня у кільці лишків

111

9.1. Означення та властивості квадратичних лишків

111

9.2. Символ Лежандра та символ Якобі. Їх властивості та обчислення

112

9.3. Добування квадратного кореня

118

9.3.1. Добування квадратного кореня за простим модулем.

118

9.3.2. Розпізнавання квадратичності та добування квадратного кореня за модулем n = pq

121

Питання для самоконтролю

124

Задачі до § 9

125

§ 10

Псевдопрості числа. Тестування простоти

128

10.1. Найпростіші алгоритми тестування простоти

128

10.2. Псевдопрості числа: означення та властивості

130

10.3. Імовірнісні алгоритми тестування простоти

135

Питання для самоконтролю

138

Задачі до § 10

139

§ 11

Означення дискретного логарифму. Алгоритм знаходження дискретного логарифму у мультиплікативній групі скінченного поля ZP

141

Питання для самоконтролю

145

Задачі до § 11

146

§ 12

Важкооборотні функції, ядро, предикат. Застосування важкооборотних функцій у криптографії. Класичні асиметричні криптосистеми

147

12.1. Важкооборотні функції. Предикат, ядро важкооборотної функції

147

12.2. Застосування важкооборотних функцій для побудови криптосистем імовірнісного шифрування

151

12.3. Застосування односторонніх функцій для побудови класичних асиметричних криптосистем

153

12.3.1. Протокол відкритого обміну ключами Діффі-Хеллмана

153

12.3.2. Асиметричні системи шифрування

154

12.3.3. Системи цифрового підпису

157

12.3.4. Протокол доведення без розголошення

161

Питання для самоконтролю

164

Задачі до § 12

165

Література

167

Предметний покажчик

168

ВСТУП

Даний посібник охоплює розділи абстрактної алгебри і теорії чисел, які необхідні при вивченні класичних асиметричних криптосистем. Крім того, у ньому викладено елементи теорії кілець і полів, що робить можливим подальше вивчення теорії скінченних полів та її застосувань у сучасних симетричних та асиметричних криптосистемах. Наведено багато прикладів класичних асиметричних систем різних типів.

Посібник містить велику кількість задач, які підібрані у певній послідовності з метою кращого засвоєння матеріалу. Багато з них запропоновані авторами.

Структура матеріалу у посібнику наступна. Параграфи 1 – 4 містять елементи абстрактної алгебри, а саме означення основних алгебраїчних систем та їх властивості. Додатковий матеріал за темами цих параграфів можна знайти у 1 – 4.

Параграфи 5, 6 знайомлять читача з елементами теорії чисел, приділяючи особливу увагу кільцям лишків та їх властивостям. Як приклад застосування абстрактної теорії до практичних задач, розглядається задача про розподіл таємниці. Більш детально ознайомитись з даним матеріалом можна у книгах 3, 5. У параграфах 7, 8 вводиться поняття часової складності детермінованих та імовірнісних алгоритмів, даються означення поліноміальних, експоненційних та субекспоненційних алгоритмів, розглядаються приклади побудови оцінок часу роботи алгоритмів та приклади поліноміальної звідності задач. Вважається, що читач знайомий з поняттям алгоритму; в іншому випадку можна звернутися до літератури 6, 7. Параграфи 9, 10 присвячені означенню квадратичності, алгоритмам тестування простоти, добування квадратного кореня та знаходження твірних елементів мультиплікативної групи простого поля.

У параграфі 11 вводиться поняття дискретного логарифму та запропоновано один з методів його знаходження. Зацікавлений читач може ознайомитись з багатьма іншими методами дискретного логарифмування, а також з методами розв’язку задачі факторизації у 3.

Параграф 12 містить поняття односпрямованої функції та опис багатьох асиметричних криптосистем, стійкість яких ґрунтується на гіпотезі про існування односпрямованих функцій. Деякі інші криптосистеми, а також основні атаки на них можна знайти в 3, 5, 8 – 10.

Посібник розрахований на студентів всіх спеціальностей, пов’язаних із захистом інформації, а також на аспірантів за відповідними спеціальностями.

§1. Основні означення та властивості алгебраїчних систем

1.1. Алгебраїчні системи з однією операцією

На початку даного розділу ми введемо ряд означень, з якими будемо працювати протягом даного курсу, а потім сформулюємо та доведемо їх основні властивості.

Означення 1.1: нехай S – деяка множина. Бінарна операція, визначена на множині S – це відображення : SSS, яке кожній парі елементів (s1s2)SS ставить у відповідність єдиний елемент s = s1s2S.

В такому випадку кажуть, що множина S замкнена відносно операції "". Також множину S називають носієм операції.

Означення 1.2: алгебраїчна система (з однією операцією) – це множина, на якій визначена операція. Аналогічно визначається алгебраїчна система з довільною кількістю операцій.

Операція, визначена на множині S, називається:

- асоціативною, якщо s1, s2, s3S: (s1s2)s3 = s1(s2s3);

- комутативною, якщо s1, s2S: s1s2 = s2s1.

Означення 1.3: напівгрупою (S, ) називається множина S із асоціативною операцією . Якщо зрозуміло, про яку операцію йде мова, то напівгрупу можна позначати просто S.

Означення 1.4: моноїдом (М, ) називається множина М з операцією  такою, що

  1.  – асоціативна операція,

  2. eМmM: em = me = m.

Елемент е називають одиничним, або нейтральним елементом, або просто одиницею.

Іншими словами, моноїд – це напівгрупа з одиницею.

Означення 1.5: групою (G, ) називається множина G з операцією  такою, що

1)  – асоціативна операція;

2) eGgG: eg = ge = g;

3) gGG: g = g = e.

Елемент називають елементом, оберненим до g. Таким чином, групою є моноїд, в якому для кожного елемента існує обернений. Операція  у групі називається груповою операцією.

Часто групову операцією називають множенням і замість аb використовують позначення аb, для спрощення позначень, якщо це не викликає плутанини. Але при цьому слід розуміти, що елементи а, b, як і добуток аb, не є, взагалі кажучи, числами, і добуток аb не є звичайним числовим добутком.

Одиничний елемент групи часто позначають 1 або, якщо треба підкреслити, що даний елемент належить саме групі G, то використовують позначення 1G.

Група називається абелевою, якщо операція  комутативна.

У абелевій групі групову операцією часто називають додаванням і замість аb використовують позначення а+b, якщо це не викликає плутанини. При цьому також слід пам’ятати, що вираз а+b не є, взагалі кажучи, числом. Також у абелевій групі одиничний елемент часто називають нульовим елементом, або нулем групи, і позначають 0; елемент, обернений до елемента а, часто замість а-1 (читається "а в мінус першому степені") позначають – а (читається "мінус а") і називають протилежним елементом до елемента а. Замість b + (– а) пишуть a.

Приклади 1.5.

1. Множина Sn підстановок довжини n утворює групу відносно операції суперпозиції. Ця група має назву симетричної групи.

2. Множина дійсних чисел R утворює абелеву групу відносно операції додавання +.

3. Множина R/{0} дійсних чисел без нуля утворює абелеву групу відносно операції множення.

4. Множина N натуральних чисел утворює напівгрупу відносно операції додавання +.

5. Множина N натуральних чисел утворює моноїд відносно операції множення.

6. Множина цілих чисел Z утворює абелеву групу відносно операції додавання.

7. Множина цілих чисел Z утворює моноїд відносно операції множення.

8. Множина матриць розмірності n×n утворює абелеву групу відносно операції додавання.

9. Множина матриць розмірності n×n утворює моноїд відносно операції множення.

Твердження 1.6 (властивості елементів групи).

1. Одиничний елемент е у моноїді єдиний.

Доведення: нехай е' також одиничний елемент. Тоді е = ее' = е'.

2. Нехай (G, ) – група. Тоді a, bG cG:b·с і dG:d·b.

Доведення: c = b–1·a; d = a b–1.

3. Нехай (G, ) – група. Тоді:

а) aG а–1; б) aG (а–1)–1 а; в) a, bG (а·b)–1 b–1 ·a–1.

4. Нехай (S, ) – група, G S. Тоді (G, ) – група тоді й тільки тоді, якщо a, bG: a·b–1G.

Пункти 3, 4 твердження 1.6 рекомендується довести самостійно.

Приклад 1.7: розглянемо важливий приклад групи – групу лишків за модулем n.

Для будь-яких aZ, nN позначимоmod n лишок від (цілочисельного) ділення а на n: , для деякого kZ, де k називається часткою від ділення а на n. Також позначимо Zn = {0, 1, ..., – 1}. Множина Zn з операцією  (іноді просто +), де a= (b) mod n, називається групою лишків за модулем n.

Доведемо, що множина Zn є групою відносно операції .

Очевидно, що множина Zn замкнена відносно заданої операції. Далі, операція  – асоціативна, оскільки

( b)  c = (a + b + c) mod n = a  (b c).

Нейтральним елементом відносно заданої операції буде елемент е = 0; до кожного елемента а Zn існує протилежний елемент – а = n a. Доведення закінчено.

Розглянемо відображення Z Zn, визначене наступним чином:

aZ a mod nZn. (1.1)

Таке відображення розбиває множину Z на класи, що не перетинаються:

Z = [0] [1] [2] [3] … [n – 1], (1.2)

де клас [і] складається з усіх прообразів елемента і при вказаному відображенні, тобто всіх таких цілих чисел, які дають залишок і при діленні на n.

Означення 1.8: нехай abZnN. Будемо записувати a b mod n і говорити, що "a конгруентно b за модулем n", якщо образи a, b при відображенні (1.1) належать одному класу з розбиття (1.2).

Легко помітити, що наступні три твердження є еквівалентними:

1) a b mod n; 2) a – kn для деякого kZ; 3) a mod n = b mod n.

Вираз a b(mod n) називається конгруенцією, або порівнянням.

Означення 1.9: група G називається скінченною (нескінченною), якщо вона складається із скінченної (нескінченної) кількості елементів. Порядком скінченної групи G називається число елементів групи; порядок групи позначається |G|. Порядок нескінченної групи вважається рівним нескінченності.

Скінченні групи можна задавати у вигляді таблиці групової операції, або таблиці Келі.

Приклад 1.10: таблиця Келі для Z5 = {0, 1, 2, 3, 4} відносно операції додавання за модулем 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

Таблиця Келі для групи є симетричною відносно головної діагоналі тоді і тільки тоді, коли група є абелевою.

Таблиця Келі для групи порядку п утворює так званий латинський квадрат розмірності пп, тобто таку квадратну таблицю, у якій кожен з п елементів зустрічається рівно один раз у кожному стовпчику і у кожному рядку.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]