Смекни!
smekni.com

Програмна реалізація криптографічного алгоритму RC5 (стр. 1 из 3)

НАЦІОНАЛЬНИЙ АВІАЦІЙНИЙ УНІВЕРСИТЕТ

Інститут інформаційно-діагностичних систем захисту інформації

Факультет телекомунікацій та захисту інформації

Кафедра комп'ютеризованих систем захисту інформації

КУРСОВА РОБОТА

СПЕЦІАЛЬНОСТІ 7.160105

"Захист інформації в комп’ютерних системах і мережах"

Тема: Програмна реалізація криптографічного алгоритму RC5

Київ 2010


Зміст

Перелік умовних позначень, символів, одиниць, скорочень і термінів

Вступ

1. Опис об'єкту, що потребує захисту: операційне середовище, тип програмного забезпечення, інші характеристики комп'ютерної системи

2. Аналіз існуючого стану захисту та теоретичне обґрунтування необхідності підвищення рівня безпеки

3. Аналіз типів можливих погроз інформаційної безпеці та визначення рівня можливостей порушника

4. Клас засобів КЗІ

5. Блок-схема алгоритму функціонування прикладної програми криптозахисту

6. Листінг тесту програми

7. Інструкція зі користування програмою

Висновки та рекомендації

Список використаної літератури


Перелік умовних позначень, символів, одиниць, скорочень і термінів

Advanced Encryption Standard - "Лучший" алгоритм шифрования;

Delphi 6.0 – середовище розробки програм, корпорації Borland;

DES – алгоритм шифрування;

FEAL – алгоритм шифрування;

Object Pascal – мова програмування в середовищі Delphi;

RC5 – алгоритм шифрування;

Rijndael – алгоритм шифрування;

КЗІ – комплекс захисту інформації;

СОД – система оброблення даних.

Вступ

В даній курсовій роботі розроблена програмна реалізація криптографічного алгоритму RC5. Написана програма-шифрувальник на підставі криптографічного алгоритму RC5.

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

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

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

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

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

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


1. Опис об'єкту, що потребує захисту: операційне середовище, тип програмного забезпечення, інші характеристики комп'ютерної системи

В даній курсовій роботі об'єктом, що потребує захисту є файли на дисках ПЕОМ у форматах *.doc i *.txt.

Вищеозначені файли створені в операційному середовищі – ОС Windows XP, SP2, що саме по собі є захищеним операційним середовищем.

Програма-шифрувальник розроблена за допомогою середовища програмування Delphi 6.0 корпорації Borland на мові Object Pascal. Delphi спирається на можливості ОС Windows. Як і в ОС Windows, в Delphi використовується графічний інтерфейс, що забезпечує взаємодію ПЕОМ з користувачем.

Для того, щоб Delphi 6.0 і розроблені нею програми успішно працювали, ПЕОМ повинна відповідати наступним вимогам:

- ПЕОМ повинна мати майже процесор Pentium з тактовою частотою не менше ніж 166 МГц;

- ОС Windows 98 чи вище;

- Оперативна пам'ять не менше 128 Мбайт;

- 115 Мбайт вільного місця на жорсткому диску ПЕОМ (краще 350 Мбайт для встановлення півноцінної версії системи Delphi 6.0);

- Монітор з розрішенням не менше 640х480 пикселів;

- Маніпулятор типу „миша”.

2. Аналіз існуючого стану захисту та теоретичне обґрунтування необхідності підвищення рівня безпеки

Звичайно, частіше за все, в свої проекти необхідно включати шифрування даних. Найпростіший спосіб - xor шифрування, але він підходить тільки коли необхідно забезпечити малий рівень захисту. Але іноді необхідні серйозніші алгоритми, такі як RC5.

Часто, працюючи, наприклад над архіваторами файлів (наприклад, WinRar), встає питання про шифрування файлів, в таких програмах як архіватор це просто необхідно.

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

Алгоритм RC5 був розроблений Рональдом Рівестом (Ronald L. Rivest) для компанії RSA Data Security. На основі RC5 свого часу був створений алгоритм шифрування RC6, який брав участь в конкурсі на звання AES (Advanced Encryption Standard - "Кращий" алгоритм шифрування), оголошеному національним інститутом стандартизації і технологій для заміни вже застарілого алгоритму DES. Тоді RC6 не виграв тільки із-за низької продуктивності апаратних реалізацій алгоритму. А програмні реалізації RC5 і RC6 є, мабуть, найшвидшими серед всіх алгоритмів шифрування, що забезпечують достатню стійкість перед атаками.

Наприклад, за деякими даними швидкість грамотно побудованої апаратної реалізації алгоритму RC5 на комп'ютері із швидкістю процесора 200 Мгц може досягати 10..11 Мбайт/сек, а алгоритму RC6 - 11..12 Мбайт/сек. Для порівняння - швидкість роботи алгоритму Rijndael (переможець конкурсу на звання AES) при вищезазначених характеристиках процесора може досягати максимум 7 Мбайт/сек.

Якщо встає необхідність впровадження алгоритмів шифрування в свої комерційні проекти - на мій погляд кращий вибір це RC5 або RC6. І не тільки тому, що вони значно простіше в реалізації, чим, наприклад, IDEA, але і тому, що RC5 і RC6 - вільні алгоритми і при цьому немає необхідності відраховувати частину прибутку при комерційному використанні алгоритму.

Отже, RC5 працює з блоками по 8 (вісім) байт - два 32 бітових слова. У відмінності від IDEA і Rijndael в RC5 після розгортання ключа обчислюється один підключ, який використовується і при шифруванні, і при дешифровці. RC5, як і більшість алгоритмів - раундовий алгоритм, іншими словами, при шифруванні блоку над ним проводяться одні і ті ж операції кілька разів, в RC5 таких раундів 12.

3. Аналіз типів можливих погроз інформаційної безпеці та визначення рівня можливостей порушника

Умисні чинники збереження інформації в СОД зарубіжні фахівці підрозділяють на погрози з боку користувачів ЕОМ і осіб, що не є користувачами. Несанкціонований доступ до інформації може включити неавторизоване користування інформацією системи і активну інфільтрацію. Неавторизоване користування інформацією ототожнюється з ситуацією, коли неавторизований користувач дістає можливість ознайомитися з інформацією, що зберігається в системі, і використовувати її в своїх цілях (прослуховування ліній зв'язку користувачів з ЕОМ, аналіз інформаційних потоків, використання програм, що є чужою власністю).

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

Навмисні спроби проникнення в СОД можуть бути класифіковані як пасивні і активні.

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

Активне проникнення в систему є прямим використанням інформації з файлів, що зберігаються в СОД. Таке проникнення реалізується звичайними процедурами доступу: використанням відомого способу доступу до системи або її частини з метою ставлення заборонених питань, звернення до файлів, що містять інформацію, що цікавить; маскуванням під дійсного користувача після отримання характеристик (ідентифікаторів) доступу; використанням службового положення, тобто незапланованого перегляду (ревізії) інформації файлів співробітниками обчислювальної установки.