
- •Теоретичні відомості
- •1.1. Історія виникнення та розвитку des.
- •1.2.Опис алгоритму.
- •1.3.Компоненти алгоритму des.
- •1.4.Робота алгоритму.
- •1.5.Ключі в des.
- •2.Елементи теорії інформації.
- •3.Різнецевий криптоаналіз.
- •4.Робота з оболонкою.
- •5.Методика аналізу впливу бітів ключа.
- •Хід роботи
- •Лабораторна робота №2 Дослідження впливу ключів на криптостійкість des Мета роботи
- •Хід роботи
- •Лабораторна робота №3 Дослідження впливу s-блоків на криптостійкість des Мета роботи
- •Хід роботи
- •Література
- •79008, М. Львів, пл. Митна, 1
3.Різнецевий криптоаналіз.
В 1990 році Eli Biham i Adi Shamir впровадили різнецевий криптоаналіз. Це був зовсім новий метод криптоаналізу, до того часу ніде не опублікований. Застосовуючи цей метод, Eli Biham i Adi Shamir здійснили атаку на DES, що була більш ефективною, ніж брутальна атака.
Різнецевий криптоаналіз порівнює пари текстів явних і пари шифрограм. Коли говорити більш детально, то при застосуванні цього методу порівнюються пари шифрограм, для яких пари текстів явних різняться в незначній мірі. Такі два тексти явні можуть бути вибрані випадково, але повинна виконуватись умова невеликої різниці між текстами.
Певні розбішності в текстах явних мають високу ймовірність того, що вони проявляться в певних розбіжностях між шифрограмами.
Якщо для прикладу різниця між парами текстів явних в шістнадцятковому записі рівна 0080820060000000, то, поминаючи початкову перестановку в DES, по трьох циклах ймовірність того, що різниця між відповідними шифрограмами буде надалі 0080820060000000 рівна (14/64)2, або близько 5%. Biham i Shamir знайшли більше таких закономірностей. Дивись рисунок
Рис. 3.1. Різнецевий криптоаналіз.
В різнецевому криптоаналізі користуються цими закономірностями для надання проценту ймовірності всім можливим ключам і для локалізації найбільш ймовірного і правдоподібного ключа. Тобто, атака ця є систематичною і її результат залежить від певних умов.
Результат атаки є дуже залежний від структури S-блоків, так само як і для інших подібних алгоритмів з сталими структурами типу S-блоків.
В плані стійкості проти різнецевої атаки DES може бути покращений за допомогою введення більшої кількості циклів. Так, наприклад, DES з 17-ма чи 18-ма циклами є таким стійким до різнецевого криптоаналізу, як і до простого підбору ключів, а з 19-ма простий підбір ключів може бути ефективнішим, ніж різнецевий криптоаналіз.
Тут слід звернути увагу на наступні моменти:
Різнецева атака є в значній мірі теоретичною. Щоб отримати необхідну кількість вхідних даних, треба шифрувати потік даних 1.5 Мбіт/с на протязі трьох років.
Крім того, це атака при вибраному тексті явному. Тобто треба вибирати пари текстів-шифрограм, які можуть бути використані для аналізу.
Поєднання цих факторів для DES дає наступний результат : різнецевий криптоаналіз потребує 255.1 операцій, а брутальна атака - 255,тобто брутальна атака виявляється ефективнішою, ніж різнецева.
4.Робота з оболонкою.
В програмі існує дві системи меню : глобальне меню і меню лабораторних робіт і крім того існує система клавіш управління (дивись рисунок 4.1).
Рис.4.1.Система меню і підменю.
Доступні меню і іх призначення
1.Файл - меню призначене для здійснення операцій з файлами
Доступні позиції:
Відкрити файл для шифрування - настроює оболонку на джерело інформації.
Відкрити файл для дешифрування - настроює оболонку на джерело шифрограми.
Відкрити файл компонентів DES - здійснює настройки алгоритму за типом користувача. По замовчуванню використовуються компоненти стандартного DES.
Вихід - вихід з оболонки.
Вигляд меню Файл наведено на рисунку 4.2
Рис.4.2. Меню Файл.
|
Рис. 4.3 Меню Редагування. |
2.Редагування - меню, призначене для надання можливості користувачеві модифікувати складові алгоритму за своїм вибором.
Вигляд меню Редагування наведено на рисунку 4.3
Доступні позиції:
Джерело - редагування вмісту джерела. Редагування здійснюється наступним чином:
Редігування - Джерело - “Клік” мишкою в області виведення значення джерела - висвічується червона рамочка - можна редагувати -по закінченні натиснути “ENTER” - “OK”. Вигляд діалогового блоку наведено на рисунку 4.4.
Ключ - редагування ключа Редагування здійснюється наступним чином:
Редігування - Ключ - “Клік” мишкою в області виведення значення ключа- висвічується червона рамочка - можна редагувати -по закінченні натиснути “ENTER” - “OK”. Вигляд діалогового блоку наведено на рисунку 4.5.
Рис.4.4. Діалоговий блок “Редагування вхідних даних”
|
Рис.4.5. Діалоговий блок “Редагування Ключа”
|
Таблиця роутінгу ключа - редагування Таблиці роутінгу ключа. Редагування здійснюється наступним чином:
Редaгування - Таблиця роутінгу ключа - “Клік” мишкою в області виведення значення елемента таблиці роутінгу ключа- висвічується червона рамочка - можна редагувати -по закінченні натиснути “ENTER” - “OK”. Можливі значення вводу - 1,2,3,4 Вигляд діалогового блоку наведено на рисунку 4.6
Таблиця формування робочих ключів - редагування Таблиці формування робочих ключів . Редагування здійснюється наступним чином:
Редагування - Таблиця формування робочих ключів - “Клік” мишкою в області виведення значення елемента таблиці формування робочих ключів - висвічується червона рамочка - можна редагувати -по закінченні натиснути “ENTER” - “OK”. Можливі значення вводу - 1-100. Вигляд діалогового блоку наведено на рисунку 4.7.
Рис.4.6. Діалоговий блок “Редагування Таблиці роутінгу ключа.
|
Рис.4.7. Діалоговий блок “Редагування Таблиці формування робочих ключів.
|
3. Опції - меню, призначене для настройки параметрів самої оболонки.
Доступні позиції:
Кількість циклів - зміна кількості циклів алгоритму. Зміна кількості циклів алгоритму відбувається за допомогою натискання клавіш “вверх” і “вниз”, що в свою чергу призводить до збільшення (зменшення) значення кілкості циклів на одиницю.
Після закінчення редагування слід натиснути “OK”. Вигляд діалогового блоку настройки кількості циклів наведено на рисунку 4.10.
Затримка переміщень - чисто сервісна опція, яка задає час затримки при переміщенні об”єктів в лабораторних роботах. Зміна величини затримки відбувається за допомогою натискання клавіш “вверх” і “вниз”, що в свою чергу призводить до збільшення (зменшення) значення затримки на одиницю.
Після закінчення редагування слід натиснути “OK”. Вигляд діалогового блоку настройки величини затримки наведено на рисунку 4.11.
|
|
Робота з оболонкою відбувається в вигляді виконання лабораторних робіт. Оболонка дає можливість користувачу в діалогових режимах змінювати параметри алгоритму і опції самої оболонки.
При роботі з оболонкою необхідно пама»ятати наступне : оскільки платформа комп»ютера, на якому стоїть оболонка, може змінюватись, то передбачена можливість за допомогою зміни швидкості переміщень настроювати її на зручну для пергляду чи аналізую.
При виконанні робіт
рекомендується спочатку виставляти
досить велику затримку з иетою якнайкраще
побачити всі деталі виконання алгоритму.
Коли іде перехід до дослідницької
частини, слід виставити затримку
переміщення в нуль і натиснути клавішу
,
що призведе до виконання роботи без
покрокового режиму.
Після кожної зупинки
в ході виконання програми необхідно
натискати клавішу
для переходу на наступний крок.
Вихід з оболонки чи
з лабораторної роботи здійснюється
шляхом натискання клавіші
.