Функция CertGetIntendedKeyUsage (wincrypt.h)

Функция CertGetIntendedKeyUsage получает предполагаемые байты использования ключа из сертификата. Предполагаемое использование ключа может осуществляться в расширении szOID_KEY_USAGE ("2.5.29.15") или szOID_KEY_ATTRIBUTES ("2.5.29.2").

Синтаксис

BOOL CertGetIntendedKeyUsage(
  [in]  DWORD      dwCertEncodingType,
  [in]  PCERT_INFO pCertInfo,
  [out] BYTE       *pbKeyUsage,
  [in]  DWORD      cbKeyUsage
);

Параметры

[in] dwCertEncodingType

Указывает используемый тип кодирования. Всегда допустимо указывать типы кодирования сертификатов и сообщений, объединяя их с побитовой операцией ИЛИ , как показано в следующем примере:

X509_ASN_ENCODING | PKCS_7_ASN_ENCODING в настоящее время определены следующие типы кодирования:

  • X509_ASN_ENCODING
  • PKCS_7_ASN_ENCODING

[in] pCertInfo

Указатель на CERT_INFO структуру указанного сертификата.

[out] pbKeyUsage

Указатель на буфер для получения предполагаемого использования ключа. В следующем списке показаны текущие значения. Их можно объединить с помощью побитовых операций ИЛИ .

  • CERT_DATA_ENCIPHERMENT_KEY_USAGE
  • CERT_DIGITAL_SIGNATURE_KEY_USAGE
  • CERT_KEY_AGREEMENT_KEY_USAGE
  • CERT_KEY_CERT_SIGN_KEY_USAGE
  • CERT_KEY_ENCIPHERMENT_KEY_USAGE
  • CERT_NON_REPUDIATION_KEY_USAGE
  • CERT_OFFLINE_CRL_SIGN_KEY_USAGE

[in] cbKeyUsage

Размер (в байтах) буфера, на который указывает pbKeyUsage. В настоящее время предполагаемое использование ключа занимает 1 или 2 байта данных.

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

Если сертификат не содержит байтов использования ключа, возвращается значение FALSE , а pbKeyUsage обнуляется . В противном случае возвращается значение TRUE , а количество байтов cbKeyUsage копируется в pbKeyUsage. Все оставшиеся байты, не скопированные, обнуляются.

GetLastError возвращает ноль, если ни одно из необходимых расширений не найдено.

Если функция завершается сбоем, GetLastError может вернуть ошибку кодирования и декодирования абстрактной синтаксической нотации 1 (ASN.1). Сведения об этих ошибках см. в разделе Кодирование и декодирование возвращаемых значений ASN.1.

Требования

Требование Значение
Минимальная версия клиента Windows XP [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header wincrypt.h
Библиотека Crypt32.lib
DLL Crypt32.dll

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

Функции Управление данными