Протокол Ньюмана — Стабблбайна
Протокол Ньюмана-Стабблбайна
Идентификаторы Алисы (Alice), инициатора сессии | |
Идентификатор Боба (Bob), стороны, с которой устанавливается сессия | |
Идентификатор Трента (Trent), доверенной промежуточной стороны | |
Открытые ключи Алисы, Боба и Трента | |
Секретные ключи Алисы, Боба и Трента | |
Шифрование данных ключом Алисы, либо совместным ключом Алисы и Трента | |
Шифрование данных ключом Боба, либо совместным ключом Боба и Трента | |
Шифрование данных секретными ключами Алисы, Боба (цифровая подпись) | |
Порядковый номер сессии (для предотвращения атаки с повтором) | |
Случайный сеансовый ключ, который будет использоваться для симметричного шифрования данных | |
Шифрование данных временным сеансовым ключом | |
Метки времени, добавляемые в сообщения Алисой и Бобом соответственно | |
Случайные числа (nonce), которые были выбраны Алисой и Бобом соответственно |
Протокол Ньюмана — Стабблбайна — симметричный протокол аутентификации и обмена ключами с использованием доверенной стороны. Является усовершенствованной версией протокола Yahalom. Особенностью протокола является отсутствие необходимости синхронизации часов у сторон, а также возможность повторной аутентификации без использования промежуточной стороны.
История
Криптографический протокол Ньюмана-Стабблбайна для удостоверения подписи и обмена ключами был впервые опубликован в 1993 году. Протокол является модификацией протокола Yahalom и разработан в Массачусетском технологическом институте (MIT) Клифордом Ньюманом и Стюартом Стабблбаном.
Описание протокола
Описание
Алиса и Боб хотят безопасно обмениваться сообщениями, находясь на различных концах сети. Предполагается, что каждому пользователю Трент выделяет отдельный секретный ключ, и перед началом работы протокола все ключи уже находятся у пользователей.
- Алиса отправляет Бобу сообщение, содержащее идентификатор Алисы и некоторое случайное число Алисы:
- Боб объединяет идентификатор Алисы, ее случайное число и метку времени, шифрует сообщение общим с Трентом ключом и посылает его Тренту, добавив свой идентификатор и случайное число Боба:
- 2.
- Трент генерирует сеансовый ключ , а затем создает два сообщения. Первое включает идентификатор Боба, случайное число Алисы, случайный сеансовый ключ, метку времени и шифруется общим для Трента и Алисы ключом. Второе состоит из идентификатора Алисы, сеансового ключа, метки времени и шифруется общим для Трента и Боба ключом. Трент добавляет к ним случайное число Боба и отправляет Алисе:
- 3.
- Алиса извлекает и убеждается, что совпадает с тем, что было послано на этапе 1. Алиса отправляет Бобу два сообщения. Первое - это второе сообщение от Трента, зашифрованное ключом Боба. Второе - это случайное число Боба, зашифрованное сеансовым ключом.
- 4.
- Боб расшифровывает сообщение своим ключом и убеждается, что значения и не изменились.
- Если оба случайных числа и метка времени совпадают, то Алиса и Боб убеждаются в подлинности друг друга и получают секретный ключ. Нет необходимости синхронизировать часы, так как метка времени определяется только по часам Боба и только Боб проверяет созданную им метку времени.
Проверка подлинности
Протокол обладает возможностью повторной аутентификации сторон без использования промежуточной стороны, но с использованием новых случайных чисел:
Алиса отправляет Бобу сообщение, присланное Трентом на этапе 3 и новое случайное число:
Боб отправляет Алисе свое новое случайное число и случайное число Алисы, шифруя их сеансовым ключом:
- 2.
- Алиса отправляет Бобу его новое случайное число, зашифрованное сеансовым ключом:
- 3.
Использование новых случайных чисел и защищает от атаки с повторной передачей.
Атаки на протокол
Атака на проверку подлинности
(от англ. Intruder) - злоумышленник.
Атака на основе открытых текстов
- и т.д.
В этой атаке злоумышленник может получить столько шифров , сколько необходимо для начала атаки на основе открытых текстов.
Литература
- Шнайер Б. Протокол Ньюмана-Стабблбайна // Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си = Applied Cryptography. Protocols, Algorithms and Source Code in C. — М.: Триумф, 2002. — С. 82. — 816 с. — 3000 экз. — ISBN 5-89392-055-4.
- A. Kehne, J. Schönwälder, H. Langendörfer. A nonce-based protocol for multiple authentications (англ.) // ACM SIGOPS Operating Systems Review. — 1992. — Vol. 26, iss. 4. — P. 84 - 89. — ISSN 0163-5980.
- B. Clifford Neuman, Stuart G. Stubblebine. A note on the use of timestamps as nonces (англ.) // ACM SIGOPS Operating Systems Review. — New York, NY, USA: ACM, 1993. — Vol. 2, iss. 27. — P. 10—14. — ISSN 0163-5980.