Skip to content
EN

Методология · Открытая формула

Методология SSL/TLS Grade v1.2

Открытая формула: семь строк, 100 баллов, буква от A+ до F.

Кратко. SSL/TLS Grade (v1.2) складывается из семи строк на 100 баллов: срок сертификата 30, имя хоста 10, ключ 15, принимаемые версии протокола 20, биты согласованного шифра 10, промежуточные сертификаты от сервера 5, HSTS 10. Буквы: A+ от 95, A от 85, B от 70, C от 55, D от 40, F ниже; истёкший или ещё не начавший действовать сертификат — F при любой сумме. Оценку считает src/ssl.php (calculateSslGrade); ту же показывают инструмент /ssl, его API, бейдж SSL, отчёт /report/{домен}/ssl и каталог «Проверено Enterno».
Срок30Имя10Ключ15Протокол20Шифр10Цепочка5HSTS10
История версий. v1.2 (2026-10-05) — сертификат *.example.com засчитывается только для поддоменов одного уровня, не для example.com и не для a.b.example.com (как в браузерах); CN не учитывается — как в браузерах с 2017 года. Раньше засчитывалось и то и другое, и сертификат, который браузер отвергает, получал баллы за имя хоста и за срок. v1.1 (2026-10-05) — формула не менялась, исправлено её описание. С публикации страница описывала формулу, которую движок не считал: 100 баллов в семи строках, а не 45 в шести; длина ключа (15) и HSTS (10) оцениваются, а на странице их не было; протоколы оцениваются по тому, что сервер принимает, и старые TLS 1.0/1.1 стоят баллов, а не по согласованной версии; шифр — по битам, а не по AEAD и forward secrecy; строка цепочки проверяет, что сервер отдал промежуточные сертификаты, а не доверие и AIA; OCSP, CRL и AIA в оценку не входят; потолков C и D нет — F принудительно ставит только истёкший или ещё не начавший действовать сертификат; буквы — A+ от 95, A от 85, B от 70, C от 55, D от 40. v1.0 (2026-05-05) — первая публикация.

1. Срок сертификата — 30

  • 30 — действует: срок начался и не истёк, имя хоста в SAN, осталось больше 30 дней
  • 20 — то же, но осталось 30 дней или меньше
  • 0 — истёк, ещё не начался или выдан на другое имя

2. Имя хоста — 10

  • 10 — запрошенное имя есть в SAN (Subject Alternative Name) и сопоставляется так, как это делают браузеры. CN не учитывается — как в браузерах с 2017 года; IP-адрес должен быть IP-записью SAN. *.example.com засчитывается для поддоменов одного уровня (www.example.com), но не для самого example.com и не для a.b.example.com; звёздочка заменяет только целую крайнюю левую метку (f*.example.com не засчитывается), никогда не IP-адрес, и после неё должно быть не меньше двух меток (*.com не засчитывается; подстановка на публичный суффикс вроде *.co.uk не распознаётся — УЦ такие не выпускают); регистр и одна точка в конце имени не важны; кириллическое имя сравнивается в punycode (xn--…) — в таком виде его несёт сертификат

3. Ключ — 15

  • 15 — EC от 256 бит или любой ключ от 4096 бит
  • 10 — от 2048 бит
  • 0 — короче

4. Версии протокола — 20

  • 20 — TLS 1.3 принимается, TLS 1.0 и 1.1 — нет
  • 15 — TLS 1.2 принимается, TLS 1.0 и 1.1 — нет
  • 10 — TLS 1.2 принимается, но и TLS 1.0 или 1.1 тоже
  • 0 — иначе (нет TLS 1.2, и либо нет TLS 1.3, либо включены старые версии)

Каждая версия пробуется отдельным рукопожатием к тому же адресу. Старые версии запрещены RFC 8996.

5. Шифр — 10

  • 10 — у согласованного шифра 256 бит или больше
  • 7 — от 128 бит
  • 0 — меньше

Forward secrecy и класс шифра (AEAD, CBC, RC4…) показываются на /ssl, но в оценку не входят.

6. Промежуточные сертификаты — 5

  • 5 — сервер отдал хотя бы один сертификат кроме своего

Ведёт ли цепочка к доверенному корню, не проверяется: проба соединяется без проверки, чтобы сайт со сломанной цепочкой всё равно получил отчёт.

7. HSTS — 10

  • 10 — Strict-Transport-Security с max-age ≥ 31536000
  • 5 — есть, но max-age короче
  • 0 — нет, или HTTPS-запрос не ответил

Читается из HEAD-запроса к https://{хост}/ без перехода по редиректам.

Буквенная оценка

Истёк или ещё не начался → F при любой сумме

БаллыОценка
95–100A+
85–94A
70–84B
55–69C
40–54D
0–39F

На /ssl рядом с оценкой, но не в ней: отзыв и stapling по OCSP, Certificate Transparency, CAA, forward secrecy.

Версионирование

Текущая версия — v1.2, обновлена . Каждое изменение опубликованной формулы — весов или их описания — новая версия со строкой в истории выше.

Запустить проверку SSL/TLS →

Калькулятор

Задайте сертификат и соединение — оценка считается по тем же правилам, что и проверка /ssl.

Сертификат
Протоколы и шифр
--
A


  
Проверить мой сайт →