Функция CryptVerifyCertificateSignature (wincrypt.h)
Функция CryptVerifyCertificateSignature проверяет подпись сертификата, список отзыва сертификатов (CRL) или запрос сертификата с помощью открытого ключа в структуре CERT_PUBLIC_KEY_INFO . Функции не требуется доступ к закрытому ключу.
Синтаксис
BOOL CryptVerifyCertificateSignature(
[in] HCRYPTPROV_LEGACY hCryptProv,
[in] DWORD dwCertEncodingType,
[in] const BYTE *pbEncoded,
[in] DWORD cbEncoded,
[in] PCERT_PUBLIC_KEY_INFO pPublicKey
);
Параметры
[in] hCryptProv
Этот параметр не используется и должен иметь значение NULL.
Windows Server 2003 и Windows XP: Дескриптор поставщика служб шифрования (CSP), используемый для проверки подписи. Тип данных этого параметра — HCRYPTPROV.
Значение NULL передается, если нет веской причины для передачи определенного поставщика шифрования. Передача значения NULL приводит к получению поставщика RSA или DSS по умолчанию.
[in] dwCertEncodingType
Тип кодирования сертификата, который использовался для шифрования субъекта. Идентификатор типа кодирования сообщения , содержащийся в высоком значении WORD этого значения, игнорируется этой функцией.
Этот параметр может иметь следующий определенный в данный момент тип кодирования сертификата.
Значение | Значение |
---|---|
|
Задает кодировку сертификата X.509 . |
[in] pbEncoded
Указатель на закодированный большой двоичный объектCERT_SIGNED_CONTENT_INFO содержимого, для которого требуется проверить подпись.
[in] cbEncoded
Размер закодированного содержимого в pbEncoded в байтах.
[in] pPublicKey
Указатель на структуру CERT_PUBLIC_KEY_INFO , содержащую открытый ключ, используемый при проверке подписи.
Возвращаемое значение
Возвращает ненулевое значение при успешном выполнении или нулевое значение в противном случае.
Для получения дополнительных сведений об ошибке вызовите Метод GetLastError.
Код возврата | Описание |
---|---|
|
Недопустимый тип кодирования сертификата. В настоящее время поддерживается только X509_ASN_ENCODING . |
|
Идентификатор объекта (OID) алгоритма подписи не сопоставляет с известным или поддерживаемым хэш-алгоритмом. |
|
Подпись недействительна. |
Если функция завершается сбоем, GetLastError может вернуть ошибку кодирования и декодирования абстрактной синтаксической нотации 1 (ASN.1). Сведения об этих ошибках см. в разделе Кодирование и декодирование возвращаемых значений ASN.1.
Комментарии
В настоящее время эта функция вызывает функцию CryptVerifyCertificateSignatureEx для выполнения проверки.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | wincrypt.h |
Библиотека | Crypt32.lib |
DLL | Crypt32.dll |