Оптимальное асимметричное шифрование с дополнением: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Нет описания правки
Строка 89: Строка 89:
== Литература ==
== Литература ==
* {{статья
* {{статья
|автор = M. Bellare, P. Rogaway
|автор = M. Bellare, P. Rogaway
|заглавие = Optimal Asymmetric Encryption -- How to Encrypt with RSA
|заглавие = Optimal Asymmetric Encryption -- How to Encrypt with RSA
|оригинал =
|ссылка = http://cseweb.ucsd.edu/~mihir/papers/oae.pdf
|ссылка = http://cseweb.ucsd.edu/~mihir/papers/oae.pdf
|язык = англ.
|год = 1995
|язык = en
|ответственный =
|страницы = 19
|автор издания =
|ref = Bellare
|издание =
|тип =
|место =
|издательство = Springer Berlin Heidelberg
|год = 1995
|issue =
|volume = 950
|номер =
|pages = 92-111
|isbn = 978-3-540-60176-0
|issn = 0302-9743
|doi = 10.1007/BFb0053428
|bibcode =
|pmid =
|ref = Optimal Asymmetric Encryption -- How to Encrypt with RSA
}}
}}
* {{статья
* {{статья
|автор = Eiichiro Fujisaki, Tatsuaki Okamoto, David Pointcheval, and Jacques Stern
|автор = Eiichiro Fujisaki, Tatsuaki Okamoto, David Pointcheval, and Jacques Stern
|заглавие = RSA–OAEP is Secure under the RSA Assumption
|заглавие = RSA–OAEP is Secure under the RSA Assumption
|ссылка = http://eprint.iacr.org/2000/061.pdf
|оригинал =
|ссылка = http://eprint.iacr.org/2000/061.pdf
|язык = англ.
|язык = en
|ответственный =
|год = 2001
|автор издания =
|страницы = 16
|издание =
|ref = Fujisaki
|тип =
|место =
|издательство = Springer Berlin Heidelberg
|год = 2001
|issue =
|volume = 2139
|номер =
|pages = 260-274
|isbn = 978-3-540-42456-7
|issn = 0302-9743
|doi = 10.1007/3-540-44647-8_16
|bibcode =
|pmid =
|ref = RSA–OAEP is Secure under the RSA Assumption
}}
}}
* {{статья
* {{статья
|автор = P. Paillier and J. Villar
|автор = P. Paillier and J. Villar
|заглавие = Trading One-Wayness against Chosen-Ciphertext Security in Factoring-Based Encryption
|заглавие = Trading One-Wayness against Chosen-Ciphertext Security in Factoring-Based Encryption
|оригинал =
|ссылка = https://www.iacr.org/archive/asiacrypt2006/42840253/42840253.pdf
|ссылка = https://www.iacr.org/archive/asiacrypt2006/42840253/42840253.pdf
|язык = англ.
|год = 2006
|язык = en
|ответственный =
|страницы = 17
|автор издания =
|ref = Paillier
|издание =
|тип =
|место =
|издательство = Springer Berlin Heidelberg
|год = 2006
|issue =
|volume = 4284
|номер =
|pages = 252-266
|isbn = 978-3-540-49475-1
|issn = 0302-9743
|doi = 10.1007/11935230_17
|bibcode =
|pmid =
|ref = Trading One-Wayness against Chosen-Ciphertext Security in Factoring-Based Encryption
}}
}}
* {{статья
* {{статья
|автор = D. Brown
|автор = D. Brown
|заглавие = What Hashes Make RSA-OAEP Secure?
|заглавие = What Hashes Make RSA-OAEP Secure?
|ссылка = https://eprint.iacr.org/2006/223.pdf
|ссылка = https://eprint.iacr.org/2006/223.pdf
|язык = англ.
|язык = англ.
Строка 134: Строка 179:
}}
}}
* {{статья
* {{статья
|автор = Victor Shoup
|автор = Victor Shoup
|заглавие = OAEP Reconsidered
|заглавие = OAEP Reconsidered
|ссылка = http://www.shoup.net/papers/oaep.pdf
|оригинал =
|ссылка = http://www.shoup.net/papers/oaep.pdf
|язык = англ.
|язык = en
|ответственный =
|год = 2001
|автор издания =
|страницы = 27
|издание =
|ref = Shoup
|тип =
|место =
|издательство = Springer Berlin Heidelberg
|год = 2001
|issue =
|volume = 2139
|номер =
|pages = 239-259
|isbn = 978-3-540-42456-7
|issn = 0302-9743
|doi = 10.1007/3-540-44647-8_15
|bibcode =
|pmid =
|ref = OAEP Reconsidered
}}
}}
* {{статья
* {{статья
|автор = D. Boneh
|автор = D. Boneh
|заглавие = Simplified OAEP for the RSA and Rabin functions
|заглавие = Simplified OAEP for the RSA and Rabin functions
|оригинал =
|ссылка = http://www.math.uni-frankfurt.de/~dmst/teaching/SS2015/Vorlesung/Boneh.OAEP.pdf
|ссылка = http://www.math.uni-frankfurt.de/~dmst/teaching/SS2015/Vorlesung/Boneh.OAEP.pdf
|язык = англ.
|год = 2001
|язык = en
|ответственный =
|страницы = 17
|автор издания =
|ref = Boneh
|издание =
|тип =
|место =
|издательство = Springer Berlin Heidelberg
|год = 2001
|issue =
|volume = 2139
|номер =
|pages = 275-291
|isbn = 978-3-540-42456-7
|issn = 0302-9743
|doi = 10.1007/3-540-44647-8_17
|bibcode =
|pmid =
|ref = Simplified OAEP for the RSA and Rabin functions
}}
}}

{{изолированная статья}}
{{изолированная статья}}



Версия от 14:42, 8 ноября 2015

OAEP (англ. Optimal Asymmetric Encryption Padding, Оптимальное асимметричное дополнение шифрования) — не указано название статьи, обычно используемая совместно с алгоритмом RSA. OAEP предложено не указано название статьи и не указано название статьи[1], а впоследствии стандартизировано в PKCS#1 и RFC 2437.

Является разновидностью сети Фейстеля с использованием не указано название статьи H и G для обработки сообщения перед использованием асимметричного шифрования. Данная схема позволяет добиться устойчивости к атакам на основе подобранного открытого текста, а также атакам на основе подобранного шифротекста. OAEP также позволяет создать одностороннюю функцию с потайным входом «Все, кроме одного»[1].

История

Оригинальная версия OAEP, предложенная Белларом и Рогвеем в 1994 году заявлялась как устойчивая к атакам на основе подобранного шифротекста при использовании любой односторонней функции с потайным входом. Дальнейшие исследования показали, что такая схема обладает устойчивостью только к атакам на основе неадаптивно подобранного шифротекста. Несмотря на это, было доказано, что в не указано название статьи при использовании стандартного RSA с шифрующей экспонентой, схема обладает так же устойчивостью к атакам на основе адаптивно подобранного шифротекста[2]. В более новых работах было доказано, что в стандартной модели (когда хеш-функции не моделируются как случайные оракулы) невозможно доказать устойчивость к атакам на основе адаптивного шифротекста в случае использования RSA[3][4].

Алгоритм OAEP

Схема OAEP

Классическая схема OAEP состоит из двух ячеек Фейстеля в каждой из которых используются криптографические хеш-функции. На вход сеть Фейстеля получает сообщение с дописанными к нему проверяющими нулями и ключ - случайную строку[1].

В схеме используются следующие обозначения:

  •  — число бит в блоке RSA.
  • и  — фиксированные протоколом целые числа.
  •  — открытый текст сообщения, -битная строка.
  • и  — криптографические хеш-функции, заданные протоколом.

Шифрование

  1. Сообщению дописывается нулей, благодаря чему оно достигает бит в длину.
  2. Генерируется случайная -битная строка .
  3. расширяет бит строки до бит.
  4. .
  5. ужимает бит до бит.
  6. .
  7. Зашифрованный текст .

Дешифрование

  1. Восстанавливается случайная строка
  2. Восстанавливается исходное сообщение как
  3. Последние символов расшифрованного сообщения проверяются на равенство нулю. Если имеются ненулевые символы, то сообщение подделано злоумышленником.

Модификации

В силу таких недостатков, как невозможность доказать криптографическую стойкость к атакам на основе подобранного шифротекста, а так же низкая скорость работы схемы[5], впоследствии были предложены модификации на основе OAEP, которые устраняют данные недостатки.

Алгоритм OAEP+

не указано название статьи предложил свой вариант схемы дополнения на основе OAEP (называемый OAEP+), который является устойчивым к атакам с адаптивно подобранным шифротекстом в случае комбинирования с любой односторонней функцией с потайным входом[6].

  •  — число бит в блоке RSA.
  • и  — фиксированные протоколом целые числа.
  • открытый текст сообщения, -битная строка.
  • , и  — криптографические хеш-функции, заданные протоколом.

Шифрование

  1. Генерируется случайная -битная строка .
  2. преобразует в строку длины .
  3. преобразует в строку длины .
  4. Составляется левая часть сообщения .
  5. преобразует в строку длины .
  6. Составляется правая часть сообщения .
  7. Зашифрованный текст .

Дешифрование

  1. Восстанавливается случайная строка .
  2. разбивается на две части и , размерами и бит соответственно.
  3. Восстанавливается исходное сообщение как .
  4. Если не выполняется , то сообщение подделано.

Алгоритм SAEP/SAEP+

не указано название статьи предложил две упрощенные реализации OAEP, названные SAEP и SAEP+ соответственно. Основная идея упрощения шифрования заключается в отсутствии последнего шага - сообщение "склеивалось" с изначально сгенерированной случайной строкой . Таким образом, схема состоит только из одной ячейки Фейстеля, благодаря чему достигается прирост к скорости работы. Недостатком алгоритма является сильное уменьшение длины сообщения. Стоит отметить, что при прочих равных, SAEP+ имеет меньше ограничений чем SAEP[7].

В схеме используются следующие обозначения:

  •  — число бит в блоке RSA.
  • и  — фиксированные протоколом целые числа.
  • открытый текст сообщения, -битная строка.
  • и  — криптографические хеш-функции, заданные протоколом.

Шифрование SAEP+

  1. Генерируется случайная -битная строка .
  2. преобразует в строку длины .
  3. преобразует в строку длинны .
  4. Вычисляется .
  5. Зашифрованный текст .

Дешифрование SAEP+

  1. Вычисляется , где и  — строки размерами и соответственно.
  2. Проверяется равенство . Если равенство выполняется, то исходное сообщение , если нет — то сообщение подделано злоумышленником.

Надежность схем в случае использования функции Рабина и RSA была доказана только при серьезном ограничении на длину передаваемого текста: для SAEP+ и дополнительно для SAEP[7].

См. также

Примечания

  1. 1 2 3 M. Bellare, P. Rogaway. Optimal Asymmetric Encryption — How to encrypt with RSA. Extended abstract in Advances in Cryptology — Eurocrypt '94 Proceedings, Lecture Notes in Computer Science Vol. 950, A. De Santis ed, Springer-Verlag, 1995. full version (pdf)
  2. Eiichiro Fujisaki, Tatsuaki Okamoto, David Pointcheval, and Jacques Stern. RSA-- OAEP is secure under the RSA assumption. In J. Kilian, ed., Advances in Cryptology — CRYPTO 2001, vol. 2139 of Lecture Notes in Computer Science, SpringerVerlag, 2001. full version (pdf)
  3. P. Paillier and J. Villar, Trading One-Wayness against Chosen-Ciphertext Security in Factoring-Based Encryption, Advances in Cryptology — Asiacrypt 2006.
  4. D. Brown, What Hashes Make RSA-OAEP Secure?, IACR ePrint 2006/233.
  5. Peter Schartner. A low-cost alternative for OAEP. Technical Report TR-syssec-11-02, University of Klagenfurt, Austria. June 2011.full version (pdf)
  6. Victor Shoup. OAEP Reconsidered. IBM Zurich Research Lab, Saumerstr. 4, 8803 Ruschlikon, Switzerland. September 18, 2001. full version (pdf)
  7. 1 2 D. Boneh.Simplified OAEP for the RSA and Rabin functions. In proceedings of Crypto '2001, Lecture Notes in Computer Science, Vol. 2139, Springer-Verlag, pp. 275—291. 2001. full version (pdf)

Литература