PKI и жизненный цикл сертификатов

Идентичность сервиса TLS

Определение

Идентичность сервиса TLS — это проверка, в которой клиент сравнивает заранее выбранное имя сервиса с подходящим идентификатором в subjectAltName сертификата. Её делают вместе с проверкой цепочки: цепочка подтверждает издателей, а совпадение имени — что перед клиентом именно нужный сервис.

Также ищут: TLS service identity · TLS server identity · reference identifier matching · service certificate identity

Зачем это знать

Соединение с нужным сервисом требует заранее выбранного имени и правильного типа идентификатора. Подгонка имени под сертификат или применение DNS-шаблона к IP уничтожает смысл этой проверки.

Доказательная часть

Что подтверждено

  1. Клиент TLS формирует ожидаемое имя сервиса из настроенного или введённого адреса и сравнивает его с подходящим идентификатором subjectAltName.

    Граница применимости: Проверка идентичности сервиса по RFC 9525.

  2. Проверка цепочки сертификатов и совпадения имени обязательны вместе: первая проверяет издателей, вторая — тот ли это сервис.

    Граница применимости: Различие между проверкой PKIX и идентичностью приложения.

  3. Когда ожидаемый идентификатор — IP-адрес, его точно сравнивают с iPAddress в subjectAltName. Тот же текст в dNSName и DNS-шаблон не выполняют проверку IP-идентификатора.

    Граница применимости: Проверка IP-ID по RFC 9525; адрес задан как ожидаемый идентификатор, а не выбран из предъявленного сертификата.

  4. Если профиль разрешает DNS-шаблоны, единственная звёздочка занимает всю крайнюю левую метку и сопоставляется ровно с одной меткой. *.example.test не совпадает с a.b.example.test или example.test.

    Граница применимости: Правила DNS-ID с шаблоном по RFC 9525; условные имена. Применимость шаблонов определяется профилем сервиса.

  5. Клиент получает ожидаемое имя из адреса или доверенной конфигурации, а не выбирает любое подходящее имя из присланного сертификата. Иначе сертификат другого сервиса может пройти искусственно подогнанную проверку.

    Граница применимости: Построение эталонного идентификатора TLS и его отличие от допустимости пути PKIX; не обещает подтверждение URL-пути или содержимого приложения.

Граница терминов

Не путать

Идентичность сервиса TLS Проверка пути сертификации

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

Идентичность сервиса TLS Расширенное назначение ключа

Имя отвечает, для какого сервиса предъявлен сертификат, EKU — для какого применения разрешён ключ. Совпавшее имя не перекрывает неподходящее назначение.

Перед спецификацией

Что проверить

  1. Возьмите ожидаемое имя из адреса или доверенной настройки.
  2. Выберите тип идентификатора.
  3. Для IP точно сверяйте iPAddress.
  4. Для DNS примените правила DNS-ID.
  5. Разрешайте шаблон только по выбранному профилю.
  6. Проверьте путь и назначение отдельно.
  7. Не засчитывайте текст IP в dNSName как совпадение IP-идентификатора.
Открытые основания

Первоисточники

  • Стандарт2
  • Первичная спецификация
    Service Identity in TLS Internet Engineering Task Force · RFC 9525, November 2023 · проверено

    Задаёт construction и verification reference identifiers для TLS services; server identity находится в subjectAltName, не в commonName.

    Утверждения: 01 · 02 · 03 · 04 · 05

  • Первичная спецификация
    Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List Profile Internet Engineering Task Force · RFC 5280, May 2008 · проверено

    Определяет Internet X.509 certificate и CRL profiles, PKI entities, extensions и certification path validation.

    Утверждения: 02 · 05

Карта знаний

Связанные понятия

Из знания — в навык

Курсы по теме

Подтвердите действие