трехэтапный протокол шамира
.docxПротокол изобретенный Ади Шамиром, но никогда не опубликованный позволяет Алисе и Бобу безопасно обмениваться информацией, не используя предварительного обмена ни секретными, ни открытыми ключами. Он предполагает использование коммутативного симметричного шифра, для которого
Секретный ключ Алисы – А, а Боба – В. Алиса хочет послать сообщение М Бобу. Пример работы протокола.
-
Алиса шифрует М своим ключом и посылает шифротекст Бобу.
-
Боб шифрует cвоим ключом и посылает шифротекст Алисе.
-
Алиса расшифровывает своим ключом и посылает результат Бобу
-
Боб расшифровывает своим ключом, получая открытый текст M.
Коммутативны и обладают совершенной безопасностью одноразовые блокноты, но с этим протоколом они работать не будут. При использовании в этой схеме одноразового блокнота три шифротекста будут выглядеть следующим образом:
Ева, перехватив эти три сообщения, которыми обмениваются Алиса и Боб, просто выполнит всех этих шифротекстов и восстановит сообщение:
Очевидно, что такой способ работать не будет.
Шамир(и независимо Джим Омура) описал похожий на RSA алгоритм шифрования, который будет работать с этим протоколом. Пусть будет большим простым числом, причем, множитель является большим простым числом. Выберем ключ шифрования е, взаимно простой с. Вычислим , для которого выполняется .
Для шифрования сообщений вычислим
Для расшифровки .
По-видимому, у Евы нет способа получить открытый текст М, не решив проблему дискретного логарифмирования, но это не было доказано.
Как и Diffie-Hellman, этот протокол позволяет Алисе начать защищенный обмен информацией с Бобом, не зная ни одного из его ключей. При использовании алгоритма с открытым ключом, Алиса должна знать открытый ключ Боба. Применяя трехэтапный алгоритм Шамира, она просто посылает Бобу шифротект сообщения. То же действие с помощью алгоритма с открытым ключом выглядит следующим образом:
-
Алиса запрашивает у Боба (или у KDC – Key Distribution Center) его открытый ключ.
-
Боб (или KDC) посылает Алисе свой открытый ключ
-
Алиса шифрует открытый текст M открытым ключом Боба и посылает шифротекст Бобу.
Трехпроходной алгоритм Шамира уязвим к атаке “Man In the Middle”.