Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
диплом.doc
Скачиваний:
7
Добавлен:
11.09.2019
Размер:
719.87 Кб
Скачать

2.3. Алгоритм (де)шифрування інформації за допомогою криптографічної системи Хілла.

Розглянемо приклад використання n-грамної криптографічної системи Лестера Хілла стосовно українського алфавіту. Спробуємо зашифрувати вхідний текст "Все йде, все минає, і краю немає." (див. прикл. 1). Вставивши відповідні пропуски, отримаємо таке вхідне повідомлення:

все_йде,_все_минає,_і_краю_немає.

Розбиття цього повідомлення на 3-грами дає такий початковий текст:

все _йд е,_ все _ми нає ,_і _кр аю_ нем ає.

Потім у кожній 3-грамі початкового тексту замінимо кожну букву її числовим еквівалентом згідно з наведеною вище таблицею кодів:

Отримаємо такі 3-грами початкового тексту:

п/п

1

2

3

4

5

6

7

8

9

10

11

все

_йд

е,_

все

_ми

нає

,_і

_кр

аю_

нем

ає.

1

2

32

5

2

32

16

34

32

0

16

0

2

20

12

34

20

15

0

32

13

29

5

6

3

5

4

32

5

9

6

10

19

32

15

33

Перетворення 3-грам початкового тексту в 3-грами заши­фро­ваного тексту здійснюється за таким матричним рівнянням:

.

Отримуємо:

Шифрування

Матриця

1

2

3

4

5

6

7

8

9

10

11

Т

п/п

все

_йд

е,_

все

_ми

нає

,_і

_кр

аю_

нем

ає.

32

42

23

1

2

32

5

2

32

16

34

32

0

16

0

27

59

51

*

2

20

12

34

20

15

0

32

13

29

5

6

=

31

34

15

3

5

4

32

5

9

6

10

19

32

15

33

1019

1620

2324

1019

1861

650

2662

2007

1954

1067

1011

=

1489

1776

3773

1489

2208

738

3316

2600

3343

1492

2037

(mod 36=)

817

1460

1791

817

1637

586

2292

1719

1466

891

699

11

0

20

11

25

2

34

27

10

23

3

=

13

12

29

13

12

18

4

8

31

16

21

25

20

27

25

17

10

24

27

26

27

15

п/п

їкц

айс

сфш

їкц

цйо

впі

,дх

шзш

іьч

фнш

гтм

1

2

3

4

5

6

7

8

9

10

11

Замінюючи в 3-грамах зашифрованого тексту числа на відповідні символи, отримуємо 3-граму зашифрованого тексту:

їкц айс сфш їкц цйо впі ,дх шзш іьч фнш гтм

При дешифруванні цього зашифрованого тексту застосовується зво­рот­ний порядок дій. Перетворення 3-грами заши­фро­ваного тексту в 3-грами початкового тексту здійснюється за таким матричним рівнянням:

.

Отримуємо:

Дешифрування

Матриця

1

2

3

4

5

6

7

8

9

10

11

Т-1

п/п

їкц

айс

сфш

їкц

цйо

впі

,дх

шзш

іьч

фнш

гтм

21

4

19

1

11

0

20

11

25

2

34

27

10

23

3

12

5

3

*

2

13

12

29

13

12

18

4

8

31

16

21

=

35

26

26

3

25

20

27

25

17

10

24

27

26

27

15

758

428

1049

758

896

304

1186

1112

828

1060

432

=

272

120

466

272

411

144

500

445

353

437

186

(mod 36=)

1373

832

2156

1373

1629

798

1918

1855

1832

1923

1041

2

32

5

2

32

16

34

32

0

16

0

=

20

12

34

20

15

0

32

13

29

5

6

5

4

32

5

9

6

10

19

32

15

33

п/п

все

_йд

е,_

все

_ми

нає

,_і

_кр

аю_

нем

ає.

1

2

3

4

5

6

7

8

9

10

11

У розглянутому прикладі матриці перетворення мали розмір 33 і шифрувалися 3-грами (парами) букв. Хоча буква е може бути зашифрована по-різному в різних парах початкового повідомлення, одна і та ж пара, наприклад все, шифруватимемо завжди однаково впродовж всього початкового тексту. Система шифрування Хілла є одноалфавітною в широкому сенсі цього слова.

2.4. Використання чисел Фібоначчі в афінній криптосистемі перетворень.

Висновки до розділу.

Роз­діл 3. Криптографічний аналіз афінної системи підставлянь Цезаря та криптографічної системи Хілла

3.1. Криптографічна стійкість афінної системи підставлянь Цезаря: безпека, продуктивність, сумісність.

3.2. Криптографічна стійкість криптографічної системи Хілла: безпека, продуктивність, сумісність.

3.3. Інші варіанти алгоритму шифрування за допомогою афінної криптосистеми перетворень.

3.4. Продовження історії розвитку алгоритму.

Висновки до розділу.

Роз­діл 4. Програмна реалізація алгоритму шифрування за допомогою афінної криптосистеми перетворень

4.1. Програмна реалізація алгоритму шифрування за допомогою афінної системи підставлянь Цезаря.

Підготовка даних для розв'язання задачі

1. Шифрування інформації

Прямий хід

Перетворення вхідного повідомлення у символи таблиці ASCII

Застосування алгоритму Евкліда для знаходження коренів лінійного рівняння

Використання Афінної системи перетворень та перетворення отриманого повідомлення у символи таблиці ASCII

Зворотній хід

Використання Афінної системи перетворень та перетворення отриманого повідомлення у символи таблиці ASCII

Перетворення вхідного повідомлення у символи таблиці ASCII

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

4.2. Програмна реалізація криптографічної системи Хілла.

Підготовка даних для розв'язання задачі

1. Шифрування інформації

Прямий хід

Перетворення вхідного повідомлення у символи таблиці ASCII

Зворотний хід

Застосування алгоритму Евкліда для знаходження коренів лінійного рівняння ax+my=1.

Для знаходження коренів лінійного рівняння ax+my=1 можна використати програму "Пошук розв'язку", внаслідок чого отримано такі результати розрахунку:

Знаходження оберненої матриці шифрування та стовпця коректування

Перевірка правильності отримання оберненої матриці

Зворотній хід

Підготовка зашифрованих даних для дешифрування

Використання Афінної системи криптографічних перетворень та перетворення отриманих даних у символи таблиці ASCII

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

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

Підготовка даних для розв'язання задачі

1. Шифрування інформації

Підготовка матриць для перестановки стовпців і рядків матриць кодів символів

Прямий хід

Перетворення вхідного повідомлення у символи таблиці ASCII

Перестановка стовпців матриці кодів символів.

Перестановка рядків матриці кодів символів

Виконання афінних перетворень

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

Зворотний хід

Застосування алгоритму Евкліда для знаходження коренів лінійного рівняння .

Знаходження оберненої матриці шифрування

Перевірка правильності отримання оберненої матриці.

Знаходження оберненого стовпця коректування

Підготовка зашифрованих даних для дешифрування

Використання Афінної системи криптографічних перетворень.

Перестановка рядків матриці кодів символів.

Перестановка стовпців матриці кодів символів.

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

4.4. Програмна реалізація алгоритму шифрування на основі чисел Фібоначі в афінній криптосистемі перетворень.

Висновки до розділу.

Роз­діл 5. Економічна час­ти­на

5.1. Розрахунок витрат на розроблення програмного забезпечення

5.2. Вибір і обґрунтування аналога

5.3. Визначення комплексного показника якості проектної розробки

5.4. Визначення експлуатаційних витрат

5.5. Розрахунок вартості споживання проектного рішення

5.6. Визначення показників економічної ефективності

5.7. Висновки

Загальні висновки

1 Шифр Лестера Хілла (Lester Hill) – поліграмний шифр підстановки, який базується на лінійній алгебрі. Лестер С. Хілл винайшов цей шифр в 1929, і це був перший шифр, який давав змогу на практиці (хоча і насилу) оперувати більш ніж з трьома символами разом. Подальше обговорення шифру передбачає початкові знання матриць.

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