Сфера застосувань криптографії з відкритим ключем
При подальшому розвитку, ідея використання однобічних функцій у криптографії дозволила вирішити ряд проблем, пов'язаних із захистом інформації. Так, наприклад, велике число важливих задач вирішується за допомогою інтерактивних процедур, що називаються криптографічними протоколами.
Забезпечення цілісності даних. Цілісність даних - властивість даних, що дозволяє після передачі одержати них в істинному виді, незважаючи на зміни, передбачені протоколом.
Аутентифікація абонента: перевірка того, що абонент дійсно є особою, за яку себе видає.
Аутентифікація повідомлення: перевірка того, що повідомлення передано без змін від заявленого відправника до відповідного кореспондента.
Реальні криптопротоколи відрізняються великою різноманітністю, причому в них використовуються як асиметричні так і симетричні криптоалгоритми.
Для обґрунтування надійності протоколів недостатньо гарантій стійкості застосовуваних криптоперетворень, оскільки обмін інформацією, що підлягає захисту може здійснюватися в умовах взаємної недовіри користувачів.
В даний час у системах зв'язку загального призначення широко поширені т.зв. змішані криптосистеми. У таких системах конфіденційність повідомлень забезпечується за рахунок шифрування за допомогою симетричної криптосистеми, розсилка ключів для якої здійснюється з використанням асиметричних криптоалгоритмів.
Існують стандартизовані протоколи безпечного ключового обміну, що забезпечують у різних ситуаціях побудову загального симетричного ключа.
Найбільш ранній протокол обміну ключами при взаємній недовірі учасників обміну запропонований Діффі і Хеллманом.
Нехай абонент А є ініціатором обміну. Він має намір узгодити спільний секретний ключ для симетричної криптосистемы з абонентом В. Кожному абоненту відоме просте число і первісний елемент поля .
Протокол вирішує проблєму побудови спільного секретного блоку даних виду для подальшої генерації ключів, де - випадкові лишки за модулем .
Абонент А випадково вибирає число , обчислює значення і відправляє це значення абоненту В. Абонент А діє аналогічно: вибирає , обчислює значення і відправляє це значення абоненту А. Кожний з абонентів тепер у стані обчислити значення загального секретного блоку . Одержати це значення, виходячи з перехоплення неможливо, внаслідок властивостей дискретного логарифма, а підходів, нееквівалентних дискретному логарифмуванню, не знайдено.
Приклад протоколу експоненціального ключового обміну Диффи-Хэллмана.
1. , , оскільки , .
2. Абонент А генерує псевдовипадкове число, наприклад, і передає абоненту В значення .
3. В, аналогічно, генерує і відправляє А значення .
4. А обчислює загальний секретний параметр .
5. В обчислює загальний секретний параметр .