С 2022 года в России действует «Национальный удостоверяющий центр» — российский корневой CA, созданный Минцифры после того, как западные центры сертификации (в частности Sectigo) начали отказывать в выпуске и продлении TLS-сертификатов для сайтов под санкциями. Проблема в том, что Chrome, Firefox и Safari не включают этот корень в свой список доверенных — доверяют ему только российские браузеры вроде Яндекс Браузера и «Атом», которые встроили его вручную.
Из каких полей состоит сертификат
- Subject — кому выдан сертификат (домен или организация).
- Issuer — кто выдал сертификат (центр сертификации, CA).
- Срок действия — даты начала и окончания действительности сертификата.
- Публичный ключ — ключ, используемый для установления защищённого соединения.
- Цифровая подпись — подпись издателя, подтверждающая подлинность всех остальных полей.
Цепочка доверия — это вопрос «чьему корню вы верите»
Технически сертификат Минцифры устроен ровно как любой другой X.509: тот же набор полей, та же цепочка подписей до корня. Единственная разница — в чей корневой список он попал. Сайт с российским сертификатом откроется без предупреждений в Яндекс Браузере, но покажет ошибку недоверенного соединения в Chrome — не потому что сертификат «неправильный», а потому что цепочка не ведёт ни к одному корню из встроенного в Chrome списка.
Почему срок действия ограничен
Ограниченный срок действия (обычно 90 дней – 1 год для современных сертификатов) снижает риски от скомпрометированного приватного ключа и заставляет регулярно обновлять криптографические параметры в соответствии с актуальными стандартами безопасности.
Зачем это нужно
- Диагностировать проблемы с SSL-сертификатами при настройке веб-сервера.
- Проверять срок действия и издателя сертификата без обращения к внешним сервисам.
- Понимать, почему один и тот же сайт может быть «доверенным» в одном браузере и «недоверенным» в другом.
Самоподписанные сертификаты
Сертификат может быть подписан собственным приватным ключом вместо любого CA вообще — структурно он выглядит идентично «настоящему» X.509, с теми же полями, но Issuer и Subject в нём совпадают. Это крайний случай той же логики, что и с непризнанным корнем: цепочка доверия не ведёт вообще никуда, и браузер, у которого нет причин доверять этому ключу, помечает соединение как небезопасное.