- •08-20.Кгка.010.20.106 пз
- •Розробка криптопротоколу
- •Аналіз сучасного стану питання та обґрунтування теми
- •Поняття протоколів автентифікації та основні вимоги до них
- •Опис протоколу
- •Математичний опис алгоритму
- •Аналіз криптопротоколу
- •Постулати і правила ban-логіки
- •Аналіз криптопротоколу з використанням ban-логіки
- •Розробка структури спеціалізованого процесора
- •Опис операційного автомату
- •Розробка структурної схеми спеціалізованого процесора
- •Визначення технічних характеристик спеціалізованого процесора
- •Програмна реалізація моделі спеціалізованого процесора
- •Обґрунтування вибору програмних засобів
- •Розробка блок - схеми керуючої програми
- •Програмна реалізація основних функцій програми
- •Результати тестування програми
- •Інструкції по роботі з програмою
- •Інструкція з технічного обслуговування
- •Інструкція системного програміста
- •Інструкція програміста
- •ВИсновки
- •Технічне завдання
- •08-20.Кгка.010.20.106 тз
Опис протоколу
Схема шифрування Pohlig – Hellman являє собою несемитричний алгоритм, так як використовуються різні ключі для шифрування і розшифрування. В той же час дану схему не можна віднести до класу криптосистем з відкритим ключем, тому що ключі шифрування і розшифрування легко виводяться один з одного. Тому обидва ключі потрібно тримати у секреті [6].
Криптограма С і відкритий текст Р визначаються з співвідношень:
E
D
де ed=1 (mod – модуль складеного числа).
Число n не визначається через два великих простих числа, воно повинне залишатись частиною секретного ключа. Якщо хто-небудь дізнається значення е і n, він зможе обрахувати значення d.
Не знаючи значення е чи d, зловмисник буде зобов'язний обчислити значення:
Для представлення протоколу введемо наступні позначення:
А, В – суб’єкти, що встановлюють зв’язок;
IА– ідентифікатор сторони А;
IB– ідентифікатор сторони В;
n – модуль;
e – відкритий ключ;
d – закритий ключ;
Е – функція шифрування.
D– процес розшифрування.
СА– повідомлення від сторони А стороні В.
С’А- зашифроване повідомлення сторони В стороні А.
Ініціатором встановлення зв’язку будемо вважати суб’єкт А. Процес автентифікації починається з одержання стороною В відкритого повідомлення від сторони А:
А → В : СА
Суб’єкт В шифрує отримане повідомлення та відправляє результат стороні А:
В → А : С’А
Суб’єкт А в свою чергу розшифровує повідомлення, порівнює його з початковим відкритим повідомленням. Якщо вони співпадають, то автентифікацію пройдено успішно, якщо ж вони різні, то автентифікацію не пройдено.
Математичний опис алгоритму
Алгоритм Pohlig – Hellman - детермінований алгоритм дискретного логарифмування в множині вирахувань по модулю простого числа. Для модулів спеціального вигляду даний алгоритм є поліноміальним. Дискретне логарифмування - завдання ззгортання функції в деякій кінцевій мультиплікативній групі G. Важливою особливістю цього методу є те, що для простих чисел спеціального вигляду, можна знаходити дискретний логарифм за поліноміальний час.
Хай задано порівняння:
(1)
і відоме розкладання p – 1 на прості множники:
Необхідно знайти натуральне число x, що задовільняє порівнянню (1). Відмітимо, що на практиці завжди розглядається випадок, коли а - первісний корінь по модулю р. В цьому випадку порівняння (1) має розв’язок при будь-якому b, взаємно простому з р. Суть алгоритму в тому, що досить знайти x по модулю для всіх i, а потім розв’язати початкове порівняння за допомогою китайської теореми про лишки. Щоб знайти x по кожному з таких модулів, потрібно вирішити порівняння:
(2)
Дане порівняння вирішується за поліноміальний час у випадку, якщо qi - невелике (тобто, не перевершує (log p) c, де c - деяка константа).
Аналіз криптопротоколу
Постулати і правила ban-логіки
В основі BAN-логіки – логіка, розроблена для аналізу властивостей «знання» і «довіри» роботи криптопротоколу в цілому і його окремих частин. Використання BAN-логіки дозволяє знайти відповіді на наступні питання:
яких результатів можна досягти в кінцевому рахунку за допомогою криптопротоколу;
чи вміщуються в даному криптопротоколі надлишкові кроки, без яких зберігалася би безпека криптопротоколу на попередньому рівні;
чи необхідно зашифровувати повідомлення, чи можна його передати у відкритому вигляді;
чи потребує даний криптопротокол включення додаткових кроків.
BAN-логіка використовується для аналізу властивостей знання і довіра роботи криптопротоколу в цілому, або його окремих етапів [7].
В BAN-логіці застосовують такі постулати:
P believes X – Р вірить у те, що Х – істинно;
P sees X – хто-небудь послав Р повідомлення, що містить Х і Р може прочитати і повторити Х (можливо після розшифрування);
P said X– Р коли-набудь посилав повідомлення, що містить Х і при цьому Р довіряв Х, в момент його передавання;
P control X – Р має права на Х;
#X– Х не було використано в попередніх ітераціях протоколу;
–P i Q розділяють між собою ключ К і відповідно P i Q довіряють один одному;
–Р має відкритий ключ К, що відповідає секретному ключу К-1, який ніколи не буде розкритий іншими учасниками криптопротоколу;
–секретна формула Х відома тільки P i Q і вони можуть використовувати її для ідентифікації один одного;
{X}K fromP – Х зашифровано на ключі К, що належить Р.
Правила BAN-логіки:
–якщо Р вірить, що Q і Р розділяють між собою секретний ключ К, і Р бачить повідомлення Х, зашифроване на ключі К, то Р вірить, що Q послав Х;
–якщо Р вірить, що Q має права на Х і Р вірить Q , який довіряє Х, то Р довіряє Х.
–Якщо Р вірить у те, що Х до цього не використовувалося і що Q , якому він вірить послав Х, то Р довіряє Х.
Порядок аналізу:
представлення протоколу в ідеалізованій формі;
присвоєння початкових значень;
застосування логічних формул до станів протоколу, для одержання тверджень про стани системи після кожного кроку протоколу;
застосування логічних постулатів до початкових значень і послідовності тверджень, для вивчення довіри частинам протоколу.