DASS (протокол) | это... Что такое DASS (протокол)? (original) (raw)

Криптографические обозначения, используемые в протоколах проверки подлинности и обмена ключами

A Идентифкаторы Алисы (Alice), инициатора сессии
B Идентифкатор Боба (Bob), стороны, с которой устанавливается сессия
T Идентифкатор Трента (Trent), доверенной промежуточной стороны
K_A, K_B, K_T Открытые ключи Алисы, Боба и Трента
K_A^{-1}, K_B^{-1}, K_T^{-1} Секретные ключи Алисы, Боба и Трента
E_A, \left\{...\right\}_{K_A} Шифрование данных ключом Алисы, либо совместным ключом Алисы и Трента
E_B, \left\{...\right\}_{K_B} Шифрование данных ключом Боба, либо совместным ключом Боба и Трента
\left\{...\right\}_{K_B^{-1}}, \left\{...\right\}_{K_A^{-1}} Шифрование данных секретными ключами Алисы, Боба (цифровая подпись)
I Порядковый номер сессии (для предотвращения атаки с повтором)
K Случайный сеансовый ключ, который будет использоваться для симетричного шифрования данных
E_K, \left\{...\right\}_{K} Шифрование данных временным сеансовым ключом
T_A, T_B Метки времени, добавляемые в сообщения Алисой и Бобом соответственно
R_A, R_B Случайные числа (nonce), которые были выбраны Алисой и Бобом соответственно
K_A, K_B, K_T Заранее созданные пары открытых и закрытых ключей Алисы, Боба и Трента соответственно
K_p Случайная сеансовая пара открытого и закрытого ключей, которая будет использоваться для ассиметричного шифрования
S_A, S_B,S_T, S_{K_p} Подписывание данных с использованием закрытого ключа Алисы, Боба, промежуточной стороны (Trent) или закрытого ключа из случайной пары соответственно
E_{K_A}, E_{K_B},E_{K_T}, E_{K_p} Ассиметричное шифрование данных с использованием открытого ключа Алисы, Боба, промежуточной стороны (Trent) или открытого ключа из случайной пары соответственно

Протокол DASS (англ. Distributed Authentication Security Serviceраспределённая служба безопасности и проверки подлинности) — протокол аутентификации и распределения сеансовых ключей с использованием промежуточной доверенной стороны и симметричных и асимметричных алгоритмов.

Описание протокола

Алиса посылает запрос промежуточной стороне на получение открытого ключа Боба

Alice \to \left\{ B \right\} \to Trent

Трент присылает ключ Боба, подписав его своим ключом

Trent \to \left\{ S_T \left(B, K_B \right) \right\} \to Alice

Алиса проверяет данные с помощью известного ей заранее открытого ключа Трента, после чего генерирует сеансовый ключ K, сеансовую пару ключей K_P и посылает набор сообщений Бобу, включая метку времени T_A и срок жизни ключа L, часть из них шифруя, часть подписывая:

Alice \to \left\{ E_K \left( T_A \right) , S_A \left( L, A, K_P \right), S_{K_P} \left( E_{K_B} \left( K \right) \right) \right\} \to Bob

Боб отправляет Тренту (или другой доверенной стороне — хранилищу ключей) запрос с идентификатором Алисы

Bob \to \left\{ A \right\} \to Trent

Трент присылает ключ Алисы, подписав его своим ключом

Trent \to \left\{ S_T \left(A, K_A \right) \right\} \to Bob

Используя данные из сообщений Алисы и Трента Боб проверяет подписи Алисы, извлекает открытый временный ключ K_P, извлекает сеансовый ключ K (проверяя также подпись с использованием K_P), и расшифровывает T_A убеждаясь, что использует текущее сообщение, а не повтор.

При необходимости протокол может быть продолжен, обеспечивая взаимную идентификацию сторон:

Bob \to \left\{ E_K\left(T_B\right) \right\} \to Alice

Алиса расшифровывает метку времени и убеждается, что получила текущее сообщение.

Литература

Просмотр этого шаблона Протоколы аутентификации и обмена ключами
С симметричными алгоритмами Wide-Mouth FrogYahalom • Протокол Нидхема — Шрёдера • Протокол Отвея — Рииса • Kerberos • Протокол Ньюмана — Стабблбайна
С симметричными и асимметричными алгоритмами DASS • Протокол Деннинга — Сакко • Протокол Ву — Лама • SPKM
Протоколы и сервисы, используемые в Internet OAuthOpenIDWindows Live ID