Задачей распространения ключей между двумя пользователями является создание секретных псевдослучайных сеансовых ключей шифрования и аутентификации сообщений. Пользователи предварительно создают и обмениваются ключами аутентификации один раз. В дальнейшем для создания защищенной связи пользователи производят взаимную аутентификацию и вырабатывают сеансовые ключи.
Алгоритм Диффи - Хеллмана позволяет двум или более пользователям обменяться без посредников ключом, который может быть использован затем для симметричного шифрования.
Описание алгоритма
1 этап
Предполагается, что злоумышленник может получить оба этих значения, но не модифицировать их.
2 этап
Как нетрудно видеть, у Алисы и Боба получилось одно и тоже число
Его они и могут использовать в качестве секретного ключа.
Протокол MTI - протокол взаимной аутентификации, разработанный Т.Мацумото, И.Такашима и Х.Имаи. Описание алгоритма
1 этап
2 этап
Сеансовые ключи обеих сторон совпадают
Протокол STS - протокол взаимной аутентификации, использующий идеи алгоритма Диффи-Хеллмана и RSA.
Подпись сообщения имеет вид
где - криптографическая хэш-функция от сообщения
.
Протокол состоит из трех раундов обмена информацией между сторонами Алиса и Боб.
1 раунд
2 раунд
3 раунд
Габидулин стр 132
с дополнительным параметром , генератором подгруппы максимально возможного порядка мультипликативной группы
:
1 этап
Алиса и Боб вместе с Трентом создают свои секретные ключи, обмениваясь информацией по надежному защищенному каналу. Алиса и Боб выбирают свои секретные ключи, числа и
:
и генерируют сообщения и
и отправляют вместе с идентификаторами
центру сообщения Тренту:
2 этап
Трент вычисляет открытые ключи для Алисы и Боба и также по надежному каналу передает им:
3 этап
Получив сообщения от Трента, Алиса и Боб могут создать общий секретный симметричный сеансовый ключ.
Например, вычисления ключа для Алисы выглядят следующим образом:
Аналогично Боб вычисляет