Протоколы аутентификации с симметричными алгоритмами шифрования
Ниже приводятся три примера протоколов аутентификации, специфицированных в ISO/IEC 9798-2. Эти протоколы предполагают предварительное распределение разделяемых секретных ключей.
Рассмотрим следующие варианты аутентификации:
- односторонняя аутентификация с использованием меток времени;
- односторонняя аутентификация с использованием случайных чисел;
- двусторонняя аутентификация.
В каждом из этих случаев пользователь доказывает свою подлинность, демонстрируя знание секретного ключа, так как производит расшифровывание запросов с помощью этого секретного ключа.
При использовании в процессе аутентификации симметричного шифрования необходимо также реализовать механизмы обеспечения целостности передаваемых данных на основе общепринятых способов.
Введем следующие обозначения:
rА ‑ случайное число, сгенерированное участником А;
rB ‑ случайное число, сгенерированное участником В;
tA ‑ метка времени, сгенерированная участником А;
ЕK ‑ симметричное шифрование на ключе K (ключ K должен быть предварительно распределен между А и В).
1. Односторонняя аутентификация, основанная на метках времени:
A→B: EK(tA,B). (1)
После получения и расшифровывания данного сообщения участник В убеждается в том, что метка времени tA действительна и идентификатор В, указанный в сообщении, совпадает с его собственным. Предотвращение повторной передачи данного сообщения основывается на том, что без знания ключа невозможно изменить метку времени tA и идентификатор В.
2. Односторонняя аутентификация, основанная на использовании случайных чисел:
А ← В: rB (1)
А → В: ЕK(rB, В). (2)
Участник В отправляет участнику А случайное число rB. Участник А шифрует сообщение, состоящее из полученного числа rB, и идентификатора В, и отправляет зашифрованное сообщение участнику В. Участник В расшифровывает полученное сообщение и сравнивает случайное число, содержащееся в сообщении, с тем, которое он послал участнику А. Дополнительно он проверяет имя, указанное в сообщении.
3. Двусторонняя аутентификация, использующая случайные значения:
А ← В: rB; (1)
А → В: ЕK(rA, rB, В); (2)
А ← В: ЕK(rA, rB); (3)
При получении сообщения (2) участник В выполняет те же проверки, что и в предыдущем протоколе, и дополнительно расшифровывает случайное число rA для включения его в сообщение (3) для участника А. Сообщение (3), полученное участником А, позволяет ему убедиться на основе проверки значений rA и rB, что он имеет дело именно с участником В.
Широко известными представителями протоколов, обеспечивающих аутентификацию пользователей с привлечением в процессе аутентификации третьей стороны, являются протокол распределения секретных ключей Нидхэма и Шредера и протокол Kerberos.
Дата добавления: 2015-08-11; просмотров: 1117;