Метод IX509ExtensionAuthorityKeyIdentifier::InitializeEncode (certenroll.h)
Метод InitializeEncode инициализирует расширение из массива байтов. Массив байтов представлен строкой в кодировке Юникод.
Синтаксис
HRESULT InitializeEncode(
[in] EncodingType Encoding,
[in] BSTR strKeyIdentifier
);
Параметры
[in] Encoding
Значение перечисления EncodingType , указывающее тип кодировки Юникода, применяемого к значению strKeyIdentifier .
[in] strKeyIdentifier
Переменная BSTR , содержащая значение расширения.
Возвращаемое значение
Если функция выполнена успешно, функция возвращает S_OK.
Если функция завершается сбоем, она возвращает значение HRESULT , указывающее на ошибку. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.
Возвращаемый код или значение | Описание |
---|---|
|
Объект уже инициализирован. |
Комментарии
Как правило, входное значение должно быть хэшом SHA-1 открытого ключа , содержащегося в сертификате подписи. Метод связывает значение с идентификатором объекта (OID) XCN_OID_AUTHORITY_KEY_IDENTIFIER2 (2.5.29.35) и кодирует его с помощью Distinguished Encoding Rules (DER).
Прежде чем использовать объект IX509ExtensionAuthorityKeyIdentifier, необходимо вызвать InitializeEncode или InitializeDecode. Эти два метода дополняют друг друга. Метод InitializeEncode позволяет создать объект расширения Абстрактная синтаксическая нотация 1 (ASN.1) в кодировке DER из необработанных данных, а метод InitializeDecode позволяет инициализировать необработанные данные из закодированного объекта.
Для этого расширения можно получить следующие свойства:
- Свойство Critical определяет, является ли расширение критическим. Это свойство также можно указать.
- Свойство ObjectId извлекает OID.
- Свойство AuthorityKeyIdentifier извлекает необработанные данные.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | certenroll.h |
DLL | CertEnroll.dll |