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

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

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

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

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

8 ответов


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

Если вы в курсе поля, пожалуйста, рассмотрите возможность улучшения этого ответа.


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

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

Википедия пишет:

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

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

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

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


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

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


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


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


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

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


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

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

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


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

Регистрация этой ссылке

в конце подписи SHA-1 нет ничего нового, но Google ускорил процесс chrome. В ближайшие несколько недель вы должны проверить свои SSL-сертификаты.

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