Формальное описание
Криптографические обозначения, используемые в протоколах проверки подлинности и обмена ключами | |
![]() | Идентифкаторы Алисы (Alice), инициатора сессии |
![]() | Идентифкатор Боба (Bob), стороны, с которой устанавливается сессия |
![]() | Идентифкатор Трента (Trent), доверенной промежуточной стороны |
![]() | Открытые ключи Алисы, Боба и Трента |
![]() | Секретные ключи Алисы, Боба и Трента |
![]() | Шифрование данных ключом Алисы, либо совместным ключом Алисы и Трента |
![]() | Шифрование данных ключом Боба, либо совместным ключом Боба и Трента |
![]() | Шифрование данных секретными ключами Алисы, Боба (цифровая подпись) |
![]() | Порядковый номер сессии (для предотвращения атаки с повтором) |
![]() | Случайный сеансовый ключ, который будет использоваться для симетричного шифрования данных |
![]() | Шифрование данных временным сеансовым ключом |
![]() | Метки времени, добавляемые в сообщения Алисой и Бобом соответственно |
![]() | Случайные числа (nonce), которые были выбраны Алисой и Бобом соответственно |
Протокол использует только симметричное шифрование и предполагает, что у каждого корреспондента (Алисы и Боба) есть общий секретный ключ с третьей доверенной стороной (Трентом).
Алиса направляет доверенной стороне (Тренту) свой идентификатор и Боба:
Трент генерирует два сообщения. Первое включает метку времени , время жизни ключа
, новый сеансовый ключ для Алисы и Боба
и идентификатор Боба
. Это сообщение шифруется общим ключом Алисы и Трента. Второе сообщение содержит то же самое, кроме идентификатора — он заменён на идентификатор Алисы
. Само сообщение шифруется общим ключом Трента и Боба:
Алиса генерирует сообщение из собственного идентификатора и метки времени
, после чего шифрует сообщение сеансовым ключом
и посылает Бобу вместе со вторым сообщением от Трента:
В целях собственной аутентификации Боб шифрует модифицированную метку времени общим сеансовым ключом
и посылает её Алисе:
Важным предположением является синхронизированность часов всех участников протокола. Однако на практике используется синхронизация с точностью до нескольких минут с запоминанием истории передач (с целью обнаружения повтора) в течение некоторого времени.