Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
6_4_1__Pk_PZ_4_1_редактированное.docx
Скачиваний:
34
Добавлен:
13.03.2016
Размер:
1.72 Mб
Скачать

2.7 Аналіз методiв перетворень в перспективних симетричних криптографічних системах. Приклади розв’язку задач та задачі для самостійного розв’язання

2.7.1 Приклади розв’язку задач

Задача 1.

Знайти афінне перетворення виду , деС та - константи, що мають вигляд:

, .

При цьому , якщо=71. Знайти відстань Хемінга між вхідними та вихідними елементами.

Розв’язок.

  1. Знайдемо . Для цього зведемо розв’язок порівняння

(2.57)

до розв’язку порівняння виду , яке в свою чергу можна звести до розв’язку Діафантового рівняння виду ax+by=1, тобто виділити

, (2.58)

де ,. Треба знайтитах = (-к).

Діафантове рівняння матиме розв’язок, якщо та. Подамо цей розв’язок у вигляді ланцюгового дробу. Для цього запишемо=71 у вигляді поліному:= 01000111=. Тоді наш ланцюговий дріб матиме вигляд:

* Використані тут константи С та С1 відрізняються від істинних, що наведені в п. 2.1

Тоді, якщо - порядокланцюгового дробу, а - його параметри, то

Отже, .

Перевірку правильності розв’язку рівняння (2.58) виконуємо, підставивши значення тав (2.57). Маємо

.

Дійсно

=

=.

Знайдемо лишок:

Таким чином, лишок = 1. Елементи тає зворотними.

2. Знайдемо афінне перетворення . Для цього запишемо= 01101001 у вигляді матриці-стовпця:

.

Позначимо :

Тепер знайдемо :

.

Отже, =111110102=25010.

3. Знайдемо відстань Хемінга між вхідним та вихідним елементами:

.

2.8.1 Приклади розв’язку задач

Задача 1.

Визначте допустимі параметри окремих рядків заміни (2.31) для ГОСТ 28147-89.

Розв'язок задачі.

В ГОСТ 28147-89 використовуються підстановки чотири біта в чотири біта, тобто здійснюється підстановка шістнадцяткових символів, тому n=24=16.

Вибравши параметр а=1 із співвідношень (2.32) – (2.34), маємо:

(2.59)

Таким чином рядок кожної із таблиць заміни має відповідати таким умовам:

  • число інверсій має змінюватися на відрізку від 50 до 70;

  • число циклів – від 1 до 5;

  • число зростань – від 7 до 9.

Задача 2.

Визначте параметри ключів підстановки (окремих рядків), що наведені в таблиці 2.12.

Таблиця 2.12 – Ключі підстановки

.

Розв’язок задачі.

Розглянемо перший рядок. Під інверсією розуміється загальне число символів в рядку, які менше символу, що розглядається. Далі знаходиться сума цих величин для кожного із символів рядка. Для першого символу – 14 визначаємо, що меншими від нього є числа 3, 7, 10, 1,0, 11, 12, 8, 4, 6, 9, 5, 13, 2 - всього 14 символів; для символу 3 є числа 1, 0, 2 - всього три числа. Далі для 7 - 6, 0 – 8, 1 - 1, 0 – 0, 11 - 6, 12 - 6, 15 - 7, 8 – 6, 4-1,6- 2, 9 – 2, 5 - 1,13- 1. Всього інверсій 14+3+6+8+1+0+6+6+7+6+1+2+2+1+1=62. Під циклом розуміється кількість переходів між нульовим рядком та відповідним рядком підстановки. Пояснимо на прикладі. Нехай є перестановка, що наведена у таблиці 2.13.

Таблиця 2.13 – Перестановка

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

14

3

7

10

1

0

11

12

15

8

4

6

9

5

13

2

Здійснюємо за таблицею 2.13 переходи:

0-14135-0 – це перший цикл, ми розпочали з 0 і прийшли знову в 0 – цикл замкнувся. Пояснимо цикл: нуль першого рядка замінюється на 14 рядка підстановки (другого рядка), далі 14 першого рядка на 13 другого рядка, 13 першого рядка на 5 другого рядка i 5 першого рядка на 0 другого.

Другий цикл будуємо аналогічно:

1 - 3 → 10 → 4 -1

Третій цикл:

2 - 7 → 12 → 9 → 8 →15 - 2

Четвертий цикл:

6 -11 - 6.

Таким чином, рядок ключа має 4 цикли.

Число циклів визначаємо прямо по рядку.

Збільшення такі: 37; 710; 1011; 1112; 1215; 46;6  9;

5  13.

Всього вісім збільшень.

Таким чином у розглянутої таблиці підстановки 62 - інверсії, 4 - цикли по 8 збільшень. Порівнюючи отримані значення з пороговими, що наведені в задачі 1, робимо висновок, що розглянута підстановка є випадковою.

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