Jump to content

Ключевой механизм инкапсуляции

Блок-схема ключевого механизма инкапсуляции, связывающая входы и выходы алгоритмов Gen, Encap и Decap KEM.
Механизм инкапсуляции ключей для безопасной транспортировки секретного ключа. от отправителя к получателю состоит из трех алгоритмов: Gen, Encap и Decap. Кружочки, заштрихованные синим цветом — открытый ключ получателя. и инкапсуляция — может быть безопасно раскрыт злоумышленнику, а поля закрашены красным — закрытый ключ получателя и инкапсулированный секретный ключ — должно храниться в тайне.

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

KEM позволяет отправителю, знающему открытый ключ, одновременно генерировать короткий случайный секретный ключ и инкапсуляцию или зашифрованный текст секретного ключа с помощью алгоритма инкапсуляции KEM . KEM Получатель, которому известен закрытый ключ, соответствующий открытому ключу, может восстановить тот же случайный секретный ключ из инкапсуляции с помощью алгоритма декапсуляции . [1] [2] [3]

Целью безопасности KEM является предотвращение восстановления любой информации об инкапсулированных секретных ключах кем-либо, кто не знает закрытого ключа, даже после подслушивания или отправки получателю других инкапсуляций для изучения реакции получателя. [1] [2] [3]

Отличие от шифрования с открытым ключом

[ редактировать ]
Блок-схема схемы шифрования с открытым ключом, связывающая входные и выходные данные алгоритмов генерации, шифрования и дешифрования.
Схема шифрования с открытым ключом.

Разница между схемой шифрования с открытым ключом и KEM заключается в том, что схема шифрования с открытым ключом позволяет отправителю выбирать произвольное сообщение из некоторого пространства возможных сообщений, тогда как KEM выбирает для отправителя короткий секретный ключ случайным образом. [1] [2] [3]

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

Большинство схем шифрования с открытым ключом, таких как RSAES-PKCS1-v1_5 , RSAES-OAEP и шифрование Эльгамала , ограничены небольшими сообщениями. [6] [7] и в любом случае почти всегда используются для шифрования короткого случайного секретного ключа в гибридной криптосистеме. [8] [9] [5] И хотя схему шифрования с открытым ключом, наоборот, можно преобразовать в KEM, выбрав случайный секретный ключ и зашифровав его как сообщение, легче спроектировать и проанализировать безопасный KEM, чем разработать безопасную схему шифрования с открытым ключом как основе.Таким образом, большинство современных схем шифрования с открытым ключом основаны на KEM, а не наоборот. [10] [5]

Определение

[ редактировать ]

Синтаксис

[ редактировать ]

КЕМ состоит из трех алгоритмов: [1] [2] [3] [11] [12]

  1. Генерация ключей , , не принимает никаких входных данных и возвращает пару открытых ключей и закрытый ключ .
  2. Инкапсуляция , , принимает открытый ключ , случайным образом выбирает секретный ключ и возвращает вместе с его инкапсуляцией .
  3. Декапсуляция , , принимает закрытый ключ и инкапсуляция и любой из них возвращает инкапсулированный секретный ключ или терпит неудачу, что иногда обозначается возвратом (так называемое « дно »).

Корректность

[ редактировать ]

KEM является правильным , если для любой пары ключей созданный , декапсуляция инкапсуляции возвращенный с высокой вероятностью дает тот же ключ , то есть, . [2] [3] [11] [12]

Безопасность: IND-CCA

[ редактировать ]

Безопасность KEM количественно определяется его неотличимостью от атаки с выбранным зашифрованным текстом , IND-CCA, которая примерно определяет, насколько лучше злоумышленник может сделать, чем подбрасывание монеты, чтобы определить, инкапсулирован ли ключ, учитывая случайный ключ и инкапсуляцию, эта инкапсуляция или является независимым случайным ключом. [2] [3] [11] [12]

В частности, в игре IND-CCA:

  1. Алгоритм генерации ключей запускается для генерации .
  2. раскрывается противнику.
  3. Противник может запросить для произвольных инкапсуляций по выбору противника.
  4. Алгоритм инкапсуляции запускается для случайной генерации секретного ключа и инкапсуляции. и еще один секретный ключ генерируется независимо случайным образом.
  5. Подбрасывается честная монета, дающая результат .
  6. Пара раскрывается противнику.
  7. Противник может снова запросить для произвольных инкапсуляций по выбору противника, исключением за .
  8. Противник возвращает предположение , и выигрывает игру, если .

Преимущество IND-CCA противника по , то есть вероятность правильного различения инкапсулированного ключа от независимо случайно выбранного ключа, выходящая за рамки честного подбрасывания монеты.

Примеры и мотивация

[ редактировать ]

Традиционное шифрование RSA с -битовые модули и экспонента , определяется следующим образом: [13] [14] [15]

  • Генерация ключей , :
  1. Создать -полупервичный бит с случайное удовлетворение , где функция Кармайкла .
  2. Вычислить .
  3. Возвращаться как открытый ключ и в качестве закрытого ключа. (Доступно множество вариаций алгоритмов генерации ключей и форматов закрытых ключей. [16] )
  • Шифрование -битное сообщение к открытому ключу , давая :
  1. Закодировать битовую строку как целое число с .
  2. Возвращаться .
  • Расшифровка зашифрованного текста с секретным ключом , давая :
  1. Вычислить .
  2. Расшифровать целое число как битовая строка .

Этот наивный подход совершенно небезопасен.Например, поскольку оно нерандомизировано, оно не может быть защищено даже от атак с использованием известного открытого текста — злоумышленник может определить, отправляет ли отправитель сообщение. ATTACK AT DAWN против сообщения ATTACK AT DUSK просто зашифровав эти сообщения и сравнив зашифрованный текст.

Даже если всегда является случайным секретным ключом, например 256-битным ключом AES , когда выбран для оптимизации эффективности, поскольку , сообщение можно вычислить по зашифрованному тексту просто извлекая кубические корни действительных чисел, и существует множество других атак на простой RSA . [13] [14] различные схемы рандомизированного заполнения В ходе попыток были разработаны , иногда неудачные, например RSAES-PKCS1-v1_5. [13] [17] [18] — чтобы сделать его безопасным для произвольных коротких сообщений . [13] [14]

Поскольку сообщение почти всегда является коротким секретным ключом для с симметричным ключом, аутентифицированного шифра используемого для шифрования сообщения произвольной битовой строки, более простой подход, называемый RSA-KEM, заключается в выборе элемента случайным образом и использовать это для получения секретного ключа с помощью функции получения ключа. , примерно так: [19] [8]

  • Генерация ключей : Как указано выше.
  • Инкапсуляция открытого ключа , давая :
  1. Выберите целое число с равномерно случайным образом.
  2. Возвращаться и как его инкапсуляция.
  • Декапсуляция с секретным ключом , давая :
  1. Вычислить .
  2. Возвращаться .

Этот подход проще реализовать и обеспечивает более четкое решение проблемы RSA , чем схемы заполнения, такие как RSAES-OAEP . [19]

Эльгамаль

[ редактировать ]

Традиционное шифрование Эльгамаля определяется над мультипликативной подгруппой конечного поля. с генератором порядка следующее: [20] [21]

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

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

Однако это не позволяет добиться неотличимости от атаки с выбранным зашифрованным текстом .Например, противник, имеющий зашифрованный текст за неизвестное сообщение может тривиально расшифровать его, запросив у оракула дешифрования отдельный зашифрованный текст , давая связанный открытый текст , из которого может быть восстановлен с помощью . [20]

Традиционное шифрование Эльгамаля можно адаптировать к настройке эллиптической кривой, но для этого требуется какой-то способ обратимого кодирования сообщений в виде точек на кривой, что менее тривиально, чем кодирование сообщений в виде целых чисел mod. . [22]

Поскольку сообщение почти всегда является коротким секретным ключом для с симметричным ключом, аутентифицированного шифра используемого для шифрования сообщения произвольной битовой строки, более простой подход состоит в том, чтобы получить секретный ключ из и обойтись без и вообще, как КЕМ, используя функцию деривации ключей : [1]

  • Генерация ключей : Как указано выше.
  • Инкапсуляция открытого ключа , давая :
  1. Выбирать равномерно случайным образом.
  2. Вычислить .
  3. Возвращаться и как его инкапсуляция.
  • Декапсуляция с секретным ключом , давая :
  1. Проиграть и вернуться если , то есть, если не входит в подгруппу, созданную .
  2. Вычислить .
  3. Возвращаться .

В сочетании с аутентифицированным шифром для шифрования сообщений произвольной битовой строки такая комбинация по сути представляет собой интегрированную схему шифрования .Поскольку этому KEM требуется только односторонняя функция получения ключа для хэширования случайных элементов группы, в которой он определен, в этом случае, а не обратимое кодирование сообщений, его легко расширить до более компактных и эффективных групп эллиптических кривых для той же безопасности, что и в ECIES, Elliptic Curve Integrated Encryption Scheme .

  1. ^ Jump up to: а б с д и ж г Гэлбрейт, Стивен (2012). «§23.1.1: Парадигма KEM/DEM». Математика криптографии с открытым ключом . Издательство Кембриджского университета. стр. 471–478. ISBN  978-1-107-01392-6 .
  2. ^ Jump up to: а б с д и ж г час Шуп, Виктор (май 2000 г.). Пренил, Барт (ред.). Использование хэш-функций в качестве защиты от атаки с использованием выбранного зашифрованного текста . Достижения в криптологии – EUROCRYPT 2000 . Конспекты лекций по информатике. Том. 1807. Брюгге, Бельгия: Спрингер. стр. 275–288. дои : 10.1007/3-540-45539-6_19 . ISBN  978-3-540-67517-4 .
  3. ^ Jump up to: а б с д и ж г час Крамер, Рональд ; Шуп, Виктор (2003). «Разработка и анализ практических схем шифрования с открытым ключом, обеспечивающих защиту от атак с использованием адаптивно выбранного зашифрованного текста» . SIAM Journal по вычислительной технике . 33 (1). Общество промышленной и прикладной математики : 167–226. дои : 10.1137/S0097539702403773 .
  4. ^ FIPS 203 (проект): Стандарт механизма инкапсуляции ключей на основе модульной решетки (PDF) , Национальный институт стандартов и технологий , 24 августа 2023 г., номер документа : 10.6028/NIST.FIPS.203.ipd
  5. ^ Jump up to: а б с Барнс, Р.; Бхаргаван, К.; Липп, Б.; Вуд, К. (февраль 2022 г.). Гибридное шифрование с открытым ключом . Рабочая группа по интернет-инжинирингу . дои : 10.17487/RFC9180 . РФК 9180 .
  6. ^ Калиски, Б. ; Йонссон, Дж.; Раш, А. (ноябрь 2016 г.). Мориарити, К. (ред.). PKCS #1: Спецификации криптографии RSA, версия 2.2 . Рабочая группа по интернет-инжинирингу . дои : 10.17487/RFC8017 . РФК 8017 .
  7. ^ Менезес, Альфред Дж .; ван Оршот, Пол К .; Ванстон, Скотт А. (октябрь 1996 г.). «8. Шифрование с открытым ключом». Справочник по прикладной криптографии (PDF) . ЦРК Пресс. стр. 283–319. ISBN  0-8493-8523-7 .
  8. ^ Jump up to: а б Фергюсон, Нильс ; Коно, Тадаёси ; Шнайер, Брюс (2010). «12. РСА». Криптографическая инженерия . Уайли. стр. 195–211. ISBN  978-0-470-47424-2 .
  9. ^ Каллас, Дж . ; Доннерхаке, Л.; Финни, Х .; Шоу, Д.; Тайер, Р. (ноябрь 2007 г.). Формат сообщения OpenPGP . Рабочая группа по интернет-инжинирингу . дои : 10.17487/RFC4880 . РФК 4880 .
  10. ^ «Постквантовая криптография: часто задаваемые вопросы» . Национальный институт стандартов и технологий . 2024-07-19. Архивировано из оригинала 26 июня 2024 г. Проверено 20 июля 2024 г.
  11. ^ Jump up to: а б с Дент, Александр В. (2002), Руководство дизайнера по KEM , Архив электронной печати криптологии, Международная ассоциация криптологических исследований
  12. ^ Jump up to: а б с Хофхайнц, Деннис; Хевельманс, Катрин; Кильц, Эйке (ноябрь 2017 г.). Калай, Яэль; Рейзин, Леонид (ред.). Модульный анализ преобразования Фудзисаки-Окамото . Теория криптографии – TCC 2017 . Конспекты лекций по информатике. Том. 10677. Балтимор, Мэриленд, США: Спрингер. стр. 341–371. дои : 10.1007/978-3-319-70500-2_12 . ISBN  978-3-319-70499-9 .
  13. ^ Jump up to: а б с д Омассон, Жан-Филипп (2018). «10. РСА». Серьезная криптография: практическое введение в современное шифрование . Нет крахмального пресса. стр. 181–199. ISBN  978-1-59327-826-7 .
  14. ^ Jump up to: а б с Стинсон, Дуглас Р. (2006). «5. Криптосистема RSA и факторизация целых чисел». Теория и практика криптографии (3-е изд.). Чепмен и Холл/CRC. стр. 161–232. ISBN  978-1-58488-508-5 .
  15. ^ Ривест, РЛ ; Шамир, А. ; Адлеман, Л. (1 февраля 1978 г.). «Метод получения цифровых подписей и криптосистем с открытым ключом» (PDF) . Коммуникации АКМ . 21 (2). Ассоциация компьютерной техники: 120–126. дои : 10.1145/359340.359342 .
  16. ^ Швенда, Питер; Герман, Матуш; Секан, Питер; Квасьневский, Рудольф; Форманек, Давид; Комарек, Дэвид; Матяш, Вашек (август 2016 г.). Вопрос на миллион ключей: исследование происхождения открытых ключей RSA . 25-й симпозиум USENIX по безопасности. Остин, Техас, США: Ассоциация USENIX. стр. 893–910. ISBN  978-1-931971-32-4 .
  17. ^ Бляйхенбахер, Дэниел (август 1998 г.). Кравчик, Хьюго (ред.). Атаки с использованием выбранного зашифрованного текста против протоколов, основанных на стандарте шифрования RSA PKCS #1 . Достижения в криптологии – КРИПТО '98 . Конспекты лекций по информатике. Том. 1462. Санта-Барбара, Калифорния, США: Спрингер. стр. 1–12. дои : 10.1007/BFb0055716 . ISBN  978-3-540-64892-5 .
  18. ^ Корон, Жан-Себастьян; Джой, Марк; Наккеш, Дэвид ; Пайе, Паскаль (май 2000 г.). Пренил, Барт (ред.). Новые атаки на шифрование PKCS#1 v1.5 . Достижения в криптологии – EUROCRYPT 2000 . Конспекты лекций по информатике. Полный. 1807. Брюгге, Бельгия: Спрингер. стр. 369–381. дои : 10.1007/3-540-45539-6_25 . ISBN  978-3-540-67517-4 .
  19. ^ Jump up to: а б Шуп, Виктор (2001), Предложение по стандарту ISO для шифрования с открытым ключом (версия 2.1) , Архив электронной печати криптологии, Международная ассоциация криптологических исследований
  20. ^ Jump up to: а б Гэлбрейт, Стивен (2012). «§20.3: Учебник по шифрованию Эльгамаля». Математика криптографии с открытым ключом . Издательство Кембриджского университета. стр. 471–478. ISBN  978-1-107-01392-6 .
  21. ^ Эльгамал, Тахер (август 1984 г.). Блейкли, Джордж Роберт ; Чаум, Дэвид (ред.). Криптосистема с открытым ключом и схема подписи на основе дискретных логарифмов . Достижения в криптологии – КРИПТО 1984 . Конспекты лекций по информатике. Том. 196. Санта-Барбара, Калифорния, США: Спрингер. стр. 10–18. дои : 10.1007/3-540-39568-7_2 . ISBN  978-3-540-15658-1 .
  22. ^ Коблиц, Нил (январь 1987 г.). «Криптосистемы с эллиптической кривой» (PDF) . Математика вычислений . 48 (177). Американское математическое общество : 203–209. дои : 10.1090/S0025-5718-1987-0866109-5 .

См. также

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: bd38c541bb5359b3fd2c4595954e766f__1721595540
URL1:https://arc.ask3.ru/arc/aa/bd/6f/bd38c541bb5359b3fd2c4595954e766f.html
Заголовок, (Title) документа по адресу, URL1:
Key encapsulation mechanism - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)