Какую длину ключа RSA следует использовать для моих сертификатов SSL?

Я занимаюсь созданием CSR, и мне интересно, какая из них, возможно, самая лучшая длина для моего ключа RSA.

Конечно, 384, вероятно, слишком слаб, а 16384, вероятно, слишком медленный.

Существует ли консенсус по длине ключа, который следует использовать в зависимости от срока службы сертификата?

Изменить: Как и большинство людей, я хочу, чтобы мой ключ был достаточно сильным. Меня не волнует, что NSA может сломать мой ключ в 2019 году. Я просто хочу знать, какая лучшая практика, когда вы планируете нормальный бизнес (например, сайт электронной коммерции)

Ответ 1

Этот ответ немного устарел. Имейте в виду, что это может не представлять собой лучшую передовую практику.

Если вы постоянно обновляете поле, подумайте об улучшении этого ответа.


Брюс Шнайер написал еще в 1999 году:

Более длинные длины клавиш лучше, но только до определенной точки. AES [симметричный шифр] будет иметь 128-битный, 192-битный и 256-битный ключ длины. Это намного дольше, чем необходимых в обозримом будущем. В факт, мы даже не можем представить мир где 256-битный поиск грубой силы возможное. Это требует прорывы в физике и наши понимание вселенной. Для криптография с открытым ключом [асимметричные шифры], 2048-битные ключи обладают таким же свойством; дольше бессмысленны.

Wikipedia пишет:

RSA утверждает, что 1024-бит [асимметричные] клавиши, вероятно, станут в течение некоторого времени между 2006 и 2010 и что 2048-битные ключи До 2030 года. Ключ RSA длина 3072 бит должна использоваться, если безопасность требуется после 2030 года. Руководство по управлению ключами NIST далее предположим, что 15360-битные [асимметричные] ключи RSA эквивалент по силе 256-битным симметричные ключи.

RSA Laboratories пишет (последний раз изменен в 2007 году по archive.org):

Лаборатории RSA в настоящее время рекомендуют [асимметричные] ключевые размеры 1024 бит для корпоративных использование и 2048 бит для ценные ключи, такие как пара корневых ключей используемый сертифицирующим органом.

Было бы хорошо, если бы кто-то, кто знает больше, мог бы ответить, почему существует эта разница.

Ответ 2

Поскольку многие клиенты требуют соблюдения криптографических стандартов NIST, я использую руководство в специальной публикации NIST Special 800 800, Рекомендация для управления ключами Часть 1, §5.6. Большинство наших приложений хорошо подходят для 112-битных бит безопасности, поэтому это соответствует тройному DES (или небольшому выпуску до 128-битного AES) для симметричных шифров и 2048-битовому ключу для RSA. См. Таблицу 2 для приблизительной эквивалентности.

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

Ответ 3

Органы сертификации не будут подписывать csrs размером менее 2048 бит, поэтому вы должны генерировать ваш csr равным 2048 бит.

Ответ 4

В августе этого года Microsoft планирует развернуть патч для Server 2003/2008, Win7 и т.д., для чего потребуется использование минимального 1024-битного ключа RSA. Таким образом, вы можете начать делать свой "минимальный" стандарт.

Ответ 5

Для сертификатов SSL, используемых на веб-сайтах, этот текст с веб-сайта Thawte.com(по состоянию на 2014-07-22) имеет важное значение:

Отраслевые стандарты, установленные Центром сертификации/браузером (CA/B) требуют, чтобы сертификаты, выпущенные после 1 января 2014 года, ДОЛЖНЫ быть как минимум 2048 бит.

Ответ 6

Мне нужно было создать несколько новых сертификатов SSL и не были удовлетворены ответами выше, потому что они казались неопределенными или устаревшими, поэтому я немного поработал. В нижней строке выбранного ответа правильно используется "2048-битные ключи... больше бессмысленно" .

Увеличение длины бит до 4096 добавляет потенциально значимую нагрузку на ваш сервер (в зависимости от существующей нагрузки), предлагая в основном незначительное обновление безопасности

Если вы находитесь в ситуации, когда вам нужно больше, чем 2048-битный ключ, вам не нужна более длинная длина бит, вам нужен новый алгоритм

Ответ 7

Я думаю, что 4096 подходит для RSA

Отметьте Эта ссылка

Конец подписи SHA-1 не является чем-то новым, но Google ускорил процесс хром. В течение следующих нескольких недель вы должны проверить свои сертификаты SSL.

Это может быть полезно