![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Алиса и Боб (два пользователя, клиент и сервер, или кто угодно) имеют общий пароль P. Используя следующий протокол, они могут проверить подлинность друг друга и генерировать общий сеансовый ключ K.
(1) Алиса Случайным образом генерирует пару "открытый ключ/закрытый ключ". Она шифрует открытый ключ K' с помощью симметричного алгоритма, используя Pв качестве ключа: EP(K'). Она посылает Бобу
A, EP(K')
(2) Боб знает P. Он расшифровывает сообщение, получая K'. Затем он генерирует случайный сеансовый ключ K шифрует его открытым ключом, который он получил от Алисы, а затем используя P качестве ключа. Он посылает Алисе
EP(EK'(K)
(3) Алиса расшифровывает сообщение, получая K. Она генерирует случайную строку RA, шифрует ее с помощью K и посылает Бобу
EK(RA )
(4) Боб расшифровывает сообщение, получая RA. Он генерирует другую случайную строку, RB, шифрует обе строки ключом K и посылает Алисе результат.
EK(RA,RB )
(5) Алиса расшифровывает сообщение, получая RAи RB. Если строка RA, полученная от Боба, - это та самая строка, которую она послала Бобу на этапе (3), она, используя K, шифрует RBи посылает ее Бобу.
EK(RB )
(6) Боб расшифровывает сообщение, получая RB. Если строка RB, полученная от Алисы, - это та самая строка, которую он послал ей на этапе (4), завершен. Теперь обе стороны могут обмениваться информацией, используя Kв качестве сеансового ключа.
На этапе (3) и Алиса, и Боб знают K'и K. K- это сеансовый ключ, он может быть использован для шифрования всех других сообщений, которыми обмениваются Алиса и Боб. Ева, сидя между Алисой и Бобом, знает только EP(K'), EP(EK'(K)и несколько сообщений, зашифрованных K. В других протоколах Ева могла бы попробовать угадать P(люди все время любят выбирать плохие пароли, и если Ева достаточно умна, она может этот пароль) и затем проверить свои предположения. В рассматриваемом протоколе Ева не может проверять свои предположения, не вскрыв при этом и алгоритм с открытым ключом. И, если K'и Kвыбираются случайным образом, то эта проблема будет непреодолимой.
Ответная часть протокола, этапы (3) - (6), обеспечивает подтверждение. Этапы (3) - (5) доказывают Алисе, что Боб знает K,этапы (4) - (6) доказывают Бобу, что Алиса знает K. Обмен метками времени, используемый в протоколе Kerberos, решает ту же задачу.
EKE может быть реализован с множеством алгоритмов с открытыми ключами: RSA, ElGamal, Diffie-Hellman. Проблемы с безопасностью возникают при реализации EKE с алгоритмом рюкзака (даже без учета проблем безопасности, присущих самим алгоритмам рюкзака): нормальное распределение шифротекста сообщений сводит на нет преимущества EKE.
Дата публикования: 2015-11-01; Прочитано: 533 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!