Технические сведения о используемых стандартах для HTTPS
2 минутное чтение
Транспорт
В качестве транспортного механизма для HTTPS Аналитический портал использует TLS.
Поддерживаемые версии TLS: 1.0, 1.1, 1.2 (RFC 5246), 1.3 (RFC 8446).
Файлы
-
Файл сертификата:
- Должен быть в формате Privacy Enhanced Mail (PEM);
- PEM должен быть контейнером для ASN.1 DER.
-
Файл закрытого ключа:
- Должен быть в формате Privacy Enhanced Mail (PEM);
- PEM должен быть контейнером для ASN.1 DER;
- Поддерживаются PKCS#1 и PKCS#8.
Допустимые комбинации стандартов для файла закрытого ключа:
- PEM » ASN.1 DER » PKCS#1 » RSA;
- PEM » ASN.1 DER » PKCS#8 » RSA;
- PEM » ASN.1 DER » PKCS#8 » ECDSA;
- PEM » ASN.1 DER » PKCS#8 » ED25519;
- PEM » ASN.1 DER » ED25519.
Сертификат
Формат сертификата определён стандартом X.509. Данный тип сертификата в обиходе имеет второе, не техническое наименование — сертификат SSL. Поддерживаются версии до X.509v3 включительно. Актуальной на момент написания инструкции является версия X.509v3.
Ключевая пара
Поддерживаются следующие типы ключей:
- RSA – PKCS#1v2, RFC8017 — без ограничения на размер ключа. Максимальное значение открытой экспоненты (2^31)-1;
- ECDSA – FIPS186-4, SEC1v2 — поддерживаются именованные кривые: secp224r1, secp256r1, prime256v1, secp384r1, secp521r1;
- ED25519 – RFC8032 — только для TLS 1.3.
Защита передаваемых данных
Поддерживаемые типовые шифронаборы для TLS 1.0–1.2:
- TLS_ECDHE_RSA_WITH_RC4_128_SHA;
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA;
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256;
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256;
- TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA;
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA;
- TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305;
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384;
- TLS_ECDHE_ECDSA_WITH_RC4_128_SHA;
- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA;
- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256;
- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256;
- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA;
- TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305;
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384;
- TLS_RSA_WITH_AES_256_CBC_SHA;
- TLS_RSA_WITH_AES_256_GCM_SHA384;
- TLS_RSA_WITH_AES_128_CBC_SHA;
- TLS_RSA_WITH_RC4_128_SHA;
- TLS_RSA_WITH_3DES_EDE_CBC_SHA;
- TLS_RSA_WITH_AES_128_CBC_SHA256;
- TLS_RSA_WITH_AES_128_GCM_SHA256.
Поддерживаемые типовые шифронаборы для TLS только 1.2:
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256;
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256;
- TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305;
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384;
- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256;
- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256;
- TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305;
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384;
- TLS_RSA_WITH_AES_128_GCM_SHA256;
- TLS_RSA_WITH_AES_128_CBC_SHA256;
- TLS_RSA_WITH_AES_256_GCM_SHA384.
Общий шаблон имени набора для TLS 1.0–1.2:
TLS_<**Алгоритм аутентификации**>_WITH_<**Шифр данных**>_<**Хеш-функция**>
, где
- «Алгоритм аутентификации» — криптосистема, используемая для аутентификации (аутентифицируются сервер и сеансовый секрет);
- «Шифр данных» — симметричный алгоритм, который послужит для защиты передаваемых данных;
- «Хеш-функция» — хеш-функция, являющаяся основой для HMAC.
Поддерживаемые типовые шифронаборы для TLS только 1.3:
- TLS_AES_128_GCM_SHA256;
- TLS_CHACHA20_POLY1305_SHA256;
- TLS_AES_256_GCM_SHA384.
Общий шаблон имени набора для TLS 1.3:
TLS_<**Шифр данных**>_<**Хеш-функция**>
, где
- «Шифр данных» — симметричный алгоритм, который послужит для защиты передаваемых данных;
- «Хеш-функция» — хеш-функция, являющаяся основой для HMAC.
Примечание: Списки поддерживаемых версий TLS и типовых шифронаборов используются в указанном составе. Однако есть техническая возможность доработать продукт в части добавления возможности выбора минимальной и максимальной версии протокола TLS и ручного комплектования списков шифронаборов из числа перечисленных. Подобная доработка может быть произведена при согласовании с заказчиком.