Какой набор шифров SSL имеет наименьшие издержки? - PullRequest
11 голосов
/ 02 мая 2011

Какой набор шифров SSL имеет наименьшие издержки? Явный компромисс был бы нежелателен, однако существуют возрастные проблемы. Например, RC4 все еще находится в спецификации SSL 3.0. Что является хорошей рекомендацией для сайта с высоким трафиком? Изменится ли комплект шифров, если он не используется для http?

Ответы [ 4 ]

20 голосов
/ 02 мая 2011

Это зависит от того, говорите ли вы о загрузке сети или ЦП.

Затраты в сети связаны с размером пакета.Начальное рукопожатие подразумевает некоторую асимметричную криптографию;комплекты шифров DHE (когда серверные сертификаты используются только для цифровых подписей) содержат сообщение ServerKeyExchange, для которого потребуется несколько сотен дополнительных байтов по сравнению с обменом ключами RSA.Это единовременная стоимость, и клиенты будут повторно использовать сеансы (продолжая предыдущий сеанс TLS с использованием только симметричного сокращенного обмена ключами).

Кроме того, данные обмениваются «записями».Запись может содержать до 16 КБ данных.Размер записи в служебной информации составляет от 21 байта (с RC4 и MD5) до 57 байтов (с 16-байтовым блочным шифром, таким как AES, SHA-1 и TLS 1.1 или более поздней версии).Так что это в худшем случае 0,34% размера служебной информации.

Загрузка ЦП SSL теперь довольно мала.Используйте openssl speed, чтобы получить необработанные цифры;на моем ПК (2,4 ГГц Core2 от двухлетней давности) RC4, кажется, примерно в два раза быстрее, чем AES, но AES уже на скорости 160 МБ / с, то есть в 16 раз быстрее, чем 100baseT ethernet может передавать.Проверка целостности (с MD5 или SHA-1) будет происходить быстрее, чем шифрование.Таким образом, набор шифров с наименьшей нагрузкой на ЦП должен составлять SSL_RSA_WITH_RC4_128_MD5, но для этого потребуется специальная настройка, чтобы заметить разницу, например, с TLS_RSA_WITH_AES_128_CBC_SHA.Кроме того, на некоторых новых процессорах Intel есть специфичные для AES инструкции , которые позволят AES работать быстрее, чем RC4 в этих системах (клоны VIA C7 x86 также имеют некоторое аппаратное ускорение для некоторых криптографических алгоритмов).RC4 может дать вам дополнительное преимущество в некоторых угловых случаях из-за своего очень маленького кода - в случае, если ваше приложение довольно сильно загружено по размеру кода и у вас возникают проблемы с кэшем L1.

(Как обычно, из-за проблем с производительностью, фактические меры всегда теория ударов.)

4 голосов
/ 02 мая 2011

Шифратор с меньшими издержками - RSA_WITH_RC4_MD5.Обратите внимание, что использование RC4 в TLS не делает его нарушенным, как, например, в WEP, но все же его безопасность может быть подвергнута сомнению.Он также использует HMAC-MD5, который также не является лучшим выбором, хотя атак пока не известно.Несколько веб-сайтов (к сожалению) используют этот шифр только для эффективности.Если вы используете сервер Intel с инструкциями AES-NI, вы можете поэкспериментировать с RSA_WITH_AES_128_SHA1.Это быстрее, чем RSA_WITH_RC4_MD5 в системах, которые я тестировал.

2 голосов
/ 15 апреля 2016

Я искал о SSL / TLS и столкнулся с этим. Я знаю, что ветка старая и просто хотела добавить несколько обновлений на случай, если кто-то здесь потеряется.

Некоторые шифры обеспечивают большую безопасность и производительность. Но с тех пор, как это было опубликовано, было внесено несколько изменений в SSL / TLS, особенно в области безопасности.

Для хороших и всегда обновляемых шифров Проверьте этот генератор SSL / TLS от Mozilla

Стоит также отметить, что если вас беспокоит производительность, в SSL-соединении есть и другие аспекты, которые вы можете изучить, например:

  1. Сшивание OCSP
  2. Сеанс возобновления (билеты)
  3. Возобновление сеанса (кэширование)
  4. Ложный старт (необходим NPN)
1 голос
/ 15 марта 2013

RC4 в SSL больше не считается безопасным.

http://www.isg.rhul.ac.uk/tls/ описывает успешную практическую (хотя и не очень эффективную) атаку на SSL с использованием RC4.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...