Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция № 12 Аутентификация пользователей.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
128.95 Кб
Скачать

Протоколы проверки подлинности

Алисе нужно связаться с Бобом. Сначала она извлекает из базы данных последовательность сертификации от Алисы до Боба и открытый ключ Боба. В этот момент Алиса может инициировать однопроходный, двухпроходный или трехпроходный протокол проверки подлинности.

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

В двухпроходном протоколе добавлен ответ Боба. Протокол устанавливает, что именно Боб, а не какой-то самозванец, посылает ответ. Он также обеспечивает безопасность обеих передач и защищает от вскрытия повтором.

И в однопроходных, и в двухпроходных алгоритмах используются метки времени. В трехпроходном протоколе добавляется еще одно сообщение Алисы Бобу и позволяет избежать меток времени (и, следовательно, правильного единого времени).

Однопроходный протокол:

1. Алиса генерирует случайное число RA.

2. Алиса создает сообщение, M = (TA, RA, IB, d), где TA - метка времени Алисы, IB - идентификатор Боба, d - произвольные данные. Для безопасности данные могут быть зашифрованы открытым ключом Боба EB.

3. Алиса посылает Бобу (CA, DA(M)). (CA - это сертификат Алисы, DA - это общий узел дерева сертификации.)

4. Боб проверяет CA и получает EA. Он проверяет, что срок действия этих ключей еще не истек. (EA - это открытый ключ Алисы.)

5. Боб использует EA для дешифрирования DA(M). Этим действием он проверяет и подпись Алисы, и целостность подписанной информации.

6. Боб для точности проверяет IB в M.

7. Боб проверяет TA в M и убеждается, что сообщение является текущим.

8. Дополнительно Боб может проверить RA в M по базе данных старых номеров, чтобы убедиться, что сообщение не является повторяемым старым сообщением.

Двухпроходный протокол состоит из однопроходного протокола и последующего аналогичного однопроходного протокола от Боба к Алисе. После выполнения этапов (1)-(8) однопроходного протокола двухпроходный протокол продолжается следующим образом:

9. Боб генерирует случайное число RB.

10. Боб создает сообщение M' = (TB, RB, IA, RA, d), где TB - метка времени Боба, IA - идентификатор Алисы, а d - произвольные данные. Для безопасности данные могут быть зашифрованы открытым ключом Алисы EА. RA - случайное число Алисы, созданное на этапе (1).

11. Боб посылает Алисе DВ(M').

12. Алиса использует EB, чтобы расшифровать DВ(M'). Таким образом, одновременно проверяются подпись Боба и целостность подписанной информации.

13. Алиса для точности проверяет IA в M'.

14. Алиса проверяет TВ в M' и убеждается, что сообщение является текущим.

15. Дополнительно Алиса может проверить RВ в M', чтобы убедиться, что сообщение не является повторяемым старым сообщением.

Трехпроходный протокол решает ту же самую задачу, но без меток времени. Этапы (1) - (15) такие же, как в двухпроходном алгоритме, но TA = TВ = 0.

16. Алиса сверяет полученную версию RA с RA, которое было отправлено Бобу на этапе (3).

17. Алиса посылает Бобу DA(RВ).

18. Боб использует EА, чтобы расшифровать DА(RВ). Таким образом одновременно проверяются подпись Алисы и целостность подписанной информации.

19. Алиса сверяет полученную версию RВ с RВ, которое было отправлено Алисе на этапе (10).