Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Zastosuvannya_teoriyi_chisel_u_kriptografiyi_metodi

.pdf
Скачиваний:
21
Добавлен:
30.05.2020
Размер:
512.12 Кб
Скачать

2. Якщо (a, m) = 1 і x проходить усі значення зведеної

системи найменших лишків за модулем m , то ax теж набуває усі значення повної системи лишків.

3.3.МАЛА ТЕОРЕМА ФЕРМА І ТЕОРЕМА ЕЙЛЕРА

Увипадку, коли модуль – просте число p , існування

одиничного елемента відносно множення для повної системи лишків доводить мала теорема Ферма.

Мала теорема Ферма

Розглядають цілі додатні числа: довільне ціле a та просте число p . Якщо (a, p) = 1 , то завжди буде виконуватися таке:

a p−1 ≡ 1(mod p).

Якщо модуль m є складеним числом, для повної системи лишків одиничний елемент визначити не можна, але теорема Ейлера доводить існування єдиної одиниці за множенням для зведеної системи лишків за довільним цілим модулем.

Теорема Ейлера (узагальнення малої теореми Ферма)

Для двох довільних цілих додатних чисел a та m > 1 , таких, що (a, m) = 1, завжди буде виконуватися таке:

aϕ(m ) ≡ 1(mod m),

де ϕ(m) - функція Ейлера – кількість чисел, менших за m і

взаємно простих з ним.

Якщо m = p - просте число, функція Ейлера буде ϕ(p) = p −1 , а теорема Ейлера набирає вигляду

a p−1 ≡ 1(mod p),

що відповідає малій теоремі Ферма.

Тобто теорема Ейлера поширює результат теореми Ферма на будь-який складний цілий модуль.

41

Висновки

1.Одиниця з множення існує і єдина для повної системи лишків за простим модулем p .

2.За складеним модулем m одиниця з множення існує тільки на класах зведеної системи лишків.

Приклади

1. Показати, що

120 + 220 + 320 + 520 + 620 + 720 + 920 +1020 ≡ −3(mod 11) .

Розвязання

Модуль 11 – просте число. Всі числа, що входять до суми – 1, 2, 3, 5, 6, 7, 9, 10, – належать до повної системи найменших додатних лишків за модулем 11. Всі ці числа взаємно прості з модулем. Отже, використовуючи малу теорему Ферма, для кожного з цих чисел можна записати:

a10 ≡ 1(mod 11), a [1,2,3,5,7,9,10].

За властивостями конгруенцій можна піднести до квадрата обидві частини останньої конгруенції, тобто a 20 ≡ 1(mod 11) і замінити числа у вихідній сумі на еквівалентні:

1 +1 +1 + 1+ 1 +1 +1 +1 ≡ 8(mod 11).

Далі, використовуючи той факт, що 11t є нейтральним елементом з додаванню (виконує роль 0), віднімемо від 8 цей нейтральний елемент:

8 −11 = −3 ≡ −3(mod 11), що і необхідно було показати.

2. Показати, що 117 + 317 + 517 + 917 +1117 + 1317 ≡ 0(mod 14).

Розвязання

Усі числа, що входять до суми, є взаємно простими з модулем 14 і належать до повної системи найменших додатних лишків. Степінь, до якого треба піднести всі числа, непарний – 17. Отже, можна використати той факт, що від’ємна величина в

42

цьому степені зберігає знак.

Змінимо елементи повної системи найменших додатних лишків на елементи повної системи абсолютно найменших лишків: 13 º -1(mod 14); 11 º -3(mod 14), 9 º -5(mod 14).

Підставимо до вихідної конгруенції

117 + 317 + 517 - 517 - 317 -117 º 0(mod 14), що і потрібно було показати.

3. Показати, що число 7312 -1 ділиться на 105.

Розвязання

Якщо 7312 -1 ділиться на 105, то 7312 º 1(mod 105).

105 – складений модуль, 105 = 3 ×5 × 7 . З кожним із складових 73 є взаємно простим, отже, для кожного модуля можна застосувати малу теорему Ферма:

якщо (a , p) = 1 a p−1 º 1(mod p).

Отже, 732 º 1(mod 3); 734 º 1(mod 5); 736 º 1(mod 7).

Піднесемо першу отриману конгруенцію до 6-го степеня (за властивостями), другу – до 3-го степеня, третю – до 2-го степеня. Отримаємо:

7312 º 1(mod 3); 7312 º 1(mod 5); 7312 º 1(mod 7).

Використовуючи властивість, за якою конгруенцію, що виконується за різними модулями, можна розглядати як конгруенцію за модулем, що складає НСК цих модулів,

запишемо: 7312 º 1(mod 3 ×5 × 7), або 7312 º 1(mod 105), що і потрібно було показати.

4. Довести, що за умови (a ,12) = 1, (b,12) =1 число a96 - b96 завжди ділиться на 144.

Розвязання

Якщо число взаємно просте з числом 12, то воно буде взаємно простим і з числом 144 = 122 . Отже, для такого числа

43

виконується теорема Ейлера: aϕ (144 ) º 1(mod 144). Функція Ейлера для числа 144 дає результат: j(144) = j(32 × 24 )= (24 - 23 )(32 - 3)= 8 ×6 = 48 .

Отже, a 48 º 1(mod 144) і b48 º 1(mod 144).

Використовуючи властивості конгруенцій, піднесемо обидві конгруенції до квадрата: a96 º 1(mod 144); b96 º 1(mod 144).

За властивостями конгруенцій ми можемо відняти від першої конгруенції другу:

a96 - b96 º 0(mod 144).

Остання конгруенція і

означає, що за умови

(a ,12) = 1, (b,12) =1 число a96 - b96

завжди ділиться на 144.

5. Знайти останню цифру числа 232323 .

Розвязання

Знаходження останньої цифри числа еквівалентно знаходженню остачі від ділення числа на 10. Позначимо невідому останню цифру через x :

232323 º x(mod 10)

23 = 2 ×10 + 3 - підставимо до конгруенції: (2 ×10 + 3)2323 º x(mod 10).

Якщо 2 ×10 + 3 піднести до степеня 2323 за біномом Ньютона, то у кожному з доданків, крім останнього, будемо мати за множник 10 в степенях від 2323 до 1. Усі такі доданки конгруентні 0 за модулем 10. Отже, після піднесення до степеня лівої частини конгруенції, будемо мати

32323 º x(mod 10);

(3,10) = 1 , причому 10 – складене число. Для цієї пари виконується теорема Ейлера: 3ϕ(10) º 1(mod 10).

j(10) = j(2 × 5) = 1× 4 = 4 34 º 1(mod 10).

44

Знайдемо

 

найменшу остачу для степеня 2323

за модулем 4:

 

 

 

2323

= 580

3

; 2323 = 580 × 4 + 3 ,

4

4

 

 

34×580+3 º x(mod 10); (34 )580 × 33 º x(mod 10).

Оскільки

34 º 1(mod 10) 1580 ×33 = 27 = 20 + 7 º 7(mod 10) x = 7 .

Отже, останньою цифрою у числі 232323 буде цифра 7.

6. Знайти число, складене з цифр трьох найменших розрядів числа 3798 .

Розвязання

Необхідно знайти цифри трьох найменших розрядів цього числа, тобто необхідно знайти остачу від ділення цього числа на

1000.

(3,1000) =1 3ϕ (1000) º1(mod1000);

ϕ (1000) = ϕ (23 × 53 ) = (8 - 4)(125 - 25) = 400 3400 º 1(mod 1000).

Піднесемо конгруенцію до квадрата:

3800 º1(mod1000) 3798 ×9 º1(mod1000) .

За властивостями конгруенцій ми до будь-якої частини конгруенції можемо додавати ціле число, кратне модулю. Додамо праворуч –1000:

3798 ×9 º 1 -1000(mod 1000) 3798 ×9 º -999(mod 1000) .

За властивостями конгруенцій можна ділити обидві частини конгруенції на число, взаємно просте з модулем. Поділимо на 9

(9,1000)=1:

3798 º -111(mod1000) 3798 º -111 +1000(mod1000)3798 º 889(mod1000) .

Відповідь: Три останні цифри числа 3798 будуть 8, 8, 9. Отже,

45

число, що складається з них – 889.

7. Знайти остачу від ділення 623854 на 26.

Розвязання

Позначимо остачу від ділення даного числа 623854 на 26 через x .

Тоді можна записати конгруенцію 623854 º x(mod 26). Оскільки модуль – парне число, 62 – парне число, степінь

парного числа – парне число, то й x теж повинно бути парним числом за властивостями конгруенцій. Отже, можна перепозначити x = 2 y і конгруенцію записати так:

313854 × 23854 º 2 y(mod13 × 2) .

За властивостями конгруенцій таку конгруенцію можна скоротити на 2:

313854 × 23853 º y (mod13) .

Отримали нову задачу – знайти остачу від ділення числа

a = 313854 × 23853

на 13.

Спростимо

конгруенцію. Оскільки 31 ≡ 5 ≡ −8(mod13), і

степінь 3854 парний, відповідно

313854 × 23853 º (-8)3854 × 23853 (mod13) 83854 × 23853 º y (mod13)

(23 )3854 × 23853 º y (mod13) 211562 × 23853 º y (mod13)

211562+3853 = 215415 º y (mod13) .

Оскільки (2,13) = 1 , 13 – просте число, за теоремою Ферма

213−1 = 212 º 1(mod13)

З’ясуємо якою буде остача від ділення степені 15415 на 12:

15415 =12 ×1284 + 7

Отже, 215415 = 212×1284+7 = 212×1284 × 27 º 27 (mod13)

{

º1(mod13)

128 º11 º y (mod13) y º11(mod13) .

Що означає, що остача від ділення числа a = 313854 × 23853 на

46

13 буде дорівнювати 11.

Отже, остачею від ділення 623854 на 26 буде число x = 2 y = 22 .

ЗАВДАННЯ ДЛЯ ВИКОНАННЯ ІНДИВІДУАЛЬНИХ КОНТРОЛЬНИХ РОБІТ ЗА ТЕМОЮ 3

ЗАВДАННЯ 7

Знайдіть остачу від ділення

1.

6617

2.100

+3

100

3.

11802

4.

172001

5.

192402

на 7

2

 

 

на 1000

на 1000

на 100

на 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6.

17852

7.

19671968

8.

383175

9.

109345

10.

439291

на 11

на 11

 

на 45

на 14

на 60

 

 

 

 

 

 

 

 

 

 

 

11.

293275 на

12.

 

6617

13.

11753

14.

570+750

15.

580+7100

48

 

на 7

 

 

на 11

на 12

на 13

 

 

 

 

 

 

 

 

 

 

 

16.

550+13100

17.

 

111841

18.

122751

19.

222342

20.

122751

на 18

на 7

 

 

на 5

на 14

на 10

 

 

 

 

 

 

 

 

 

 

 

21.

343741 на

22.

 

1782741

23.

111201

24.

71199

25.

3157

26

 

на 22

 

на 1000

на 1000

на 100

 

 

 

 

 

 

 

 

 

 

 

26.

1778

27.

 

1979

28.

7114

29.

11203

30.

7332

на 100

на 100

 

на 100

на 100

на 100

 

 

 

 

 

 

 

 

 

 

 

 

47

ТЕМА 4. КОНГРУЕНЦІЇ З ОДНИМ НЕВІДОМИМ

4.1. Конгруенції першого степеня. Розв’язання конгруенцій.

4.1.1.Використання властивостей конгруенцій.

4.1.2.Використання підхідних дробів для розв’язання конгруенцій.

4.2. Обернений елемент за множенням.

4.3. Системи конгруенцій першого степеня з одним невідомим.

Ключові терміни

Конгруенції І степеня, обернений елемент за модулем m , розвязок конгруенції, системи конгруенцій з одним невідомим, розвязок системи конгруенцій, китайська теорема про остачі.

4.1. КОНГРУЕНЦІЇ ПЕРШОГО СТЕПЕНЯ. РОЗВЯЗАННЯ КОНГРУЕНЦІЙ

Конгруенції І степеня мають вигляд ax + b ≡ 0(mod m) або ax b(mod m) .

Розвязком конгруенції І степеня за модулем m є клас чисел x1 + mt, t Z , кожний лишок якого за підстановки у конгруенцію приводить до тотожної конгруенції b b(mod m).

Як правило, x1 належить до повної системи найменших

додатних або абсолютно найменших лишків. Дослідимо наявність розв’язків такої конгруенції. По-перше, розглянемо ситуацію, коли (a, m) = 1.

Якщо x бере по черзі всі значення повної системи лишків за модулем m , то і ax теж набуває значення повної системи лишків із точністю до порядку слідування. Отже, x , який є конгруентним до b , існує тільки один.

48

Висновок

За умови, що (a, m) = 1, конгруенція ax b(mod m) має єдиний розвязок.

По-друге, розглянемо конгруенцію ax b(mod m) за умови

(a, m) = d > 1:

ax b(mod m) ax = b + mt .

Отже, якщо d | a, d | m d | b , тоді складові конгруенції можна подати так:

a = a1d , b = b1d , m = m1d , (a1, m1 ) = (b1 , m1 ) = 1,

отже за властивістю конгруенцій таку конгруенцію можна скоротити на d . Отримаємо конгруенцію

a1 x b1 (mod m1 ).

З попереднього

така конгруенція має

єдиний розв’язок

x x1 (mod m1 ) , або

x = m1t + x1 . Але

якщо

розглянути повну

систему лишків для модуля m = dm1 ,

то можна помітити, що у

інтервал [0, m] попадають такі розв’язки:

 

x1 , x1 + m1 ,

x1 + 2m1 ,..., x1 + (d − 1)m1 , тобто кількість таких

розв’язків

d . Ці

розв’язки неконгруентні між собою за

модулем

m і в свою чергу кожний з них створює свій клас

лишків.

 

 

 

 

 

Висновок

За умови, що (a, m) = d > 1, конгруенція має хоча б один розвязок, якщо d | b . Таких розвязків є рівно d штук ( d

класів). Перший з розвязків знаходиться із скороченої на d конгруенції, інші обчислюються, як

x2 = x1 + m1 ,..., xd = x1 + (d − 1)m1

49

РОЗВЯЗАННЯ КОНГРУЕНЦІЇ ПЕРШОГО ПОРЯДКУ МОЖНА ПРОВОДИТИ РІЗНИМИ МЕТОДАМИ:

4.1.1 ВИКОРИСТАННЯ ВЛАСТИВОСТЕЙ КОНГРУЕНЦІЙ.

Приклади

а) Розв’язати конгруенцію: 15x º 25(mod17)

Розвязання

По-перше, розглянемо НСД 15 та 17: (15,17) = 1, отже

конгруенція має єдиний розв’язок. Спростимо конгруенцію за властивостями: 25 і 15 мають спільний множник 5, який є взаємно простим з модулем 17. Отже, використовуючи властивості конгруенції, можемо поділити конгруенцію на 5: 3x º 5(mod17). Число 5 відповідає абсолютно найменшому

лишку -12, який є кратний числу 3, отже, 3x º -12(mod17) скоротимо на 3: x º -4(mod17). Таким чином, конгруенція має

єдиний розв’язок з повної системи абсолютно найменших лишків за модулем 17, або розв’язок з повної системи найменших додатних лишків: x = −4 + 17 = 13 .

б) Розв’язати конгруенцію 10x ≡ 35(mod 55).

Розвязання

(10,55) = 5 > 1, 5 | 35 . Отже, ця конгруенція має 5 розв’язків. Скоротимо конгруенцію на d = 5 :

2x ≡ 7(mod11) - така конгруенція має єдиний розв’язок, оскільки (2,11) = 1

2x ≡ 7 + 11(mod11) 2x ≡ 18(mod11) x ≡ 9(mod11).

Конгруенція 10x ≡ 35(mod 55) буде мати 5 таких розв’язків:

x0 º 9 (mod 55) , x1 º 9 +11×1 =18(mod 55) ,

50

Соседние файлы в предмете Защита информации