Реферати українською » Математика » ТИПОВІ ДЕФЕКТИ В криптографічних протоколів


Реферат ТИПОВІ ДЕФЕКТИ В криптографічних протоколів

Страница 1 из 2 | Следующая страница

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

 (технічний університет).


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

На тему:

 

“>ТИПИЧНЫЕДЕФЕКТЫ УКРИПТОГРАФИЧЕСКИХПРОТОКОЛАХ”.


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

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

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

Москва 2000 рік.

Запровадження.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Користувачі А і У формують секретний ключ парній зв'язку K>ab з допомогою наступного протоколу (Мал.1)

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

- Користувач У від своєї датчика генерує випадкове число Xb, обчислює і посилає його А.

- Користувач А, отримавши число Yb від У, обчислює.

- Користувач У, отримавши число Ya від А, обчислює.

Мал.1

>Числа Xa, Xb  стираються. Оскільки , то K>ab = K>ba .

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

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

У :ДСЧ (У) Xb; >КЗУ(В); ;

[BAYb] A,

А :

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

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

Атака 1. Єb - противник Є, грає роль користувача У, перехоплює повідомлення від А до У і формує ключ парної зв'язку K>ea=K>ae, причому А вважає, що це ключ через відкликання У (Рис.2):

А :ДСЧ (А) Xa; ; [A B Ya] EbB

Eb :ДСЧ (E) Xе; >КЗУ(E); ;

[BAYe] A

А :

Рис.2

Атака 2. Єа, Єb - противник Є, грає ролі користувачів А і У, перехоплює повідомлення від А і У, формує ключі K>ae і K>eb парної зв'язки Польщі з А і У шляхом ведення двох паралельних протоколів. Через війну користувачі А і У вважають, що вони теж мають конфіденційну зв'язок на ключі K>ab; насправді вони встановили шифровану зв'язку зперешифрованием противника Є. (>Рис.3).

>Рис.3

 

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

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

[>BAYe] A

Ea : [>ABYe] B ,

А :

У :ДСЧ (У) Xb;КЗУ(В); ; [>BAYb] Ea,

Ea :

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

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

>Рис.4

 

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

У :ДСЧ (У)tb ; ;  [BAZ] A

A :ДСЧ (A)ta ; ;

; ;

[ABUV] канал [║ ║] B

У: =A(?); =B(?);;

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

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

Атака 1. Противник Єа, грає роль користувача А, підміняє в каналі повідомлення [ABUV]  на [AB║] з вимогою . Через війну користувач У формує помилковий ключ K>ab.

Атака 2. Противник Єb, грає роль У, посилає А число , потім той за протоколом відповідає числами (UV), де Через війну противник Є встановлює з А ключ парної зв'язку K>ae, переданий відкритого каналу зв'язку, причому А вважає, що це ключ для через відкликання У.

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

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

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

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

М - передане повідомлення від А до У;

Зb - шифроване А повідомлення М на ключі eb одержувача У;

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

    

   

Передбачається, що nb<na. Обгрунтування двох рівностей полягає у наступних перетвореннях:

>Атака1. Певний користувач Х (порушник) перехоплює повідомлення (>Рис.5), знімаєЭЦП користувача А, користуючись відкритим ключем (na, ea).

>Рис.5

Отримане шифроване повідомлення Зb він підписує своєму секретному ключі >dx, цим привласнюючи авторство на повідомлення М. Отримавши повідомлення , користувач У знімає підпис Х з допомогою відкритого ключа (nx, ex), розшифровує своєму секретному ключі >db і повідомлення М, яке вважає повідомленням від Х, але не А, якщо саме повідомлення М зовсім позбавлений ознак А.

Зауваження: якщо na=nb, то операції шифрування і підписування стаютьперестановочними, отже зняттяЭЦП стає можливим незалежно від порядку операцій.

Протокол шифрування поRSA спільною для модулі

Нехай повідомлення М шифрується покриптосистемеRSA із загальним модулем “n”. Користувачі А і У отримують шифровані повідомлення ,

>Атака1. Противник Є перехоплює шифровані повідомлення За і Зb. Знаючи відкриті ключі  ea і eb, противник за алгоритмом Евкліда знаходить числа x, y отже >xea +yeb = 1 (запросто числа ea і eb  взаємно прості). Тоді . Через війну противник обчислює повідомлення М, знаючи лише відкриті ключі ea, eb  і модуль n, але з знаючи модуля , що рівносильне знанняфакторизации >n=pq.

Протоколи зкоммутативним алгоритмом шифрування

Алгоритм шифрування називаєтьсякоммутативним, якщо результат послідовного шифрування повідомлення М на ключах До1 і До2 залежить від порядку використовуваних ключів: >К2{К1{M}}= =>K1{K2{M}}, де >K{M} - результат шифрування M на ключі До. Прикладамикоммутативного алгоритму шифрування є алгоритм >DH, алгоритм >RSA при загальному модулі, алгоритмгаммирования (складання по модулю).Коммутативность алгоритму шифрування тут є наслідкомкоммутативности операцій модульного множення і складання.

>Коммутативний алгоритм шифрування привабливий тим, що користувачам непотрібно встановлювати загальний ключ парній зв'язку, а досить генерувати особисті секретні ключі. Ідея конфіденційного зв'язку без попередньої домовленості про ключі шифрування найяскравіше демонструється прикладом Шаміра (>Рис.6).

>Трехшаговий протокол шифрування Шаміра

>Рис.6

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

A:ДСЧ (А) x; М x У

У:ДСЧ (У) y; (М x) y A

A: (М x y) x = M y B

B: (M y) y = M

Атака 1. Противник Є перехоплює все три сполучення каналі зв'язку й складає їх заmod2. У результаті виходить М у вигляді.

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

>Трехшаговий протокол зкоммутативним шифруванням

У випадкутрехшаговий протокол шифрування Шаміра має таку формальну запис (>Рис.7):

А: Ka { M }B

B:

A:

B:

>Рис.7

Ведучий А протоколу застосовує спочатку операцію шифрування на ключі Доа, потім операціюрасшифрования з ключем ;

Ведений B застосовує спочатку операціюрасшифрования з ключем До, потім операцію шифрування з ключем Доb. Передбачається, що з будь-якого М і До має місце: До-1{>K{M}}=K{K-1{M}}.

Атака 1. Рефлексия

Противник Єb, грає роль У, повертає А його перше повідомлення. Діючи за протоколом, А застосовує щодо нього операцію , й у каналі виявляється відкрите повідомлення М.

А: 

Атака 2. (Паралельний протокол)

Противник Єb повертає А його перше повідомлення над ролі відповіді, бо як початок паралельного протоколу із головним Єb і відомим А. Передбачається, що з роботі у мережі так можна (>Рис.8).

>Рис.8

I протокол ( А  Єb )

II протокол ( Єb   А )

1. А: Доа{>M}Еb

 

 

1’. Єb: Ka{>M}A

 

2’. A: {Ka{>M}}=MЕb

2. Єb: A

 

3. A: {b

 

3’. Єb : {}A

4. A: Доа{{}}=

4’. ___________________

Через війну противник Є отримує повідомлення М, призначене для У, а користувач А отримує хибне повідомлення , нібито від У.

Атака рефлексії і з паралельним протоколом є сильним зброєю противника, з якою важко запропонувати просту захист. Можливі також атаки з кількома

Страница 1 из 2 | Следующая страница

Схожі реферати:

Навігація