For faster navigation, this Iframe is preloading the Wikiwand page for Трёхэтапный протокол.

Трёхэтапный протокол

Материал из Википедии — свободной энциклопедии

Трёхэта́пный протоко́л (англ. three-pass protocol) — криптографический протокол, который позволяет защищённо передать сообщение между двумя сторонами без необходимости обмена или распределения ни открытого, ни закрытого ключа. Этот протокол предполагает использование коммутативного шифра[1].

Основные сведения

[править | править код]

Трёхэтапный протокол называется так, потому что между отправителем и получателем происходит обмен тремя зашифрованными сообщениями. Первый трёхэтапный протокол был разработан Ади Шамиром в 1980-е годы, но не был опубликован[2][3]. Базовая концепция протокола состоит в том, что каждая из сторон передачи имеет собственный приватный ключ для шифрования и приватный ключ для дешифрования. Каждая сторона использует свои ключи независимо, сначала для зашифровки сообщения, а затем для расшифровки.

Протокол использует функцию шифрования и функцию расшифрования . Иногда функция шифрования и расшифрования могут быть одной и той же. Функция шифрования использует ключ шифрования , чтобы изменить открытое сообщение в зашифрованное, или шифротекст, . Для каждого ключа шифрования имеется соответствующий ключ дешифрования , который позволяет восстановить исходный текст с помощью функции расшифрования, .

Для того, чтобы функции шифрования и расшифрования подходили для трёхэтапного протокола, для любого сообщения , любого ключа шифрования с соответствующим ему ключом дешифрирования должно выполняется . Другими словами должно расшифровываться первое шифрование с ключом , даже если сообщение зашифровано вторым ключом . Такое свойство есть у коммутативного шифрования. Коммутативное шифрование — это шифрование, которое не зависит от порядка, то есть справедливо для любых ключей и для всех сообщений . Для коммутативного шифрование выполняется .

Описание алгоритма

[править | править код]
Схема трёхэтапного протокола

Предположим, Алиса хочет послать Бобу сообщение. Тогда трёхэтапный протокол работает следующим образом[1]:

  1. Алиса выбирает закрытый ключ шифрования и соответствующий ключ расшифрования . Алиса шифрует исходное сообщение с помощью ключа и отправляет шифротекст Бобу.
  2. Боб выбирает закрытый ключ шифрования и соответствующий ключ расшифрования , а затем повторно шифрует первое сообщение с помощью ключа и отправляет дважды зашифрованное сообщение обратно Алисе.
  3. Алиса расшифровывает второе сообщение с помощью ключа . Из-за коммутативности, описанной выше, получаем , то есть сообщение, зашифрованное только закрытым ключом Боба. Алиса пересылает этот шифротекст Бобу.
  4. Боб расшифровывает третье сообщение с помощью ключа и получает исходное сообщение.

Стоит заметить, что все операции с использованием закрытых ключей Алисы и совершаются Алисой, а все операции с использованием закрытых ключей Боба и совершаются Бобом, то есть одной стороне обмена не нужно знать ключи другой.

Трёхэтапный протокол Шамира

[править | править код]

Первым трёхэтапным протоколом был трёхэтапный протокол Шамира[2], разработанный в 1980-х годах. Так же этот протокол называют бесключевым протоколом Шамира (англ. Shamir No-Key Protocol), потому что по этому протоколу не происходит обмена каких-либо ключей, но стороны обмена должны иметь по 2 закрытых ключа для шифрования и расшифрования. Алгоритм Шамира использует возведение в степень по модулю большого простого числа как функцию и шифрования, и расшифрования, то есть и , где  — большое простое число[4]. Для любого шифрования показатель степени находится в отрезке и для него справедливо . Соответствующий показатель для расшифрования выбирается так, чтобы . Из малой теоремы Ферма следует, что .

Протокол Шамира обладает коммутативностью, так как .

Криптосистема Мэсси — Омуры

[править | править код]

Криптосистема Мэсси — Омуры была предложена Джеймсом Мэсси и Джимом Омурой (англ. Jim K. Omura) в 1982 как улучшение протокола Шамира[5][6]. Метод Мэсси — Омуры использует возведение в степень в поле Галуа как функцию и шифрования, и расшифрования, то есть и , где вычисления проходят в поле Галуа. Для любого шифрования показатель степени находится в отрезке и для него справедливо . Соответствующий показатель для расшифрования выбирается так, чтобы . Так как мультипликативная группа поля Галуа имеет порядок , то из теоремы Лагранжа следует, что для всех в .

Каждый элемент поля Галуа представлен как двоичный вектор нормального базиса, где каждый базисный вектор является квадратом предыдущего. То есть базисные вектора где  — элемент поля с максимальным порядком. Используя данное представление, возведение в степень 2 можно производить с помощью циклического сдвига. Это значит, что возведение в произвольную степень может быть выполнено с не более чем сдвигами и умножениями. Более того, несколько умножений могут выполняться параллельно. Это позволяет иметь более быстрые реализации в железе за счёт использования несколько умножителей[7].

Безопасность

[править | править код]

Необходимое условие для безопасности трёхэтапного протокола состоит в том, чтобы злоумышленник не смог определить ничего об исходном сообщении из трёх пересланных сообщений [8]. Это условие накладывает ограничение на выбор функций шифрования и расшифрования. Например коммутативная функция xor не может использоваться в трёхэтапном протоколе, так как . То есть, зная три пересланные сообщения, можно восстановить исходное сообщение[9].

Криптографическая стойкость

[править | править код]

Для функций шифрования, используемых в алгоритме Шамира и алгоритме Мэсси — Омуры, безопасность зависит от сложности вычисления дискретных логарифмов в конечном поле. Если злоумышленник может вычислить дискретные логарифмы в для метода Шамира или для метода Масси-Омура, то протокол может быть нарушен. Ключ может быть вычислен из сообщений и . Когда известно, легко вычислить степень для расшифровки . Затем злоумышленник может вычислить , возведя перехваченное сообщение в степень . В 1998 году показано, что при определённых предположениях взлом криптосистемы Мэсси — Омуры эквивалентен взлому криптосистемы Диффи — Хеллмана[10].

Аутентификация

[править | править код]

Трёхэтапный протокол не предусматривает аутентификацию сторон обмена[11]. Поэтому без реализации сторонней аутентификации протокол уязвим для атаки посредника. Это значит, что если злоумышленник имеет возможность создавать ложные сообщения или перехватывать и заменять настоящие переданные сообщения, то обмен скомпрометирован.

Примечания

[править | править код]

Литература

[править | править код]
  • B. Schneier. Applied Cryptography: "Protocols, algorithms, and source codes in C". — 2nd Edition. — New York: John Wiley & Sons, 1996.
  • Лидл Р., Нидеррайтер Г. Конечные поля. В 2-х тт. — Москва: Мир, 1998. — 430 с. — ISBN 5-03-000065-8.
  • Sakurai, K.; Shizuya, H. A structural comparison of the computational difficulty of breaking discrete log cryptosystems (англ.) // Journal of Cryptology : Article. — 1998. — No. 11. — P. 29—43. — ISSN 09332790.
  • A. G. Reinhold. Strong Cryptography — The Global Tide of Change (англ.) // Cato Institute : Article. — 1991. — No. 51. — P. 3—5.
  • U.S. Patent 4 567 600, U.S. patent on the Massey-Omura cryptosystem
  • A.G. Konheim. Cryptography. — New York: John Wiley & Sons, 1981. — С. 345—7.
  • Yoshito Kanamori, Seong-Moo Yoo. Quantum three-pass protocol: Key distribution using quantum superposition states (англ.) // International Journal of Network Security & Its Applications (IJNSA) : Article. — 2009. — No. 2. — P. 65—66.
  • A. Menezes, P. van Oorschot, S. Vanstone. Handbook of Applied Cryptography. — 5th printing. — CRC Press, 1996. — С. 500, 535, 642. — 816 с. — ISBN 0-8493-8523-7.


Эта статья входит в число добротных статей русскоязычного раздела Википедии.


{{bottomLinkPreText}} {{bottomLinkText}}
Трёхэтапный протокол
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?