04.11.2004 11:44:32Возможно ли получить дескриптор Провайдера Ответов: 3
Иван
по контексту сертификата, содержащего только открытый ключ.

Требуется произвести проверку подписи сертификата. Использую

CryptVerifyCertificateSignatureEx(
hCryptProv,
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING,
CRYPT_VERIFY_CERT_SIGN_SUBJECT_CERT,
(void *)pCertContext,
CRYPT_VERIFY_CERT_SIGN_ISSUER_CERT,
(void *)pRootCertContext,
0,
NULL ) )

Нужен дескриптор. Пытаюсь получить его так

err = CertGetCertificateContextProperty(
pCertContext,
CERT_KEY_PROV_HANDLE_PROP_ID,
(void*) pCryptProv,
&ulLen );


Ошибка - не найдено свойство.

Можно ли проверить действительность сертификата по-другому ?
 
Ответы:
04.11.2004 11:52:56Иван
Выставляя Hprov в NULL - всё работает, но правильно ли это ?
09.11.2004 15:00:04Dilmar
Можно использовать цепочки сертификатов, Certificate chains почитайте на MSDN
10.11.2004 4:45:29Serge3leo
Здравствуйте,

> Выставляя Hprov в NULL - всё работает, но правильно ли это ?

Правильно.

> Можно использовать цепочки сертификатов

Проверка цепочки - высокоуровневая интегральная функция. Если она Вам подходит, то конечно же лучше использовать её.

Успехов.