Я учусь на создание ключей с использованием центра распространения ключей
Насколько я понимаю, KDC содержит закрытые ключи всех пользователей. Например, если Алиса хочет поговорить с Бобом, Алиса отправляет запрос в KDC, используя Request(IDAlice,IDBob), и KDC генерирует случайный сеансовый ключ и шифрует сеансовый ключ с помощью ключа Алисы и ключа Боба.Алиса получает encryptwithAliceKey(SessionKey), encryptwithBobKey(SessionKey), расшифровывает ключ Алисы, чтобы получить сеансовый ключ, и использует сеансовый ключ для шифрования сообщения и отправки его Бобу encyptwithSessionKey(Message), encryptwithBobKey(SessionKey).
Но мой вопрос: что, если Алиса сгенерирует сеансовый ключ и зашифрует его своим ключом и отправит запрос (зашифровать (сеансовый ключ), идентификатор (Алиса) и KDC расшифрует сеансовый ключ с помощью ключа Алисы и зашифрует сеансовый ключ с помощью ключа Боба? и отправляет его обратно Алисе, Алиса шифрует сообщение своим сгенерированным сеансовым ключом и отправляет Бобу зашифрованное сообщение и зашифрованный сеансовый ключ с ключом Боба из KDC.
Я знаю, что вопрос может быть недостаточно ясен, поэтому, если я задам более короткие вопросы, в чем преимущество сеансового ключа, сгенерированного KDC, а не пользователями?