Является ли 1024-битный rsa безопасным или его сейчас можно взломать? Безопасно ли для моей программы использовать 1024-битный rsa? Я прочитал на http://pcworld.about.com/od/privacysecurity1/Researcher-RSA-1024-bit-encry.htm, что 1024-битное шифрование небезопасно, но я считаю, что 2048-битное медленнее, а также я вижу, что различные https-сайты (даже PayPal) используют 1024-битное шифрование. Достаточно ли безопасно 1024-битное шифрование?
является 1024-битным rsa безопасным
Ответы (7)
В последний раз, когда я проверял, NIST рекомендует 2048-битный RSA и прогнозирует, что он останется безопасным до 2030 года. .pdf" rel="noreferrer">в этом PDF есть таблица.
Редактировать: они на самом деле предсказывают, что 1024-битная версия будет в порядке до 2010 года, затем 2048-битная до 2030 года, а затем 3072-битная. И это NIST, а не АНБ. Прошло слишком много времени с тех пор, как я написал свою диссертацию, LOL.
Что вы пытаетесь защитить? Если вы шифруете что-то не очень важное, то 1024 может подойти, но если вы защищаете что-то очень важное, например, чью-то медицинскую или финансовую информацию, то 4096 бит будет лучше.
Размер ключа действительно зависит от того, что вы защищаете, и от того, как долго вы ожидаете, что шифрование будет храниться. Если ваши временные рамки таковы, что информация действительна только в течение 10 минут, тогда 1024 работает нормально, а для 10 лет защиты это не так.
Итак, что вы защищаете?
Нет простого ответа на вопрос "безопасен ли размер n?" потому что это зависит от ресурсов ожидаемого злоумышленника. Это состоит из двух частей:
- Ресурсы, которые атакующий готов инвестировать, сильно зависят от ситуации: победа над бабушкой, скучающим студентом-информатиком или полной секретной службой какой-нибудь большой, богатой страны не требует такой же мощности атаки. Это также зависит от воспринимаемой ценности защищенных данных.
- При проектировании системы вам нужен некоторый запас прочности, что означает, что вы сделаете некоторые пророчества о том, как вычислительная мощность будет развиваться в будущем, и это поднимает сложный вопрос о понятии затраты.
Таким образом, существует несколько оценок, предложенных различными исследователями и государственными институтами. Этот сайт предлагает обзор таких методов с онлайн-калькуляторами, так что вы можете немного поиграть с некоторыми входными данными. параметры.
Короткий ответ: если вам нужна краткосрочная безопасность (то есть безопасность не актуальна после, скажем, 2015 года) и 1024 бит вам недостаточно, то ваши враги должны быть действительно очень сильными. Страшно так. Вплоть до того, что у вас должны быть другие, более насущные проблемы.
Чтобы получить полезный ответ, необходимо определить значение слова secure.
Ваш дом в безопасности? В основном мы делаем это «достаточно хорошим». Например, часто бывает достаточно сделать вход более трудным, чем соседям. Таким образом, воры тратят время, пытаясь проникнуть в соседнюю дверь, а не в вашу квартиру.
Это может быть безопасно, если для взлома требуется X часов, а ценный контент стоит Y. Превратить время в деньги сложно, но если взломщику требуется 100 часов его времени, чтобы взломать, а содержание вашей информации стоит, скажем, 100 долларов, то ваши данные, вероятно, достаточно защищены.
Ничто не будет полностью безопасным навсегда. Если вас это так беспокоит, просто используйте 2048-бит и пожертвуйте скоростью ради большей безопасности.
Кроме того, как говорится в статье:
Но определение простых чисел, составляющих огромное целое число, практически невозможно без большого количества компьютеров и большого количества времени.
Все зависит от того, думаете ли вы, что люди действительно будут так усердно пытаться получить любую информацию, которую вы пытаетесь защитить.
Нашел недавнюю статью, посвященную именно этому вопросу:
On the Security of 1024-bit RSA and
160-bit Elliptic Curve Cryptography
version 2.1, September 1, 2009
http://eprint.iacr.org/2009/389.pdf
Говорят, что в настоящее время 1024-битные числа не могут быть факторизованы, но 1024-битный RSA (что составляет около 310 десятичных цифр) не считается достаточно безопасным. Рекомендуется использовать RSA с разрядностью 2048 бит или более, если требуется долгосрочная безопасность. Слишком много исследовательских компаний, которые хорошо финансируются, проводят исследования, и есть шанс, что они вообще не будут делиться всем. Так что я думаю, мы можем сказать, что это совсем не безопасно. Я имею в виду, что если однажды мне придется зашифровать важные данные, я бы предпочел 2048 бит или больше, учитывая долгосрочную безопасность и неизвестные разработки в этой области.