Ответ 1
Это зависит, если вы говорите о сетевых или процессорных издержках.
Накладные расходы в сети - это размер пакета. Первоначальное рукопожатие подразумевает некоторую асимметричную криптографию; набор сертификатов 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.
(Как обычно, для проблем с производительностью фактические меры всегда превзошли теорию.)