Строгая аутентификация, основанная на симметричных алгоритмах

Для работы протоколов аутентификации, построенных на основе симметричных алгоритмов, необходимо, чтобы проверяющий и доказывающий с самого начала имели один и тот же секретный ключ. Для закрытых систем с небольшим количеством пользователей каждая пара пользователей может заранее разделить его между собой. В больших распределенных системах, применяющих технологию симметричного шифрования, часто используются протоколы аутентификации с участием доверенного сервера, с которым каждая сторона разделяет знание ключа. Такой сервер распределяет сеансовые ключи для каждой пары пользователей всякий раз, когда один из них запрашивает аутентификацию другого.

Протоколы аутентификации с симметричными алгоритмами шифрования. Данные протоколы аутентификации специфицируются в ISO/IEC 9798-2. Эти протоколы предполагают предварительное распределение разделяемых секретных ключей.

Варианты аутентификации:

· односторонняя аутентификация с использованием меток времени;

· односторонняя аутентификация с использованием случайных чисел;

· двусторонняя аутентификация.

В каждом из этих случаев пользователь доказывает свою подлинность, демонстрируя знание секретного ключа, так как производит расшифрование запросов с помощью этого секретного ключа.

Введем следующие обозначения:

rA – случайное число, сгенерированное участником A;

rB – случайное число, сгенерированное участником В;

tA – метка времени, сгенерированная участником A;

Еk – симметричное шифрование на ключе К (ключ К должен быть предварительно распределен между участниками А и В).

1. Односторонняя аутентификация, основанная на метках времени:

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru . (5.3)

После получения и расшифрования данного сообщения участник В убеждается в том, что метка времени tA действительна и идентификатор В, указанный в сообщении, совпадает с его собственным. Предотвращение повторной передачи данного сообщения основывается на том, что без знания ключа невозможно изменить метку времени tA и идентификатор В.

2. Односторонняя аутентификация, основанная на использовании случайных чисел:

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru (5.4)

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru . (5.5)

Участник В отправляет участнику А случайное число rB. Участник А шифрует сообщение, состоящее из полученного числа rB и идентификатора В, и отправляет зашифрованное сообщение участнику В. Участник В расшифровывает полученное сообщение и сравнивает случайное число, содержащееся в сообщении, с тем, которое он послал участнику А. Дополнительно он проверяет имя, указанное в сообщении.

3. Двусторонняя аутентификация, использующая случайные значения:

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru (5.6)

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru . (5.7)

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru (5.8)

При получении второго сообщения участник В выполняет те же проверки, что и в предыдущем протоколе, и дополнительно расшифровывает случайное число rA для включения его в третье сообщение для участника А. Третье сообщение, полученное участником А, позволяет ему убедиться на основе проверки значений rA и rB, что он имеет дело именно с участником В.

Протоколы, основанные на использовании однонаправленных ключевых хеш-функций. Данные протоколы по своей сути похожи на описанные выше, только процедура симметричного шифрования заменена на шифрование с помощью односторонней ключевой хэш-функции. Это бывает необходимо, если алгоритмы блочного шифрования недоступны или не отвечают предъявляемым требованиям (например, в случае экспортных ограничений).

Особенностью шифрования с помощью односторонней хэш-функции заключается в том, что оно является односторонним, то есть не сопровож­дается обратным преобразованием – расшифрованием на приемной стороне. Обе стороны (отправитель и получатель) используют одну и ту же процедуру одностороннего шифрования.

Односторонняя хэш-функция Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru с параметром-ключом К, примененная к шифруемым данным М, дает в результате хэш-значение m (дайджест), состоящее из фиксированного небольшого числа байтов (рис. 5.11).

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru

Рис. 5.11. Применение для аутентификации односторонней хэш-функции

с параметром-ключом

Дайджест т = hK(M) передается получателю вместе с исходным сообщением М. Получатель сообщения, зная, какая односторонняя хэш-функция была применена для получения дайджеста, заново вычисляет ее, используя расшифрованное сообщение М. Если значения полученного дайджеста т и вычисленного дайджеста т' совпадают, значит, содержимое сообщения М не было подвергнуто никаким изменениям. Знание дайджеста позволяет проверить целостность данных.

При вычислении дайджеста применяются секретные ключи. В случае если для получения дайджеста используется односторонняя хэш-функция с параметром-ключом К, который известен только отправителю и получателю, любая модификация исходного сообщения будет немедленно обнаружена.

На рис. 5.12 показан другой вариант использования односторонней хэш-функции для проверки целостности данных.

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru

Рис. 5.12. Применение односторонней хэш-функции к сообщению,

дополненному секретным ключом К

В этом случае односторонняя хэш-функция Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru не имеет параметра-ключа, но зато применяется не просто к сообщению М, а к сообщению, дополненному секретным ключом К, то есть отправитель вычисляет дайджест т = h(M, К). Получатель, извлекая исходное сообщение М, также дополняет его тем же известным ему секретным ключом К, после чего применяет к полученным данным одностороннюю хэш-функцию Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru . Результат вычислений – дайджест т' – сравнивается с полученным по сети дайджестом т.

При использовании для аутентификации односторонних функций шифрования в рассмотренные выше протоколы необходимо внести следующие изменения:

· функция симметричного шифрования Ek заменяется функцией hk;

· проверяющий вместо установления факта совпадения полей в расшифрованных сообщениях с предполагаемыми значениями вычисляет значение однонаправленной функции и сравнивает его с полученным от другого участника обмена информацией;

· для обеспечения возможности независимого вычисления значения однонаправленной функции получателем сообщения в протоколе 1 метка времени tA должна передаваться дополнительно в открытом виде, а в сообщении 2 протокола 3 случайное число Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru должно передаваться дополнительно в открытом виде.

Модифицированный вариант протокола 3 с учетом сформулированных изменений имеет следующую структуру:

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru (5.9)

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru . (5.10)

Строгая аутентификация, основанная на симметричных алгоритмах - student2.ru (5.11)

Заметим, что в третье сообщение протокола включено поле А. Результирующий протокол обеспечивает взаимную аутентификацию и известен как протокол SKID 3.

Наши рекомендации