26.03.2007 10:21:49Проверка подписи Ответов: 4
Волков
Подписываю строку в формате PKSC#7, как потом проверить подпись? Проверяю функцией CryptVerifyDetachedMessageSignature. Но при ее использовании требуется ссылка на сертификат подписавшего, который пользователю нужно указать в ручную. Как можно проверить подпись взяв информацию из подписи?
 
Ответы:
26.03.2007 12:27:11Kirill Sobolev
Ссылка там никакая не требуется, эта функция сама ищет сертификат подписичка, по умолчанию - в самом сообщении, куда его кстати и стоит добавлять.
26.03.2007 12:40:04Волков
ppSignerCert
[out, optional] A pointer to a pointer to a CERT_CONTEXT structure of a signer certificate. When you have finished using the certificate context, free it by calling the CertFreeCertificateContext function. A pointer to a CERT_CONTEXT structure will not be returned if this parameter is NULL.
Этот параметр должен быть NULL? И как получить контекст сертификата из файла подписи?
26.03.2007 12:53:33Александр
Функция сама возвращает контекст сертификата из ЭЦП при проверке.
Если этот параметр NULL, то ничего не возвращается. Если тебе контекст сертификата не нужен то указывай NULL.
26.03.2007 14:27:17Волков
Если последний параметр сделать NULL, то подпись не проверяется вообще.