Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
навч пос захист информ_откор Білан.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
4.24 Mб
Скачать

6.2.2. Лінійний криптоаналіз блоково-динамічного алгоритму шифрування

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

Лінійний криптоаналіз вимагає значного числа відкритих текстів.

Саме тому всі розроблені методи шифрування повинні бути перевірені на надійність всіма можливими методами аналізу на стійкість. Часто лінійний криптоаналіз є найбільш ефективним методом. Лінійний криптоаналіз вимагає значного числа відкритих текстів [9].

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

Лінійний криптоаналіз полягає в складенні та розв’язанні системи рівнянь виду

T(x,k)=y,

де x – відкрите повідомлення; y – шифрований текст; T – шифр; k – ключ.

У випадку блоково-динамічного шифру ключ k розгортається перед початком шифрування у P-блок та S-блоки. При чому P-блок містить N

32-бітних елементів

T(x1,P0,S0,0)=y1;

(x2,P0,S0,1)=y2;

...

T(x256,P0,S0,255)=y256;

T(x257,P1,S0,0)=y257;

T(x258,P1,S0,1)=y258;

...

T(x512,P1,S0,255)=y512;

...

T(xkx,PN,S3,255)=ykx..

У результаті проведеного лінійного криптоаналізу встановлено, що відкриття повного 16-прохідного блоково-динамічного шифрування вимагає порядку 144 Кбайт відкритого тексту та 2,87 Гбайт оперативної пам’яті. Визначено, що максимальна кількість проходів, при якій доцільно застосовувати лінійний криптоаналіз блоково-динамічного шифрування дорівнює nmax=9 (рис. 6.8).

Рис. 6.8. Графічне визначення максимальної кількості проходів, при якій доцільно застосовувати лінійний криптоаналіз блоково-динамічного шифрування

6.2.3. Диференціальний криптоаналіз блоково-динамічного алгоритму шифрування

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

Згідно з джерелом [1] для взлому блоково-динамічного шифру методом диференціального аналізу необхідно 224 пар відкритого тексту. Для 4-раундового блоково-динамічного шифру трудомісткість складає 232, при 6-ти раундах – трудомісткість 267, при 7-ми раундах трудомісткість 2131. Результати атак на варіанти блоково-динамічного шифру з різною кількістю раундів доцільно представити у вигляді табл. 6.3.

Таблиця 6.3

Трудомісткість розкриття блоково-динамічного шифру з числом раундів

4-7 методом диференціального криптоаналізу

Кількість раундів, r

4

5

6

7

Трудомісткість, Е

232

251

267

2131

На основі даних табл. 6.3 проведений регресійний аналіз залежності трудомісткості Е від кількості раундів r при використанні диференціального криптоаналізу блоково-динамічного шифрування (табл. 6.4.).

Таблиця 6.4

Трудомісткість розкриття блоково-динамічного шифру з числом раундів 4-16 методом диференціального криптоаналізу

У результаті проведеного диференціального визначено що кількість відкритих текстів, необхідних для диференціального криптоаналізу блоково-динамічного шифру, в кількості 29...2129, залежно від кількості раундів. Визначено, що його доцільно проводити з кількістю раундів, яка менша або дорівнює 5 (рис. 6.9).

Рис. 6.9. Графік залежності кількості відкритих текстів kВТ, необхідних для взлому блоково-динамічного шифру методом диференціального криптоаналізу залежно від кількості раундів r