Это из прошлой экзаменационной работы. Вопрос заключается в следующем:
Разработчик протокола использует подпись, чтобы упростить и, надеюсь, исправить NSPK:
- $A B$ : $знак(sk_A, зашифровать(pk_B, N_A))$
- $ B A $ : $знак(sk_B, зашифровать(pk_A,(N_A,k)))$
куда $N_A$ это новый случайный одноразовый номер, созданный $А$, $к$ это новый сеансовый ключ, созданный $В$, а операции подписи и шифрования используют криптосистему с открытым ключом для соответственной подписи и шифрования.
шифровать под соответствующими ключами. Вы должны предположить, что $А$ и $В$ знать друг друга
открытые ключи $pk_A$ и $pk_B$.
Работает ли это (i) в случае, когда подпись и шифрование не удовлетворяют алгебраическим свойствам?
кроме тех, которые подразумеваются их определениями, и (ii) если подпись и шифрование коммутируют
(т.е. $знак(k_1, зашифровать(k_2,x))$ = $ зашифровать (k_2, (знак (k_1, x))) $?
В каждом случае либо убедительно аргументируйте, что пересмотренный протокол работает, либо точно проанализируйте
чего достигает ваша атака на него.
Я не могу придумать атаку «человек посередине» или атаку отражения для этого протокола — и действительно не понимаю, как алгебраические свойства этих функций важны в любом случае? Как решить этот вопрос?