CRYPT_VERIFY_MESSAGE_PARA 結構 (wincrypt.h)
CRYPT_VERIFY_MESSAGE_PARA 結構包含驗證已簽署訊息所需的資訊。
語法
typedef struct _CRYPT_VERIFY_MESSAGE_PARA {
DWORD cbSize;
DWORD dwMsgAndCertEncodingType;
HCRYPTPROV_LEGACY hCryptProv;
PFN_CRYPT_GET_SIGNER_CERTIFICATE pfnGetSignerCertificate;
void *pvGetArg;
PCCERT_STRONG_SIGN_PARA pStrongSignPara;
} CRYPT_VERIFY_MESSAGE_PARA, *PCRYPT_VERIFY_MESSAGE_PARA;
成員
cbSize
這個結構的大小,以位元組為單位。
dwMsgAndCertEncodingType
使用的編碼類型。 將憑證和 訊息編碼類型 與位 OR 作業結合在一起,一律可以接受,如下列範例所示:
X509_ASN_ENCODING |PKCS_7_ASN_ENCODING
目前定義的編碼類型如下:
- X509_ASN_ENCODING
- PKCS_7_ASN_ENCODING
hCryptProv
未使用這個成員,而且應該設定為 NULL。
Windows Server 2003 和 Windows XP: 密碼 編譯服務提供者 的句柄,用來驗證已簽署的訊息。 此句柄所識別的 CSP 用於 哈希 和簽章驗證。除非有使用特定密碼編譯提供者的強原因,否則請將 設定為零,以使用預設 RSA 或 DSS 提供者。
此成員的數據類型為 HCRYPTPROV。
pfnGetSignerCertificate
用來取得簽署者憑證 內容的回呼函式指標。 如果 為 NULL,則會使用預設回呼。 默認回呼會嘗試從訊息的證書存儲取得簽署者憑證內容。
取得簽署者憑證的應用程式定義回呼函式可用來取代預設值。 它會將簽署者的憑證標識碼傳遞 (其簽發者和序號) ,以及其密碼編譯簽署訊息證書存儲的句柄。
如需回呼函式簽章和自變數,請參閱 CryptGetSignerCertificateCallback 。
pvGetArg
要傳遞至回呼函式的自變數。 一般而言,這會取得並驗證訊息簽署者的憑證。
pStrongSignPara
CERT_STRONG_SIGN_PARA結構的選擇性指標,其中包含用於強式簽署的參數。 如果您設定此成員且函式成功驗證簽章,則函式會接著檢查是否有強式簽章。 如果簽章不是強式的,作業將會失敗,並將 GetLastError 值設定為 NTE_BAD_ALGID。
備註
此結構會傳遞至下列函式:
- CryptDecodeMessage
- CryptDecryptAndVerifyMessageSignature
- CryptVerifyDetachedMessageSignature
- CryptVerifyMessageSignature
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
標頭 | wincrypt.h |
另請參閱
CryptDecryptAndVerifyMessageSignature