Действительно ли возможно получить открытый ключ знания закрытого ключа RSA и набор “исходных данных => зашифрованные данные” записи?

Я работаю над apllication, который позволяет плагинам получать доступ к другому набору функциональности, каждый плагин обеспечивает "строку инициализации", которая устанавливает уровень доступа к различным функциям. Разработчики отправляют меня, это представляет в виде строки, и я шифрую их использующий мой закрытый ключ RSA на 1 024 бита и передаю закодированные данные обратно. При запуске мое приложение декодирует закодированные данные (закодированная строка инициализации) использование встроенного открытого ключа и если "декодируемые данные! = строка инициализации" этому не удается запуститься.

Так, действительно ли возможно использовать базу данных "строки инициализации" => "закодированная строка инициализации" (извлеченный из других плагинов), чтобы взломать мой закрытый ключ или позволить к "в лоб" он в разумный срок?

5
задан Riz 17 April 2010 в 18:21
поделиться

3 ответа

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

Если вы используете правильную схему цифровой подписи RSA (например, одну из описанных в PKCS # 1 , раздел 8 «Схемы подписи с приложением»), с достаточно большой ключ RSA (1024 бит или более), сгенерированный с помощью правильно реализованного алгоритма генерации ключей, затем нет известного вычислительно выполнимого способа для злоумышленника использовать подписи, которые вы создали, для подделки новых подписи (и, тем более , взломать закрытый ключ RSA). Ни в коей мере не доказано, что ваши подписи не помогают злоумышленнику, но 30 лет публичных исследований на эту тему не выявили такого нарушения.

Однако обратите внимание, что детали использования, в частности заполнение (начальная часть, которая преобразует данные, подлежащие подписи, в большое число, которое может обработать математическое ядро ​​RSA), оказались деликатными; многие предложенные способы выполнения заполнения были успешно атакованы.Заполнение PKCS # 1 находилось под пристальным вниманием в течение некоторого времени (два десятилетия для дополнения "v1.5") и до сих пор сопротивлялось всем подобным попыткам. Семейство набивок "ISO 9796" не очень хорошо себя чувствовало, многие варианты были сломаны.

Если вы не вычисляете свои подписи в соответствии с устоявшимся стандартом (например, PKCS # 1), то вы ищете проблемы. Не делай этого. К счастью, большинство реализаций RSA (в криптографических библиотеках и языках / средах программирования) следуют PKCS # 1.

6
ответ дан 18 December 2019 в 14:43
поделиться

Этот вид криптоаналитической атаки называется атакой по известному открытому тексту , и ее действительно сложно применить к RSA1024.

Или, по крайней мере, попытаться взломать ключ RSA с помощью известных открытых текстов будет так же сложно, как попытаться сделать это без них. Единственный известный вид атаки, связанный с вашей проблемой, - это временная атака, но она должна хорошо знать конкретная реализация вашего RSA, поскольку она работает, измеряя время, необходимое для расшифровки.

Дело в том, что безопасность RSA обеспечивается двумя сложными математическими задачами, и знание простого текста и связанного с ним зашифрованного текста не очень поможет вам в этом.

В любом случае для атак известным открытым текстом обычно требуется выполнение большого количества выборок (например, миллионы или миллиарды для DES ), поэтому это не так просто и для более слабых алгоритмов.

5
ответ дан 18 December 2019 в 14:43
поделиться

Вся суть технологии открытых / закрытых ключей от RSA состоит в том, что ее очень очень трудно отменить.

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

2
ответ дан 18 December 2019 в 14:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: