Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
59
Добавлен:
19.02.2016
Размер:
2.23 Mб
Скачать

Розділ 7 криптосистеми з відкритими ключами

7.1 Односторонні функції з секретом і асиметричні системи

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

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

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

Для вирішення цієї проблеми на основі результатів, одержаних класичною і сучасною алгеброю, були запропоновані системи з відкритим ключем (СВК). В СВК для зашифрування не використовуються секретні ключі – вони необхідні тільки при розшифрування (рис. 7.1).

Головним поняттям СВК є однонаправлена функція з секретом (one-way trapdoor function). Однонаправлену функцію з секретом : легко обчислити для всіх , але дуже важко обернути майже для всіх значень із . Однак, якщо використовується деяка секретна інформація , то для всіх значень легко обчислити величину, що задовольняє умову .

Криптосистеми з відкритим ключем, що використовують однонаправлені функції з секретом, ще називаються асиметричними (asymmetric cryptosystems).

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

Ця функція була використана в широко розповсюдженому криптографічному протоколі – протоколі обміну ключами Діффі-Хеллмана (Diffie-Hellman key exchange protocol).

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

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

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

Останнім часом стало відомо, що першу криптосистему з відкритим ключем розробив британський математик Кокс (Cocks) ще в 1973 році. Алгоритм Кокса, що одержав назву алгоритму з несекретним ключем шифрування, використовував складність розкладання цілого числа на прості множники і, по суті, збігався з криптосистемою RSA.

Спочатку алгоритм Кокса був засекречений і лише в грудні 1997  року Група електронного захисту засобів зв'язку (Communications Services Electronic Security Group – CESG) його розсекретила.

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

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

Так, алгоритм RSA [1, 16, 18] фактично став стандартом для відкритих систем і рекомендований міжнародною організацією зі стандартизації ISO, відповідні додатки лежать в основі електронної комерції, здійснюваної через Internet.

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

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

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

Рисунок 7.1 - Криптосистема з відкритим ключем

Таким чином, одностороння функція з секретом, що використовується в асиметричній системі, є взаємооднозначною, але разом з тим має властивості необерненості.

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

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

1. Перетворення вихідного тексту повинно бути обчислювано нереалізованим (необерненим) і уникати його відновлення на основі відкритого ключа.

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

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

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

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

    3. знаходження кратності точки (дискретний логарифм) на еліптичній кривій;

    4. обчислення коренів алгебраїчних рівнянь над кільцями і полями.

Відзначимо області вживання СВК [4, 6, 7, 12, 20].

1. Засоби шифрування даних, що передаються і зберігаються.

2. Засоби аутентифікації користувачів і перевірки цілісності даних, формування електронного цифрового підпису.

3. Механізми розподілу ключів.

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

Найбільше розповсюдження отримали системи з відкритим ключем на основі алгоритму RSA, криптосистема Ель-Гамаля і криптосистеми на основі еліптичних кривих.

Соседние файлы в папке Конспекти_лекцій