Light-industry-up.ru

Экосистема промышленности

RSA-KEM

26-06-2023

RSA-KEM (RSA Key Encapsulation Method) — механизм шифрования ключа для передачи в криптосистемах с открытым ключом.

Содержание

Описание

Введение

RSA-KEM является популярным механизмом шифрования ключа, сочетающим в себе ложные перестановки RSA и KDF (Key Derivation Function). Обладает простотой и превосходными защитными свойствами, по сравнению с OAEP или OAEP+. Основной недостаток состоит в том, что шифротекст немного больше исходного текста.

Процесс шифрования можно коротко представить следующим образом:

  1. Генерируется случайное входное w.
  2. Шифруется w с использованием RSA для передачи принимающему.
  3. Генерируется материал ключа y = KDF(w) для использования в последующем шифровании.

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

Параметры

Механизм шифрования ключа имеет следующие системные параметры:

  1. RSAKeyGen: алгоритм генерации ключа RSA.
  2. KDF: A key derivation function.
  3. KeyLen: положительное целое число.

Генерация ключа

Открытый ключ состоит из RSA коэффициента , который является произведением двух больших простых чисел и экспоненты , где ( - наибольший общий делитель). Это так же выделяет key derivation function KDF. Пусть nLen обозначает длинну n в байтах. Секретный ключ состоит из дешифровой экспоненты d, где . Алгоритм генерации ключа ничего не принимает на вход и выполняется следующим образом:

  1. Вычисление (n, e, d) = RSAKeyGen().
  2. Получение открытого ключа PK(public key).
  3. Получение закрытого ключа pk(privite key).

n, e, d - целые положительные числа.

Шифрование

Целью алгоритма шифрования является произвести псевдо-случайный ключ K длинны KeyLen и шифротекст , который шифрует K. Алгоритм шифрования принимает следующее: - открытый ключ, состоящий из целого положительного n и e. - нет опций шифрования. Выполняется следующим образом:

  1. Генерация случайного числа .
  2. Вычисление .
  3. Вычисление .
  4. Вычисление .
  5. Получение шифротекста и ключа K.

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

Алгоритм дешифрования принимает на вход следующее: - закрытый ключ, состоящий из целого положительного n и d. - шифротекст . Выполняется следующим образом:

  1. Проверка , иначе провал.
  2. Установка .
  3. Проверка , если нет, то провал.
  4. Вычисление .
  5. Вычисление .
  6. Вывод ключа

Анализ безопасности

Безопасность RSA-KEM может быть проанализированна в случайной моделе предсказаний, в которой моделируется вызов KDF как случайной предсказательной очереди. Легко показать, что

.

где:

- это алгоритм для решения случайного случая RSA задачи, который происходит примерно за то же время, что и .

- это граница числа дешифровок очередей предсказания сделанных .

- это меньшая граница n.

RSA-KEM предоставляет намного лучшую безопасность, чем RSA-OAEP+ или RSA-OAEP.

Безопасность RSA-KEM не ухудшается при увеличении длинны шифротекста. Однако, это верно только тогда, когда число В алгоритме шифрования выбрано однородно модулю , или по меньшей мере не неотличимо откланяется от постоянного распределения. Это отличает RSA-OAEP+, где безопасность снижается линейно от величины шифротекста.

Примечания

Ссылки

  • V. Shoup. A Proposal for an ISO Standard for Public Key Encryption. Preprint, December 2001.
  • FCD 18033-2 Encryption algorithms — Part 2: Asymmetric ciphers.
  • Securing RSA-KEM via the AES
  • RSA Algorithm

RSA-KEM.

© 2014–2023 light-industry-up.ru, Россия, Краснодар, ул. Листопадная 53, +7 (861) 501-67-06