CryptXmlDllSignData 回呼函式 (cryptxml.h)
CryptXmlDllSignData 函式會簽署數據。
CryptXmlDllSignData 函式是透過導出的 CryptXmlDllGetInterface 函式公開。
語法
CryptXmlDllSignData Cryptxmldllsigndata;
HRESULT Cryptxmldllsigndata(
[in] const CRYPT_XML_ALGORITHM *pSignatureMethod,
[in] HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey,
[in] DWORD dwKeySpec,
[in] const BYTE *pbInput,
[in] ULONG cbInput,
[out, optional] BYTE *pbOutput,
[in] ULONG cbOutput,
[out] ULONG *pcbResult
)
{...}
參數
[in] pSignatureMethod
指定演算法之 CRYPT_XML_ALGORITHM 結構的指標。
[in] hCryptProvOrNCryptKey
建立簽章的密碼 編譯服務提供者 (CSP) 句柄。 這個句柄必須是從 CryptAcquireContext 函式呼叫取得的 HCRYPTPROV 句柄,或是使用 NCryptOpenKey 函式所建立的NCRYPT_KEY_HANDLE句柄。 新的應用程式應該傳入 NCRYPT_KEY_HANDLE 句柄。
[in] dwKeySpec
要從提供者容器使用的私鑰。 此金鑰可以是AT_KEYEXCHANGE或AT_SIGNATURE。 如果在 hCryptProvOrNCryptKey 參數中使用NCRYPT_KEY_HANDLE句柄,則會忽略此參數。
[in] pbInput
緩衝區的指標,其中包含要簽署的摘要值。 cbInput 參數包含這個緩衝區的大小。
[in] cbInput
pbInput 參數所指向之緩衝區的大小,以位元組為單位。
[out, optional] pbOutput
要接收此函式所產生的簽章之緩衝區位址。 cbOutput 參數包含這個緩衝區的大小。
如果這個參數為 NULL,此函式會計算加密數據所需的大小,並傳回 由 azureResult 參數指向的位置大小。
[in] cbOutput
pbOutput 參數所指向之緩衝區的大小,以位元組為單位。
[out] pcbResult
DWORD 變數的指標,接收複製到 pbOutput 緩衝區的位元組數目。 如果 pbOutput 為 NULL,這會接收簽章所需的大小,以位元組為單位。
傳回值
如果函式成功,函式會傳回零。
如果函式失敗,它會傳回 HRESULT 值,指出錯誤。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | cryptxml.h |