- Протокол Деннинга
-
Криптографические обозначения, используемые в протоколах проверки подлинности и обмена ключами Идентифкаторы Алисы (Alice), инициатора сессии Идентифкатор Боба (Bob), стороны, с которой устанавливается сессия Идентифкатор Трента (Trent), доверенной промежуточной стороны Открытые ключи Алисы, Боба и Трента Секретные ключи Алисы, Боба и Трента Шифрование данных ключом Алисы, либо совместным ключом Алисы и Трента Шифрование данных ключом Боба, либо совместным ключом Боба и Трента Шифрование данных секретными ключами Алисы, Боба (цифровая подпись) Порядковый номер сессии (для предотвращения атаки с повтором) Случайный сеансовый ключ, который будет использоваться для симетричного шифрования данных Шифрование данных временным сеансовым ключом Метки времени, добавляемые в сообщения Алисой и Бобом соответственно Случайные числа (nonce), которые были выбраны Алисой и Бобом соответственно Заранее созданные пары открытых и закрытых ключей Алисы, Боба и Трента соответственно Случайная сеансовая пара открытого и закрытого ключей, которая будет использоваться для ассиметричного шифрования Подписывание данных с использованием закрытого ключа Алисы, Боба, промежуточной стороны (Trent) или закрытого ключа из случайной пары соответственно Ассиметричное шифрование данных с использованием открытого ключа Алисы, Боба, промежуточной стороны (Trent) или открытого ключа из случайной пары соответственно Протокол Деннинга — Сакко — протокол аутентификации и обмена ключами с открытым ключом. Как и в случае протокола DASS промежуточная сторона — Трент — поддерживает базу данных всех открытых ключей.
Протокол обладает уязвимостью, позволяющей одной из сторон после окончания сеанса выдавать себя за другую сторону.
Описание протокола
Алиса отправляет Тренту сообщение со своим идентификатором и Боба:
Трент отправляет Алисе открытые ключи и Алисы, и Боба, вместе с идентификаторами, подписав их своим закрытым ключом:
Алиса отправляет Бобу сеансовый ключ вместе с меткой времени, подписав это своим ключом и зашифровав это открытым ключом Боба, вместе с обоими сообщениями от Трента:
Боб расшифровывает сообщение, проверяет подписи на ключах (используя открытый ключ Трента), проверяет подписи на сеансовом ключе (используя открытый ключ Алисы) и может использовать сеансовый ключ
для безопасного обмена данными с Алисой.
Отсутствие в сообщении от Алисы
идентификатора получателя (Боба) приводит к тому, что Боб может использовать принятые от Алисы данные для того, чтобы выдать себя за неё в новом сеансе с другой стороной. Однако это легко поправить, добавив в это сообщение идентификаторы Алисы и Боба, тем самым ограничив возможность использования этого сообщения данным сеансом.
Литература
- Шнайер Б. Глава 3. Основные протоколы. Протокол Деннинга-Сакко // Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си = Applied Cryptography. Protocols, Algorithms and Source Code in C. — М.: Триумф, 2002. — С. 84-85. — 816 с. — 3000 экз. — ISBN 5-89392-055-4
- D. E. Denning, G. M. Sacco Timestamps in key distribution protocols (англ.) // Communications of the ACM. — New York, NY, USA: ACM, 1981. — В. 8. — Т. 24. — С. 533—536. — ISSN 0001-0782. — DOI:10.1145/358722.358740
Протоколы аутентификации и обмена ключами С симметричными алгоритмами Wide-Mouth Frog • Yahalom • Протокол Нидхема — Шрёдера • Протокол Отвея — Рииса • Kerberos • Протокол Ньюмана — Стабблбайна
С симметричными и асимметричными алгоритмами Протоколы и сервисы, используемые в Internet Категория:- Протоколы AAA
Wikimedia Foundation. 2010.