Все статьи о SSL SSL и сертификаты

Сертификаты ECC и RSA: какой выбрать?

ECC (Elliptic Curve Cryptography — криптография на эллиптических кривых) и RSA — два алгоритма, используемых для генерации пар ключей SSL-сертификатов. Оба безопасны, но ECC создаёт меньшие ключи с эквивалентной стойкостью и обеспечивает более быстрое TLS-рукопожатие. Для большинства современных развёртываний следует использовать ECC.

Краткое сравнение

ECC (P-256)RSA 2048RSA 4096
Размер ключа256 бит2048 бит4096 бит
Эквивалентная стойкость~128 бит~112 бит~128 бит
Скорость TLS-рукопожатияСамая высокаяСредняяСамая низкая
Размер сертификата~500 байт~1 200 байт~2 400 байт
Генерация ключаБыстраяСредняяМедленная
Поддержка браузерамиВсе современные браузерыУниверсальнаяУниверсальная
По умолчанию в Let’s EncryptРекомендуетсяПоддерживаетсяПоддерживается
По умолчанию в GetHTTPSP-256ДоступенНе предлагается

Почему ECC лучше для большинства случаев

Меньшие ключи — та же стойкость

256-битный ключ ECC обеспечивает стойкость, эквивалентную 3072-битному ключу RSA. Меньшие ключи означают:

  • Меньшие сертификаты → меньше данных передаётся при TLS-рукопожатии
  • Более быстрая проверка подписей → сниженная нагрузка на CPU
  • Меньшая полоса пропускания → важно для высоконагруженных сайтов и мобильных соединений

Более быстрое рукопожатие

Операции подписи ECDSA значительно быстрее RSA, особенно на стороне сервера. Для высоконагруженных сайтов это снижает использование CPU и время до получения первого байта.

Прямая секретность

Современный TLS использует ECDHE (эфемерный протокол Диффи — Хеллмана на эллиптических кривых) для обмена ключами независимо от типа вашего сертификата. Но сертификаты ECC естественно сочетаются с ECDHE — всё рукопожатие использует математику эллиптических кривых, что более эффективно, чем смешение RSA и ECDHE.

Когда RSA всё ещё имеет смысл

Совместимость с устаревшими устройствами

Некоторые старые устройства, встраиваемые системы и IoT-оборудование не поддерживают ECC. Если вам нужна поддержка:

  • Windows XP SP2 или более ранних версий
  • Очень старых версий Android (< 4.0)
  • Определённых встраиваемых систем или аппаратных балансировщиков нагрузки

…тогда RSA 2048 — более безопасный выбор.

Организационные требования

Некоторые стандарты соответствия или внутренние политики могут требовать RSA. Это встречается всё реже, но проверьте свои требования.

Реальное внедрение

Индустрия мигрирует с RSA на ECC:

ОрганизацияТип ключаПримечания
GoogleECDSA P-256Все сервисы Google
CloudflareECDSA P-256По умолчанию для всех сертификатов бесплатного плана
Facebook / MetaECDSA P-256Продакшен-серверы
Let’s EncryptРекомендует ECDSAВыдаёт оба типа, рекомендует ECC
ZeroSSLРост ECDSAВыдача ECC выросла на 51,1% (самый быстрый рост среди всех CA)

Как проверить, что использует ваш сайт

echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null \
  | openssl x509 -noout -text | grep "Public Key Algorithm"
# ECDSA: "id-ecPublicKey"
# RSA: "rsaEncryption"

Или проверьте в браузере: замок → Сертификат → Подробности → Информация об открытом ключе субъекта.

Что использует GetHTTPS

GetHTTPS по умолчанию генерирует ключи ECDSA P-256 для сертификатов и P-256 для ключей ACME-аккаунта. При необходимости вы можете выбрать RSA 2048 для ключа сертификата.

P-256 (также называется prime256v1 или secp256r1):

  • Поддерживается всеми современными браузерами и серверами
  • Рекомендуется Let’s Encrypt
  • Используется большинством высоконагруженных сайтов (Google, Cloudflare и др.)
  • Поддерживается в Web Crypto API (который GetHTTPS использует для генерации ключей)

Постквантовые соображения

Ни ECC, ни RSA не являются квантово-устойчивыми. Достаточно мощный квантовый компьютер мог бы взломать оба алгоритма с помощью алгоритма Шора. Индустрия готовится, разрабатывая постквантовый обмен ключами (ML-KEM, ранее Kyber) для TLS, который будет использоваться совместно с существующими алгоритмами в гибридном режиме.

Это не влияет на ваш выбор сертификата сегодня — миграция на постквантовые алгоритмы произойдёт на уровне протокола (TLS), а не на уровне сертификата. Используйте ECC сейчас и позвольте стеку TLS справиться с переходом.

Часто задаваемые вопросы

Можно ли перейти с RSA на ECC (или наоборот)?

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

Нужна ли специальная конфигурация веб-сервера для ECC?

Нет. Nginx и Apache обрабатывают сертификаты ECC так же, как RSA — те же директивы, тот же формат файлов (PEM). Сервер автоматически определяет тип ключа.

P-384 лучше, чем P-256?

P-384 обеспечивает стойкость ~192 бита по сравнению с ~128 битами у P-256. На практике 128-битная стойкость намного превышает то, что можно взломать сегодня (или в обозримом будущем). P-256 быстрее и лучше оптимизирован. Если у вас нет конкретного требования соответствия для P-384, используйте P-256.

Похожие статьи

SSL и сертификаты 2026-05-07
Как работает SSL/TLS: TLS-рукопожатие в деталях
Наглядное объяснение TLS-рукопожатия -- как ваш браузер и сервер устанавливают зашифрованное соединение за миллисекунды. Охватывает TLS 1.2, TLS 1.3, возобновление сеанса и прямую секретность.
SSL и сертификаты 2026-05-07
Что такое CSR (запрос на подпись сертификата)?
CSR — это сообщение, отправляемое удостоверяющему центру для запроса SSL-сертификата. Узнайте, что содержит CSR, как он генерируется и почему GetHTTPS обрабатывает его автоматически.
Начало работы 2026-05-08
Как получить бесплатный SSL-сертификат (пошаговое руководство)
Получите бесплатный SSL-сертификат от Let's Encrypt за 5 минут --- без установки программ, без создания аккаунта. Полное руководство: 4 метода, оба типа проверки, установка на 6 платформах и устранение неполадок.
Получите бесплатный SSL-сертификат в браузере
Без установки, без аккаунта. Ваш приватный ключ никогда не покидает устройство.
Получить сертификат