26-06-2023
RSA-KEM (RSA Key Encapsulation Method) — механизм шифрования ключа для передачи в криптосистемах с открытым ключом.
Содержание |
RSA-KEM является популярным механизмом шифрования ключа, сочетающим в себе ложные перестановки RSA и KDF (Key Derivation Function). Обладает простотой и превосходными защитными свойствами, по сравнению с OAEP или OAEP+. Основной недостаток состоит в том, что шифротекст немного больше исходного текста.
Процесс шифрования можно коротко представить следующим образом:
Принимающий может востановить w из принятого шифртекста и затем сгенерировать y, чтоб и отправитель и принимающий могли согласиться с одинаковым симметричным ключом.
Механизм шифрования ключа имеет следующие системные параметры:
Открытый ключ состоит из RSA коэффициента , который является произведением двух больших простых чисел и экспоненты , где ( - наибольший общий делитель). Это так же выделяет key derivation function KDF. Пусть nLen обозначает длинну n в байтах. Секретный ключ состоит из дешифровой экспоненты d, где . Алгоритм генерации ключа ничего не принимает на вход и выполняется следующим образом:
n, e, d - целые положительные числа.
Целью алгоритма шифрования является произвести псевдо-случайный ключ K длинны KeyLen и шифротекст , который шифрует K. Алгоритм шифрования принимает следующее: - открытый ключ, состоящий из целого положительного n и e. - нет опций шифрования. Выполняется следующим образом:
Алгоритм дешифрования принимает на вход следующее: - закрытый ключ, состоящий из целого положительного n и d. - шифротекст . Выполняется следующим образом:
Безопасность RSA-KEM может быть проанализированна в случайной моделе предсказаний, в которой моделируется вызов KDF как случайной предсказательной очереди. Легко показать, что
где:
- это алгоритм для решения случайного случая RSA задачи, который происходит примерно за то же время, что и .
- это граница числа дешифровок очередей предсказания сделанных .
- это меньшая граница n.
RSA-KEM предоставляет намного лучшую безопасность, чем RSA-OAEP+ или RSA-OAEP.
Безопасность RSA-KEM не ухудшается при увеличении длинны шифротекста. Однако, это верно только тогда, когда число В алгоритме шифрования выбрано однородно модулю , или по меньшей мере не неотличимо откланяется от постоянного распределения. Это отличает RSA-OAEP+, где безопасность снижается линейно от величины шифротекста.
RSA-KEM.