Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Типичные дефекти у криптографічних протоколах

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Нині відоме понад тридцяти криптографічних протоколів, котрі вважалися безпечними. Частина носить імена своїх авторів, другу частину рекомендована міжнародними стандартами МККТТ і ISO, третя — входить у національні стандарти різних країн. Проте стандарти швидко застарівають, а протоколах виявляються дефекти різного рівня тяжкості, починаючи з недоліків типу необгрунтованої складності протоколу… Читати ще >

Типичные дефекти у криптографічних протоколах (реферат, курсова, диплом, контрольна)

Мовсковский Інститут Радіотехніки, Електроніки і АвтоМатики.

(ТЕХНИчЕСКИЙ УНИВЕРСИТЕТ).

Курсова работа.

На тему:

«ТИПИЧНЫЕ ДЕФЕКТИ У КРИПТОГРАФІЧНИХ ПРОТОКОЛАХ».

Група: ВИ-1−96.

Студент: Матюшенков А.В.

Керівник: Зязин У. П.

Москва 2000 год.

Нині відоме понад тридцяти криптографічних протоколів, котрі вважалися безпечними. Частина носить імена своїх авторів, другу частину рекомендована міжнародними стандартами МККТТ і ISO, третя — входить у національні стандарти різних країн. Проте стандарти швидко застарівають, а протоколах виявляються дефекти різного рівня тяжкості, починаючи з недоліків типу необгрунтованої складності протоколу, й до катастрофічних недоліків, роблять протокол украй небезпечний. Тут розглядаються лише кілька найяскравіших прикладів криптографічних протоколів з дефектами і атаками, використовуючи ці дефекты.

Кожен протокол спочатку коротко описується словами з допомогою малюнка для наочності ідеї протоколу, потім представляється формальний текст протоколу, уточнюючий специфікацію протоколу. Формальний текст протоколу пишеться мовою високого рівня, який отримав досить широке поширення літератури з безпеки протоколів. Нарешті, у цьому ж «мовою вказуються одна — дві атаки противника (порушника), використовують деякі дефекти протоколу. Слід зазначити, що це атаки часто виявляються можливими тільки з недостатньо повної специфікації протоколу; точніше, тому, що з багатьох можливих специфікацій протоколу реалізується найбільш природна, але невдала. Це означає, що з уважнішому виборі специфікації протоколу, з урахуванням знання негативних прецедентів, зазначені атаки, можливо, виявляться нереализуемыми чи неэффективными.

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

Класифікація криптографічних протоколов.

Протоколи шифрування / расшифрования: основу протоколу цього міститься певний симетричний чи асиметричний алгоритм шифрування / расшифрования. Алгоритм шифрування виконується на передачі відправником повідомлення, у результаті повідомлення перетвориться з відкритої форми в шифровану. Алгоритм расшифрования виконується прийомі одержувачем, в результаті чого повідомлення перетвориться з шифрованою форми відкрито. Так забезпечується властивість конфиденциальности.

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

Протоколи електронного цифрового підпису (ЭЦП): основу протоколу цього класу міститься певний алгоритм обчислення ЭЦП на передачі з допомогою секретного ключа відправника та ЭЦП прийомі з допомогою відповідного відкритого ключа, извлекаемого з відкритого довідника, але захищеного від модифікацій. У разі позитивної результату перевірки протокол, зазвичай, завершується операцією архівування прийнятого повідомлення, його ЭЦП і одержувачів відповідного відкритого ключа. Операція архівування може виконуватися, якщо ЭЦП використовується лише забезпечення властивостей цілісності і автентичності прийнятого повідомлення, але з безвідмовності. У цьому випадку, після перевірки, ЭЦП то, можливо знищена відразу чи з спливанні обмеженого проміжку часу ожидания.

Протоколи ідентифікації / аутентифікації: основу протоколу ідентифікації міститься певний алгоритм перевірки той факт, що идентифицируемый об'єкт (користувач, пристрій, процес, …), що пред’явив деяке ім'я (ідентифікатор), знає секретну інформацію, відому лише заявленому об'єкту, причому метод перевірки є, звісно, непрямим, тобто. без пред’явлення цієї секретної информации.

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

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

Протоколи аутентифицированного розподілу ключів: протоколи цього класу поєднують аутентификацию користувачів з протоколом генерації і розподілу ключів на каналі зв’язку. Протокол має двох чи трьох учасників; третім учасником є центр генерації і розподілу ключів (ЦГРК), званий для стислості сервером S.

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

На етапі генерації сервер P. S генерує числові значення параметрів системи, зокрема, свій секретний і щирий ключ.

На етапі реєстрації сервер P. S ідентифікує користувачів по документам (під час особистої явку чи через уповноважених осіб), кожному за об'єкта генерує ключову і/або ідентифікаційну інформації і формує маркер безпеки, у якому необхідні системні константи і щирий ключ серверу P. S (при необходимости).

На етапі комунікації реалізується власне протокол аутентифицированного ключового обміну, який завершується формуванням загального сеансового ключа.

Дефекти в криптографічних протоколах.

У наступних розділах розглядаються протоколів із типовими дефектами. Приклади протоколів розбиті на групи з типу використовуваної криптосистемы:

— протоколів із криптосистемой DH (Диффи, Хэллман);

— протоколів із криптосистемой RSA (Райвест, Шамир, Адлеман);

— протоколів із коммутативным шифруванням (Шамир);

— протоколи аутентифицированного розподілу ключей;

— протоколи, засновані на тождествах.

Протоколи з криптосистемой DH (Диффи, Хэллман).

Історично криптосистема DH є першою криптосистемой з відкритими ключами (КСОК), заснованої на експоненційною односпрямованої функції. Спочатку ця криптосистема використовували як схема розподілу ключів для класичної симетричній криптосистемы із секретними загальними ключами. Попередньо все користувачі мережі зв’язку одержують від серверу P. S по достовірному каналу системні константи (Р, [pic]), де просте число Р і є підстави ступеня [pic] вибираються належним образом.

Протокол ключового обміну DH.

Користувачі Проте й У формують секретний ключ парної зв’язку Kab з допомогою наступного протоколу (Рис.1).

— Користувач, А від датчика випадкових чисел (ДСЧ) генерує випадкове число Xa, обчислює [pic]и посилає його В.

— Користувач У від своєї датчика генерує випадкове число Xb, вычисляет[pic] і посилає його А.

— Користувач А, отримавши число Yb від У, вычисляет[pic].

— Користувач У, отримавши число Ya від А, вычисляет[pic].

[pic].

Рис. 1.

Числа Xa, Xb стираються. Оскільки [pic], то Kab = Kba .

Для стислості замість словесного описи зазвичай застосовується формальна запис, у якій двокрапка означає перерахування скоєних користувачем дій, стрілка означає генерацію, вилучення чи запис інформації з внутрішнім ланцюгах (каналам) користувача, подвійна стрілка означає передачу по зовнішньому відкритого каналу, потрійна стрілка — передачу по зовнішньому захищеному каналу зв’язку, наприклад, передачу по шифрованному каналу секретних даних для користувача від серверу P. S. У разі формальна запис протоколу виглядає наступним образом:

А: ДСЧ (А) [pic] Xa; [pic]; [A | B | Ya] [pic] B.

У: ДСЧ (У) [pic] Xb; [pic][pic]КЗУ (В); [pic];

[B|A|Yb] [pic] A,.

А: [pic].

Тут: | - знак приєднання, [ … ] - сформований повідомлення, КЗУ — ключове запам’ятовуючий устройство.

Передбачається, що канал безпомилково і впливів противника (Е).

Атака 1. Еb — противник Є, грає роль користувача У, перехоплює повідомлення від, А до У і формує ключ парній зв’язку Kea=Kae, причому, А вважає, що це ключ зв’язки України із У (Рис.2):

А: ДСЧ (А) [pic] Xa; [pic]; [A | B | Ya] [pic]Eb[pic]B.

Eb: ДСЧ (E) [pic] Xе; [pic][pic]КЗУ (E); [pic];

[B|A|Ye] [pic] A.

А: [pic].

[pic].

Рис. 2.

Атака 2. Еа, Еb — противник Є, грає ролі користувачів Проте й У, перехоплює повідомлення від Проте й У, формує ключі Kae і Keb парній через відкликання Проте й У шляхом ведення двох паралельних протоколів. Через війну користувачі Проте й У вважають, що вони теж мають конфіденційну зв’язок на ключі Kab; в дійсності вони встановили шифровану зв’язку з перешифрованием у противника Є. (Рис.3).

[pic].

Рис. 3.

А: ДСЧ (А) [pic] Xa; [pic]; [A | B | Ya] [pic]Eb.

Eb: ДСЧ (E) [pic] Xе; [pic][pic]КЗУ (E); [pic];

[B|A|Ye] [pic] A.

Ea: [A|B|Ye] [pic] B ,.

А: [pic].

У: ДСЧ (У) [pic] Xb; [pic][pic]КЗУ (В); [pic]; [B|A|Yb] [pic] Ea,.

Ea: [pic].

Протокол аутентифицированного ключового обміну DH.

Після набуття системних констант [pic] від серверу P. S користувачі А, В, С,… генерують від ДСЧ секретні ключі Пхе, Хb, Xc,…, обчислюють відкриті ключі [pic]; [pic]; [pic]; … і поміщають в захищений від модифікацій загальнодоступний довідник {Ya, Yb, Yc, …}. (Рис.4).

[pic].

Рис. 4.

Формальна запис протокола:

У: ДСЧ (У) [pic] tb; [pic]; [B|A|Z] [pic] A.

A: ДСЧ (A) [pic] ta; [pic];

[pic]; [pic];

[A|B|U|V] [pic]канал [[pic]|[pic] |[pic]|[pic]] [pic]B.

У: [pic]=A (?); [pic]=B (?);[pic]; [pic].

Тут знак «~» означає автоматичну можливість спотворення каналом чи модифікації противником, знак «(«означає спорудження до рівня, [pic] - зворотний до tb по mod (p-1), знак (?) після рівності означає, що перевіряється виконання рівності: при невиконанні протокол розривається, при виконанні здійснюється перехід до наступній операции.

Через війну ключ [pic] при [pic][pic] U відрізняється від Kab, якщо виконується перевірка автентичності [pic][pic]. Звідси следует:

Атака 1. Противник Еа, грає роль користувача А, підміняє в каналі повідомлення [A|B|U|V] на [A|B|[pic]|[pic]] з вимогою [pic]. У результаті користувач У формує помилковий ключ [pic][pic]Kab.

Атака 2. Противник Еb, грає роль У, посилає Кількість [pic], на що той за протоколом відповідає числами (U, V), де [pic] Через війну противник Є встановлює з, А ключ парної зв’язку Kae, переданий відкритого каналу зв’язку, причому, А вважає, що це ключ для зв’язки Польщі з В.

Протоколи з криптосистемой RSA.

Попередньо все користувачі А, У, З, … мережі зв’язку генерують особисті модулі na, nb, nc, …, кожен із яких має структуру: n=pq твори двох простих чисел p і q (na=pa[pic]qa; nb=pb[pic]qb; nc=pc[pic]qc; …), вибраних міг би належно [ 2 ]. Далі кожний користувач відповідним чином вибирає пару чисел (e, d), які відповідають умові [pic], де [pic] Далі числа (n, e) як відкритого ключа вирушають по достовірному каналу в загальнодоступний довідник. Числа (p, q, [pic], d) користувачі зберігають в секрете.

Протокол шифрування та цифрового підписи по RSA.

Цей протокол рекомендований МККТТ, рекомендація Х.509. Дефект протоколу полягає у неправильному порядку операції шифрування і підписування: правильно спочатку підписати, потім шифрувати. У формальної записи протоколу застосовуються такі обозначения:

М — передане повідомлення від, А до В;

Сb — шифроване, А повідомлення М на ключі eb одержувача В;

Сba — повідомлення Сb, підписаний На ключі da відправника А.

[pic] [pic].

[pic] [pic].

Передбачається, що nb.

Показати весь текст
Заповнити форму поточною роботою