Цепочка сертификатов
Определение
Цепочка сертификатов — упорядоченная последовательность конечного сертификата и сертификатов издателей, подписи которых ведут к доверенному якорю.
Также ищут: Certificate chain · certificate trust chain · chain of trust
Зачем это знать
Отсутствующий или лишний промежуточный сертификат меняет доступные пути. Но даже полная цепочка требует проверки подписей, сроков и ограничений.
Карта понятия
Что подтверждено
Путь сертификации начинается с проверяемого сертификата и продолжается сертификатами CA до якоря доверия; каждый издатель подтверждает следующий шаг.
Граница применимости: Модель пути сертификации по RFC 5280.
Наличие цепочки ещё не доказывает доверие: сначала выбирается возможный путь, затем проверяются подписи, сроки и ограничения.
Граница применимости: Различие между последовательностью сертификатов и результатом проверки пути.
В передаваемом сервером списке сертификатов TLS 1.3 сертификат конечного узла обязан идти первым, а список не может быть пустым. Наличие лишних промежуточных сертификатов или другого порядка остальных элементов не позволяет само по себе объявить проверенный путь недопустимым.
Граница применимости: RFC 8446, 4.4.2: серверное сообщение Certificate при аутентификации сертификатом; не требование посылать сертификат в режиме TLS без такой аутентификации.
Для совместимости RFC 8446 рекомендует реализации уметь обрабатывать лишние сертификаты и произвольный порядок, кроме обязательного первого сертификата конечного узла. Рекомендация SHOULD не гарантирует эту способность у каждого клиента и не равна безусловному MUST.
Граница применимости: Примечание RFC 8446, 4.4.2 о приёме цепочек из разных версий TLS; не отменяет проверку построенного пути и более строгие правила отправки прежних версий.
Промежуточный сертификат можно опустить из отправляемого списка TLS 1.3, если известно, что поддерживаемые клиенты им располагают. Успех клиента с сохранённым промежуточным сертификатом не доказывает успех клиента без него; сам переданный набор также не выбирает локальный якорь доверия.
Граница применимости: RFC 8446, 4.4.2 и модель доверенного пути RFC 5280; автоматическое сетевое получение пропущенного сертификата клиентом не обещается.
Один открытый ключ промежуточного центра может быть представлен сертификатами, подписанными разными издателями. Такие перекрёстные сертификаты открывают разные возможные пути; совпадение ключа не делает одинаковыми издателя, срок и конечный якорь каждого пути.
Граница применимости: Уточнение принятой модели кросс-подписи из RFC 5280 и NIST SP 800-57 Part 2; выбранный путь зависит от доступных сертификатов и локального доверия клиента.
Что проверить
- Зафиксируйте версию TLS и переданный сервером список.
- Проверьте обязательное первое место сертификата конечного узла.
- Не считайте рекомендацию о терпимости гарантией каждого клиента.
- Проверьте наличие промежуточных сертификатов у поддерживаемых клиентов.
- Сравните локальные якоря и реально построенные пути.
- При кросс-подписи сравнивайте конкретные сертификаты издателей, а не только одинаковый открытый ключ.
- Проверяйте подписи, сроки и ограничения выбранного пути.
Первоисточники
- Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List Profile
Определяет Internet X.509 certificate и CRL profiles, PKI entities, extensions и certification path validation.
- Recommendation for Key Management: Part 2 — Best Practices for Key Management Organizations
Описывает organizational key-management practices, CA/RA roles, PKI operations и certification path building.
- RFC 8446: The Transport Layer Security Protocol Version 1.3
Определяет TLS 1.3, включая encrypted channel, PSK authentication, PSK identity и PSK+(EC)DHE modes.