Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информационная безопасност.doc
Скачиваний:
35
Добавлен:
26.03.2015
Размер:
578.56 Кб
Скачать

1.9. Використання засобів криптографічного захисту

Сучасна криптографія включає в себе чотири великих розділи.

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

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

Електронний підпис. Системою електронного підпису. називається приєднане до тексту його криптографічне перетворення, яке дозволяє при отриманні тексту іншим користувачем перевірити авторство і достовірність повідомлення.

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

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

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

зашифроване повідомлення повинно піддаватися читанню тільки при ключа;

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

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

знання алгоритму шифрування не повинно впливати на надійність захисту;

незначна зміна ключа повинно приводити до істотної зміни виду зашифрованого повідомлення навіть при використанні одного і того ж ключа;

структурні елементи алгоритму шифрування повинні бути незмінними;

додаткові біти, що вводяться в повідомлення в процесі шифрування, повинен бути повністю та надійно сховані в зашифрованому тексті;

довжина шифрованого тексту повинна бути рівною довжині вихідного тексту;

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

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

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

Все різноманіття існуючих криптографічних методів у симетричних криптосистемах можна звести до наступних 4 класів перетворень:

підстановка - символи шифрованого тексту замінюються символами того ж або іншого алфавіту відповідно до заздалегідь певним правилом;

перестановка - символи тексту що шифрується переставляються по деякому правилу в межах заданого блоку переданого тексту;

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

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

Як би не були складні і надійні криптографічні системи - їх слабке місць при практичній реалізації - проблема розподілу ключів. Для того, щоб був можливий обмін конфіденційною інформацією між двома суб'єктами ІС, ключ повинен бути згенерований одним з них, а потім якимось чином знову ж таки в конфіденційному порядку переданий іншому. Тобто в загальному випадку для передачі ключа знову ж потрібне використання якийсь криптосистеми. Для вирішення цієї проблеми на основі результатів, отриманих класичної та сучасної алгеброю, були запропоновані системи з відкритим ключем. Суть їх полягає в тому, що кожним адресатом ІС генеруються два ключі, зв'язані між собою за певним правилом. Один ключ оголошується відкритим, а інший закритим. Відкритий ключ публікується і доступний кожному, хто бажає послати повідомлення адресату. Секретний ключ зберігається в таємниці. Оригінальний текст шифрується відкритим ключем адресата і передається йому. Зашифрований текст у принципі не може бути розшифрований тим же відкритим ключем. Дешифрування повідомлення можливе тільки з використанням закритого ключа, який відомий тільки самому адресату. Криптографічні системи з відкритим ключем використовують так звані необоротні або односторонні функції, які мають наступну властивість: при заданому значенні x відносно просто обчислити значення f (x), однак якщо y = f (x), то немає простого шляху для обчислення значення x. Безліч класів необоротних функцій і породжує все розмаїття систем з відкритим ключем. Проте не всяка необоротна функція годиться для використання в реальних ІС. У самому визначенні необоротності присутня невизначеність. Під необоротністю розуміється не теоретична необоротність, а практична неможливість обчислити зворотне значення використовуючи сучасні обчислювальні засоби за доступний для огляду інтервал часу. Тому щоб гарантувати надійний захист інформації, до систем з відкритим ключем (СОК) пред'являються дві важливі і очевидних вимоги.

Перетворення вихідного тексту повинно бути необоротним і виключати його відновлення на основі відкритого ключа. Визначення закритого ключа на основі відкритого також повинно бути неможливим на сучасному технологічному рівні. При цьому бажана точна нижня оцінка складності (кількості операцій) розкриття шифру [9].

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

розкладання великих чисел на прості множники;

обчислення логарифма в кінцевому полі;

обчислення коренів алгебраїчних рівнянь.

Тут же слід зазначити, що алгоритми криптосистеми з відкритим ключем (СОК) можна використовувати в наступних призначеннях:

як самостійні засоби захисту переданих і збережених даних.

як засоби для розподілу ключів.

Алгоритми СОК більш трудомісткі, ніж традиційні криптосистеми. Тому часто на практиці раціонально за допомогою СОК розподіляти ключі, обсяг яких як інформації незначний. А потім за допомогою звичайних алгоритмів здійснювати обмін великими інформаційними потоками. Один з найбільш поширених - система з відкритим ключем - RSA. Криптосистема RSA, розроблена в 1977 році і отримала назву на честь її творців: Рона Ривеста, Аді Шаміра та Леонарда Ейдельмана. Вони скористалися тим фактом, що знаходження великих простих чисел в обчислювальному відношенні здійснюється легко, але розкладання на множники твору двох таких чисел практично нездійсненно. Доведено (теорема Рабіна), що розкриття шифру RSA еквівалентно такому розкладанню. Тому для будь-якої довжини ключа можна дати нижню оцінку числа операцій для розкриття шифру, а з урахуванням продуктивності сучасних комп'ютерів оцінити і необхідний на це час. Можливість гарантовано оцінити захищеність алгоритму RSA стала однією з причин популярності цієї СОК на тлі десятків інших схем. Тому алгоритм RSA використовується в банківських комп'ютерних мережах, особливо для роботи з віддаленими клієнтами (обслуговування кредитних карток) [16].