Протоколы проверки подлинности
Алисе нужно связаться с Бобом. Сначала она извлекает из базы данных последовательность сертификации от Алисы до Боба и открытый ключ Боба. В этот момент Алиса может инициировать однопроходный, двухпроходный или трехпроходный протокол проверки подлинности.
Однопроходный протокол представляет собой простую передачу данных Бобу Алисой. Протокол устанавливает личности и Алисы, и Боба, а также целостность информации, передаваемой Бобу Алисой. Кроме того, он обеспечивает защиту от вскрытия линии связи с помощью повтора.
В двухпроходном протоколе добавлен ответ Боба. Протокол устанавливает, что именно Боб, а не какой-то самозванец, посылает ответ. Он также обеспечивает безопасность обеих передач и защищает от вскрытия повтором.
И в однопроходных, и в двухпроходных алгоритмах используются метки времени. В трехпроходном протоколе добавляется еще одно сообщение Алисы Бобу и позволяет избежать меток времени (и, следовательно, правильного единого времени).
Однопроходный протокол:
(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) Боб посылает Алисе sends 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).
Дата добавления: 2021-01-26; просмотров: 330;