Поделиться через


Интерфейс IX509ExtensionSubjectKeyIdentifier (certenroll.h)

Интерфейс IX509ExtensionSubjectKeyIdentifier позволяет указать расширение SubjectKeyIdentifier . Если у субъекта есть несколько сертификатов для подписи, это расширение можно использовать для определения того, какой сертификат соответствует конкретному сертификату для подписи центра сертификации (ЦС). Расширение размещается во всех сертификатах. В следующем синтаксисе показана структура расширения Abstract Syntax Notation One (ASN.1). Значение расширения кодируется с помощью Distinguished Encoding Rules (DER) и включается в запрос сертификата.


----------------------------------------------------------------------
-- SubjectKeyIdentifier
-- XCN_OID_SUBJECT_KEY_IDENTIFIER (2.5.29.14)
----------------------------------------------------------------------

SubjectKeyIdentifier ::= KeyIdentifier

KeyIdentifier ::= OCTETSTRING

Обычно значением является 20-байтный хэш SHA-1 открытого ключа , содержащегося в сертификате подписи ЦС. Когда ЦС выдает сертификат, он копирует хэш-значение в расширение SubjectKeyIdentifier . Чтобы найти сертификат конечной сущности, подписанный определенным сертификатом ЦС, выполните поиск программного обеспечения создания цепочки до тех пор, пока оно не соответствует полю keyIdentifier в расширении AuthorityKeyIdentifier сертификата подписи ЦС со значением расширения SubjectKeyIdentifier в выданном сертификате. Дополнительные сведения см. в разделе IX509ExtensionAuthorityKeyIdentifier.

Чтобы добавить этот объект расширения в запрос PKCS #10 или запрос CMC, необходимо сначала добавить его в коллекцию IX509Extensions и использовать коллекцию для инициализации объекта IX509AttributeExtensions . Дополнительные сведения см. в разделах Расширения PKCS #10 и Расширения CMC .

Наследование

Интерфейс IX509ExtensionSubjectKeyIdentifier наследуется от IX509Extension. IX509ExtensionSubjectKeyIdentifier также имеет следующие типы элементов:

Методы

Интерфейс IX509ExtensionSubjectKeyIdentifier содержит следующие методы.

 
IX509ExtensionSubjectKeyIdentifier::get_SubjectKeyIdentifier

Извлекает массив байтов, содержащий идентификатор ключа.
IX509ExtensionSubjectKeyIdentifier::InitializeDecode

Инициализирует расширение из массива байтов Distinguished Encoding Rules (DER), содержащего значение расширения. (IX509ExtensionSubjectKeyIdentifier.InitializeDecode)
IX509ExtensionSubjectKeyIdentifier::InitializeEncode

Инициализирует расширение из массива байтов, содержащего идентификатор ключа.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header certenroll.h

См. также раздел

API регистрации сертификатов

Расширения

IX509Extension