Майзаков Максим Александрович Разработка модулей автоматической генерации заданий с решениями по теме «Дискретное логарифмирование» диплом

Вид материалаДиплом

Содержание


Ответ: log517 ≡ 7 mod 23Вычислить дискретный логарифм методом Полига-Хеллмана
Подобный материал:
1   ...   4   5   6   7   8   9   10   11   12

X14 = X6

Теперь вычисляем логарифм:

log314 ≡ (U[6] - U[14]) * (V[14] - V[6])-1 mod 30

log314 ≡ (0 - 12) * (19 - 10)-1 mod 30

log314 ≡ 18 * 9-1 mod 30

Сравнение имеет 1 решений..

Ответ:

log314 ≡ 6 mod 31


в) log25 mod 29.

Решение:

i

0

1

2

3

4

5

6

7

8

9

10

11

X(i)

1

5

25

9

18

7

6

12

24

19

8

6

U(i)

0

0

0

0

1

2

2

3

4

5

5

10

V(i)

0

1

2

3

3

3

4

4

4

4

5

10

S

S1

S2

S1

S3

S3

S1

S3

S3

S3

S1

S2

S3

X11 = X6

Теперь вычисляем логарифм:

log25 ≡ (U[6] - U[11]) * (V[11] - V[6])-1 mod 28

log25 ≡ (2 - 10) * (10 - 4)-1 mod 28

log25 ≡ 20 * 6-1 mod 28

log25 ≡ 10 * 3-1 mod 28

Сравнение имеет 2 решений..

Возможные значения логарифма: 22, 36

Ответ:

log25 ≡ 22 mod 29


г) log627 mod 41.

Решение:

i

0

1

2

3

4

5

6

7

8

9

10

11

12

13

X(i)

1

27

39

29

21

3

18

26

20

31

17

2

4

26

U(i)

0

0

1

2

4

5

6

7

14

28

28

16

32

32

V(i)

0

1

1

1

2

2

2

2

4

8

9

18

36

37

S

S1

S3

S3

S2

S3

S3

S3

S2

S2

S1

S2

S2

S1

S2

X13 = X7

Теперь вычисляем логарифм:

log627 ≡ (U[7] - U[13]) * (V[13] - V[7])-1 mod 40

log627 ≡ (7 - 32) * (37 - 2)-1 mod 40

log627 ≡ 15 * 35-1 mod 40

Сравнение имеет 1 решений..

Ответ:

log627 ≡ 25 mod 41


д) log517 mod 23.

Решение:

I

0

1

2

3

4

5

X(i)

1

17

13

14

12

14

U(i)

0

0

0

0

0

1

V(i)

0

1

2

3

6

6

S

S1

S2

S1

S2

S3

S2

X5 = X3

Теперь вычисляем логарифм:

log517 ≡ (U[3] - U[5]) * (V[5] - V[3])-1 mod 22

log517 ≡ (0 - 1) * (6 - 3)-1 mod 22

log517 ≡ 21 * 3-1 mod 22

Сравнение имеет 1 решений..

Ответ:

log517 ≡ 7 mod 23


Вычислить дискретный логарифм методом Полига-Хеллмана:


а) log38 mod 127-1.

Решение:

n = p — 1 = 126 = 21 • 32 • 71;

q = 2; α = 1;

γ = 1; l0 = 0;

g' = 363 mod 127 = 126;

j = 0 => γ = 1, a' = 863 mod 127 = 1 => l0 = log1261 mod 127 = 0;

x0 = 0 • 20 = 0;

q = 3; α = 2;

γ = 1; l0 = 0;

g' = 342 mod 127 = 107;

j = 0 => γ = 1, a' = 842 mod 127 = 1 => l0 = log1071 mod 127 = 0;

j = 1 => γ = 1, a' = 814 mod 127 = 1 => l1 = log1071 mod 127 = 0;

x1 = 0 • 30 + 0 • 31 = 0;

q = 7; α = 1;

γ = 1; l0 = 0;

g' = 318 mod 127 = 4;

j = 0 => γ = 1, a' = 818 mod 127 = 32 => l0 = log432 mod 127 = 6;

x2 = 6 • 70 = 6;

Составим систему:

x ≡ 0 (mod 21)

x ≡ 0 (mod 32)

x ≡ 6 (mod 71)

Решая систему получим:

x ≡ 90(mod 126).

Проверка:

390 mod 127 = 8.

Ответ:

log38 mod 126 = 90.


б) log355 mod 137-1

Решение:

n = p — 1 = 136 = 23 • 171;

q = 2; α = 3;

γ = 1; l0 = 0;

g' = 368 mod 137 = 136;

j = 0 => γ = 1, a' = 5568 mod 137 = 136 => l0 = log136136 mod 137 = 1;

j = 1 => γ = 3, a' = 5534 mod 137 = 1 => l1 = log1361 mod 137 = 0;

j = 2 => γ = 3, a' = 5517 mod 137 = 136 => l2 = log136136 mod 137 = 1;

x0 = 1 • 20 + 0 • 21 + 1 • 22 = 5;

q = 17; α = 1;

γ = 1; l0 = 0;

g' = 38 mod 137 = 122;

j = 0 => γ = 1, a' = 558 mod 137 = 119 => l0 = log122119 mod 137 = 10;

x1 = 10 • 170 = 10;

Составим систему:

x ≡ 5 (mod 23)

x ≡ 10 (mod 171)

Решая систему получим:

x ≡ 61(mod 136).

Проверка:

361 mod 137 = 55.

Ответ:

log355 mod 136 = 61.


в) log541 mod 307-1.

Решение:

n = p — 1 = 306 = 21 • 32 • 171;

q = 2; α = 1;

γ = 1; l0 = 0;

g' = 5153 mod 307 = 306;

j = 0 => γ = 1, a' = 41153 mod 307 = 1 => l0 = log3061 mod 307 = 0;

x0 = 0 • 20 = 0;

q = 3; α = 2;

γ = 1; l0 = 0;

g' = 5102 mod 307 = 289;

j = 0 => γ = 1, a' = 41102 mod 307 = 17 => l0 = log28917 mod 307 = 2;

j = 1 => γ = 25, a' = 4134 mod 307 = 17 => l1 = log28917 mod 307 = 2;

x1 = 2 • 30 + 2 • 31 = 8;

q = 17; α = 1;

γ = 1; l0 = 0;

g' = 518 mod 307 = 81;

j = 0 => γ = 1, a' = 4118 mod 307 = 24 => l0 = log8124 mod 307 = 3;

x2 = 3 • 170 = 3;

Составим систему:

x ≡ 0 (mod 21)

x ≡ 8 (mod 32)

x ≡ 3 (mod 171)

Решая систему получим:

x ≡ 224(mod 306).

Проверка:

5224 mod 307 = 41.

Ответ:

log541 mod 306 = 224.


г) log5191 mod 193-1

Решение:

n = p — 1 = 192 = 26 • 31;

q = 2; α = 6;

γ = 1; l0 = 0;

g' = 596 mod 193 = 192;

j = 0 => γ = 1, a' = 19196 mod 193 = 1 => l0 = log1921 mod 193 = 0;

j = 1 => γ = 1, a' = 19148 mod 193 = 192 => l1 = log192192 mod 193 = 1;

j = 2 => γ = 25, a' = 19124 mod 193 = 1 => l2 = log1921 mod 193 = 0;

j = 3 => γ = 25, a' = 19112 mod 193 = 1 => l3 = log1921 mod 193 = 0;

j = 4 => γ = 25, a' = 1916 mod 193 = 1 => l4 = log1921 mod 193 = 0;

j = 5 => γ = 25, a' = 1913 mod 193 = 1 => l5 = log1921 mod 193 = 0;

x0 = 0 • 20 + 1 • 21 + 0 • 22 + 0 • 23 + 0 • 24 + 0 • 25 = 2;

q = 3; α = 1;

γ = 1; l0 = 0;

g' = 564 mod 193 = 84;

j = 0 => γ = 1, a' = 19164 mod 193 = 84 => l0 = log8484 mod 193 = 1;

x1 = 1 • 30 = 1

Составим систему:

x ≡ 2 (mod 26)

x ≡ 1 (mod 31)

Решая систему получим:

x ≡ 130(mod 192).

Проверка:

5130 mod 193 = 191.

Ответ:

log5191 mod 192 = 130.


д) log250 mod 419-1

Решение:

n = p — 1 = 418 = 21 • 111 • 191;

q = 2; α = 1;

γ = 1; l0 = 0;

g' = 2209 mod 419 = 418;

j = 0 => γ = 1, a' = 50209 mod 419 = 418 => l0 = log418418 mod 419 = 1;

x0 = 1 • 20 = 1

q = 11; α = 1;

γ = 1; l0 = 0;

g' = 238 mod 419 = 334;

j = 0 => γ = 1, a' = 5038 mod 419 = 300 => l0 = log334300 mod 419 = 6;

x1 = 6 • 110 = 6

q = 19; α = 1;

γ = 1; l0 = 0;

g' = 222 mod 419 = 114;

j = 0 => γ = 1, a' = 5022 mod 419 = 215 => l0 = log114215 mod 419 = 13;

x2 = 13 • 190 = 13;

Составим систему:

x ≡ 1 (mod 21)

x ≡ 6 (mod 111)

x ≡ 13 (mod 191)

Решая систему получим:

x ≡ 127(mod 418).

Проверка:

2127 mod 419 = 50.

Ответ:

log250 mod 418 = 127.