Смекни!
smekni.com

Розробка імовірнісної моделі криптографічних протоколів (стр. 7 из 19)

Властивості криптопротоколів:

- кожен учасник протоколу повинен знати протокол і послідовність дій, що становлять його;

- кожен учасник протоколу повинен погодитися слідувати протоколу;

- протокол повинен бути несуперечливим, кожна дія повинна бути визначена так, щоб не було можливості нерозуміння;

- протокол повинен бути повним, кожній можливі ситуації повинна відповідати певна дія.

Криптографічний протокол – це протокол, що використовує криптографію. Учасники протоколу можуть буті друзями і довіряти один одному або ворогами і не вірити один одному. Криптопротокол містить деякий криптоалгоритм, але, взагалі кажучи, прізначення протоколу виходіть за рамки простої безпеки. Учасники можуть захотіти поділитися секретом, разом генерувати випадкову послідовність, підтвердити один одному свою достовірність або підписати контракт в один і той же момент часу.

В крипптопротоколах використовується загальне правило: «Неможливо зробити або дізнатися більше, ніж це визначене в протоколі».

Умови криптографічного завдання визначають особливості відповідного протоколу.

Якщо взаємодіючі сторони довіряють один одному і готові спільно вирішувати криптографічну задачу, то в цьому випадку використовуються протоколи без посередника (двосторонні протоколи).

Якщо між сторонами можуть виникати розбіжності, то використовуються протоколи з посередником (незацікавленою довіреною стороною), які називають трибічними протоколами. Завдання посередника – забезпечити виконання всіх етапів протоколу, аж до його завершення.

Але при реалізації цих протоколів існують деякі труднощі:

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

- Комп’ютерна мережа повинна забезпечити підтримку посередника.

- Існує затримка, що властива всім протоколам із посередником.

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

- Через те, що в мережі всі повинні довіряти посереднику, він є слабким місцем мережі при спроби злому.

Існують і протоколи з арбітром, де під арбітром розуміється посередник особливого типа: він не обов'язково бере участь у виконанні кожного етапу протоколу, він запрошується тільки для перевірки коректності виконання протоколу.

Найпривабливіший різновид протоколів – самодостатні протоколи, конструкція яких забезпечує контроль за вірним виконанням протоколу. Для виконання цього протоколу не потрібен ані посередник, ані арбітр, що вирішує спори. Сама побудова протоколу забезпечує відсутність спорів. Якщо одна із сторін намагатиметься зшахраювати, шахрайство буде миттєво виявлено іншою стороною, і протокол припинить виконуватись.

В ідеальному випадку будь-який протокол повинен бути самодостатнім, але, на великий жаль, не існує самодостатніх протоколів для кожної ситуації.

Люди можуть використовувати безліч способів розкрити протокол. Як вже було, зазначено існує пасивне і активне розкриття криптопротоколів.

При пасивному розкритті зловмисник не впливає на протокол. Все, що він може зробити – прослідкувати за протоколом и добути інформацію. Через те, що пасивні атаки важко виявити, протоколи намагаються попереджувати, а не виявляти їх.

При активному розкритті криптопротоколів зловмисник намагається змінити протокол для власної потреби. Він може видати себе за іншого, ввести нові повідомлення в протокол, замінити одне повідомлення іншим, повторно передати старі повідомлення, розірвати канал зв’язку або змінити інформацію, що зберігається в комп’ютері. Цей вид атак залежить від типу мережі.

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

Активні атаки є більш серйозними, особливо по відношенню до протоколів, в яких сторони не довіряють один одному. Зломщик не обов’язково хтось зовсім сторонній, він може бути зареєстрованим користувачем системи і навіть системним адміністратором.

Як приклад роботи протоколу приведемо організацію секретного зв’язку з використанням симетричної криптосистеми. Діючими особами є відправник, адресат, пасивний супротивник та ін. Задача протоколу – передати таємне повідомлення Х від відправника до адресату. Послідовність виглядає наступним чином:

1. Відправник і адресат домовляються про використовувану симетричну криптосистему, тобто про сімейство відображень Е =

, k ÎК, де К – простір ключів.

2. Відправник і адресат домовляються про секретний ключ зв’язку k, тобто про використовуване відображення ЕÎЕк.

3. Відправник шифрує відкритий текст X за допомогою відображення Ек, тобто створює криптограму Y = Ек (Х).

4. Криптограма Y передається по лінії зв'язку адресату.

5. Адресат розшифровує криптограму Y, використовуючи той же
ключ k і відображення Ек-1, зворотне до відображення Ек, і читає повідомлення X:

Х = Ек-1(Y).

Пояснимо важливі особливості даного протоколу за допомогою схеми, приведеної на рис. 1.4.

Крок 2 протоколу реалізується або за допомогою посередника, третьої сторони, яку можна умовно назвати центром генерації і розподілу ключів (ЦГРК), або функції ЦГРК покладаються на абонентів. У першому випадку криптографічний протокол зв'язку шифру називають трибічним, а в другому випадку – двостороннім.


Захищений

канал зв’язку

Х k k Х

Лінія зв’язку

Х

k

Рис. 1.4

Істотною особливістю протоколу є секретність ключа k, який передається відправнику і адресату або у відкритому вигляді по каналу зв'язку, захищеному від дій криптоаналітика, або в шифрованому вигляді по лінії зв'язку.

Захищеній канал зв’язку може мати відносно невисоку пропускну спроможність, але повинен надійно захищати ключову інформацію від несанкціонованого доступу. Ключ повинен залишатися у секреті до, під час і після реалізації протоколу, інакше зловмисник, заволодівши ключем, може розшифрувати криптограму і прочитати повідомлення. Відправник і адресат можуть виконати крок 1 протоколу публічно (секретність шифрсистеми необов'язкова), але крок 2 вони повинні виконати таємно (секретність ключа обов'язкова).

Така необхідність викликана тим, що лінії зв'язку, в особливості протяжні, уразливі з погляду втручання пасивного і активного супротивників.

Пасивний супротивник (криптоаналітик), бажаючи дістати доступ до повідомлення X, контролює лінію зв'язку на кроці 4 протоколу. Не втручаючись в реалізацію протоколу, він перехоплює криптограму Y з метою розкриття шифру.

Розробляючи криптосистему, криптограф звичайно виходить з наступних припущень про можливості криптоаналітика:

1) криптоаналітик контролює лінію зв'язку;

2) криптоаналітику відомий пристрій сімейства Е відображень шифру;

3) криптоаналітику невідомий ключ k, тобто невідомо відображення Ек, яке використане для отримання криптограми Y.

У цих умовах криптоаналітик намагається вирішити наступні завдання, які називаються завданнями дешифрування:

1. Визначити відкритий текст X і використаний ключ k по перехопленій криптограмі Y, тобто побудувати алгоритм дешифрування y такий, що

y( Y) = (Х, k).

2. Визначити використаний ключ по відомим відкритому і шифрованому текстам, тобто побудувати алгоритм дешифрування такий, що

j(Х, Y) = к.

Така постановка задачі має сенс, коли криптоаналітик перехопив декілька криптограм, одержаних з використанням ключа k, і має в своєму розпорядженні відкриті тексти не для всіх перехоплених криптограм. В цьому випадку, вирішивши завдання дешифрування другого типу, він прочитає всі відкриті тексти, зашифровані з використанням ключа k.

3. Визначити використовуваний ключ k по спеціально підібраному відкритому тексту X і по відповідному шифрованому тексту Y, тобто побудувати алгоритм дешифрування jХ такий, що