RFC: 4306
Оригинал: Internet Key Exchange (IKEv2) Protocol
Другие версии: RFC 2407, RFC 2408, RFC 2409, RFC 5996
Категория: Предложенный стандарт
Дата публикации:
Автор:
Перевод: Николай Малых

RFC 4306, Страница 43 из 62

3.6. Сертификат

Элемент данных Certificate (CERT) обеспечивает способ передачи сертификатов или другой, связанной с идентификацией информации через IKE. Элементы Certificate следует включать в обмен, если сертификаты доступны отправителю до того, как партнер указал возможность получения идентификационной информации иным путем с использованием элемента Notify типа HTTP_CERT_LOOKUP_SUPPORTED. Отметим, что термин «Certificate Payload» может вводить в заблуждение, поскольку не все механизмы идентификации используют сертификаты и в этом элементе могут передаваться иные данные.

Элемент данных Certificate имеет следующие поля:

                     1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
! Next Payload  !C!  RESERVED   !         Payload Length        !
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
! Cert Encoding !                                               !
+-+-+-+-+-+-+-+-+                                               !
~                       Certificate Data                        ~
!                                                               !
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Рисунок 12: Формат сертификата
  • Certificate Encoding (1 октет) — это поле показывает тип представления сертификата или иной информации, содержащейся в поле Certificate Data (см. таблицу).
    Кодирование сертификата Значение
    Резерв 0
    Сертификат X.509 с PKCS #7 1
    Сертификат PGP 2
    Подписанный ключ DNS 3
    Сертификат X.509 — подпись 4
    Маркер Kerberos 6
    CRL 7
    ARL 8
    Сертификат SPKI 9
    Сертификат X.509 — атрибут 10
    Неразобранный ключ RSA 11
    Хэш и URL сертификата X.509 12
    Хэш и URL связки (bundle) X.509 13
    Резерв IANA 14 — 200
    Для частного применения 201 — 255
  • Certificate Data (переменный размер) — представление данных сертификата. Тип сертификата указывается в поле Certificate Encoding.

Идентификатор типа элемента данных Certificate имеет значение 37.

Конкретный синтаксис ряда перечисленных типов сертификатов в этом документе не определяется. К числу сертификатов, синтаксис которых определен здесь относятся:

  • Сертификат X.509 — подпись (4) содержит сертификат X.509 (в представлении DER), открытый ключ которого используется для проверки элемента данных AUTH отправителя.

    Список отозванных сертификатов (7) содержит представление DER для списка отозванных сертификатов X.509.

    Неразобранный ключ RSA (11) содержит ключ RSA в представлении PKCS #1 (см. [RSA] и [PKCS1]).

    Хэш и URL (12-13) позволяют включать в сообщения IKE замену больших структур данных с 20-октетным хэшем SHA-1 (см.[SHA]) значением URL переменной длины, которое преобразуется в структуру данных (в представлении DER). Это повышает эффективность в тех случаях, когда конечные точки имеют хэшированные сертификаты и снижает эффект воздействия на IKE атак на отказ служб, которые становились бы проще в реализации при использовании достаточно больших сообщений IKE, требующих фрагментации на уровне IP [KPS03].

    Ниже приведено представление сборки X.509 в формате ASN.1.

     CertBundle
       { iso(1) identified-organization(3) dod(6) internet(1)
         security(5) mechanisms(5) pkix(7) id-mod(0)
         id-mod-cert-bundle(34) }
     DEFINITIONS EXPLICIT TAGS ::=
     BEGIN
     IMPORTS
       Certificate, CertificateList
       FROM PKIX1Explicit88
          { iso(1) identified-organization(3) dod(6)
            internet(1) security(5) mechanisms(5) pkix(7)
            id-mod(0) id-pkix1-explicit(18) } ;
    CertificateOrCRL ::= CHOICE {
      cert [0] Certificate,
      crl  [1] CertificateList }
    CertificateBundle ::= SEQUENCE OF CertificateOrCRL
    END

Реализации должны обеспечивать возможность настройки передачи и восприятия до четырех сертификатов X.509 в поддержку идентификации, а также должны обеспечивать возможность настройки передачи и восприятия двух первых форматов «Hash and URL» (с HTTP URL). Реализациям следует обеспечивать возможность настройки передачи и восприятия ключей Raw RSA. При передаче множества сертификатов первый из них должен содержать открытый ключ, используемый для подписывания элемента AUTH. Остальные сертификаты можно передавать в любом порядке.

Страница 43 из 62

2007 - 2022 © Русские переводы RFC, IETF, ISOC.