Вопрос по структуре CRYPT_VERIFY_MESSAGE_PARA

Тема в разделе "WASM.CRYPTO", создана пользователем Keva, 19 ноя 2007.

  1. Keva

    Keva New Member

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    130
    Заполняю структуру следующим образом:
    Код (Text):
    1. param.cbSize = sizeof(CRYPT_VERIFY_MESSAGE_PARA);
    2. param.dwMsgAndCertEncodingType = X509_ASN_ENCODING | PKCS_7_ASN_ENCODING;
    3. param.hCryptProv = NULL;
    4. param.pfnGetSignerCertificate = MyGetSignerCertificateCallback;
    5. param.pvGetArg = (void *)pUserCertTemp;
    где:
    Код (Text):
    1. PCCERT_CONTEXT WINAPI MyGetSignerCertificateCallback(
    2.         void *pvGetArg,                  // in
    3.         DWORD dwCertEncodingType,        // in
    4.         PCERT_INFO pSignerId,            // in
    5.         HCERTSTORE hMsgCertStore         // in
    6. )
    7. {
    8.         return PCCERT_CONTEXT(pvGetArg);
    9. };
    и pUserCertTemp содержит контекст сертификата подписавшего данное сообщение. Проверка подписи проходит нормально, но если мне не указывать колбэк функцию и контекст сертификата, то подпись не проходит проверку? В чем может быть дело? Ведь если не указывать функцию в явном виде, и не указан сертификат то он должен браться из подписи?