Рейтинг:1

Каковы последствия для безопасности расшифровки RSA зашифрованного текста >= модуля?

флаг vu

Читая разделы о расшифровке в ПККС#1 v2.2, я заметил, что алгоритмы расшифровки обязаны выводить символ отказа: Ошибка расшифровки когда математическая подпрограмма RSA сообщает представитель зашифрованного текста вне досягаемости.

Хотя в примечаниях по соображениям безопасности говорится, что удаление заполнения должно быть процессом «покерфейс», в нем ничего не говорится о том, что зашифрованный текст находится за пределами дешифруемого диапазона модуля.

Каковы фактические соображения безопасности по этому поводу? Какие ловушки могут возникнуть при расшифровке произвольного зашифрованного текста без проверки его границ?

Рейтинг:1
флаг in

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

Модульные операции будут отображать целое число в произвольное значение в диапазоне [0, N), просто выполняя mod N над входным значением. Обычно это так, поскольку это будет математическим эквивалентом — имейте в виду, что оптимизированные библиотеки могут выполнять другие вычисления.

Злоумышленник, который может изменить входное сообщение, обычно может самостоятельно выбрать эквивалентное сообщение в диапазоне [0, N). Таким образом, обработка больших или меньших целых чисел не должна влиять на безопасность алгоритма RSA.

Тем не менее, было бы плохой идеей удалить эти проверки:

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

В общем: чем выше уверенность в том, что состояние системы находится в допустимых пределах, тем выше безопасность.Предварительные условия и защитные операторы — это относительно дешевые способы убедиться, что входные данные верны и что вычисления не выполняются с использованием значений, выходящих за пределы допустимого диапазона.

Ответить или комментировать

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