Page 167 - 4636
P. 167

Явний  недолік  алгоритмів  з  секретним  ключем  полягає  в  тому,  що  для  відправки  комусь
        захищеного  повідомлення  необхідно  розташовувати  безпечним  способом  передачі  цій  особі
        секретного  ключа.  А  якщо  у  вас  є  безпечний  метод  передачі  ключа,  то  чому  не  скористатися  цим
        самим методом для передачі повідомлень?
              На щастя, в 1976 р. стався прорив, коли Діффі (Diffie) і Хеллман (Heilman) опублікували перший
        алгоритм шифрування з відкритим ключем.
              Шифрування відкритим ключем
              Шифрування  відкритим  ключем  (public  key  encryption)  базується  на  двох  різних  ключах  –
        відкритому і секретному. Як показано на рис.9.5, відкритий ключ використовується для шифрування
        повідомлень, а секретний – для їх дешифрування.
                               Відкритий                                 Закритий
                                 ключ                                      ключ




             Відкритий         Алгоритм          Зашифрований            Алгоритм          Відкритий
               текст          шифруванн               текст             шифрування           текст








                Рисунок 9.5 - При шифруванні з відкритим ключем для шифрування і дешифрування
                                             використовуються різні ключі

              Перевага цього підходу полягає в тому, що, як випливає з його назви, відкритий ключ можна
        вільно поширювати. Будь-яка людина, якій ви передали свій відкритий ключ, може відправити вам
        захищене повідомлення. Але оскільки секретним ключем володієте тільки ви, то тільки ви і зможете
        дешифрувати повідомлення .
              Найбільш відомий алгоритм з відкритим ключем – це алгоритм RSA, який розробили Райвест
        (Rivest),  Шамір  (Shamir)  і  Адлеман  (Adleman)  в  Мічиганському  технологічному  інституті(MIT)  і
        опубліку в 1978 р. Раніше алгоритм RSA був захищений патентом, але термін дії патенту закінчився у
        вересні 2000 р.
              Величезною перевагою алгоритмів з відкритим ключем є можливість передачі відкритого ключа
        незахищеним каналом, не турбуючись, що він буде прочитаний третьою стороною. Незважаючи на це,
        системи  з  секретним  ключем  все  ще  широко  використовують.  Часто  можна  побачити  гібридні
        системи. У таких системах алгоритм з відкритим ключем застосовують для передачі секретного ключа,
        який  використовують  для  обміну  даними  до  кінця  сеансу  зв'язку.  Ця  додаткова  складність
        компенсується  тим,  що  алгоритми  з  секретним  ключем  працюють  на  три  порядки  швидше  від
        алгоритмів з відкритим ключем.

              9.6 Цифрові підписи
              Цифрові  підписи  (digital  signature)  відносяться  до  криптографічних  алгоритмів  з  відкритим
        ключем,  але  із  зміненими  ролями  відкритого і  секретного  ключів.  Відправник  може  зашифрувати  і
        підписати  повідомлення  своїм  секретним  ключем.  Коли  повідомлення  отримано,  одержувач  може
        дешифрувати його, використовуючи відкритий ключ відправника. З огляду на те, що відправник – це
                                                            164
   162   163   164   165   166   167   168   169   170   171   172