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


Метод IX509AttributeRenewalCertificate::InitializeDecode (certenroll.h)

Метод InitializeDecode инициализирует объект из массива байтов в кодировке Distinguished Encoding Rules (DER), содержащего обновляемый сертификат. Массив байтов представлен строкой в кодировке Юникод.

Синтаксис

HRESULT InitializeDecode(
  [in] EncodingType Encoding,
  [in] BSTR         strEncodedData
);

Параметры

[in] Encoding

Значение перечисления EncodingType , указывающее тип кодировки Юникода, применяемой к входной строке.

[in] strEncodedData

Переменная BSTR , содержащая сертификат в кодировке DER.

Начиная с Windows 7 и Windows Server 2008 R2, вы можете указать печать или серийный номер сертификата, а не закодированный сертификат. Это приводит к тому, что функция выполняет поиск соответствующего сертификата в соответствующих локальных хранилищах. Помните на следующие моменты.

  • BSTR должно быть четным числом шестнадцатеричных цифр.
  • Пробелы между шестнадцатеричными парами игнорируются.
  • Параметр Encoding должен иметь значение XCN_CRYPT_STRING_HEXRAW.
  • Если требуется закрытый ключ, выполняется поиск только в личных хранилищах и хранилищах запросов.
  • Если закрытый ключ не требуется, выполняется поиск в корневом и промежуточном хранилищах ЦС.

Возвращаемое значение

Если функция завершается успешно, функция возвращает S_OK.

Если функция завершается сбоем, она возвращает значение HRESULT , указывающее на ошибку. Список распространенных кодов ошибок см. в разделе Общие значения HRESULT.

Комментарии

Идентификатор объекта (OID) для этого атрибута — XCN_OID_RENEWAL_CERTIFICATE (1.3.6.1.4.1.311.13.1). Дополнительные сведения см. в разделе CERTENROLL_OBJECTID.

Этот метод можно использовать при наличии в кодировке DER объекта Abstract Syntax Notation One (ASN.1), который содержит значение атрибута. Необходимо указать объект в кодировке DER в строке в кодировке Юникод. Дополнительные сведения см. в разделе Интерфейс IBinaryConverter .

Перед использованием объекта IX509AttributeRenewalCertificate необходимо вызвать Метод InitializeEncode или InitializeDecode. Эти два метода дополняют друг друга. Метод InitializeEncode позволяет создать закодированную структуру ASN.1 из необработанных данных, а метод InitializeDecode позволяет инициализировать необработанные данные из закодированной структуры ASN.1. Для получения необработанных данных можно вызвать свойство RenewalCertificate .

Требования

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

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

IX509AttributeRenewalCertificate