PFN_CRYPT_GET_SIGNER_CERTIFICATE回呼函式 (wincrypt.h)
CryptGetSignerCertificateCallback 使用者提供的回呼函式會與CRYPT_VERIFY_MESSAGE_PARA結構搭配使用,以取得並驗證訊息簽署者的憑證。
語法
PFN_CRYPT_GET_SIGNER_CERTIFICATE PfnCryptGetSignerCertificate;
PCCERT_CONTEXT PfnCryptGetSignerCertificate(
[in] void *pvGetArg,
[in] DWORD dwCertEncodingType,
[in] PCERT_INFO pSignerId,
[in] HCERTSTORE hMsgCertStore
)
{...}
參數
[in] pvGetArg
傳遞至驗證函式的使用者定義數據的指標,如 CRYPT_VERIFY_MESSAGE_PARA 結構中所指定。
[in] dwCertEncodingType
指定使用的編碼類型。 將憑證和 訊息編碼類型 與位 OR 作業結合在一起,一律可以接受,如下列範例所示:
X509_ASN_ENCODING |PKCS_7_ASN_ENCODING
目前定義的編碼類型如下:
- X509_ASN_ENCODING
- PKCS_7_ASN_ENCODING
[in] pSignerId
包含簽發者和序號 之CERT_INFO 結構的指標。 如果沒有內容或簽署者,可以是 NULL 。
[in] hMsgCertStore
證書存儲的句柄,其中包含已簽署訊息中的所有憑證和CRL。
傳回值
如果找到簽署者憑證,函式會傳回只讀 CERT_CONTEXT的指標。 傳回 的CERT_CONTEXT 是從證書存儲取得,或使用 CertCreateCertificateContext 建立。 不論是哪一種情況,都必須使用 CertFreeCertificateContext 釋放它。 如果此函式失敗,則傳回值為 NULL。
備註
如果訊息不包含內容或簽署者,則會呼叫函式,並將 pSignerId 設定為 NULL。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wincrypt.h |