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 の場合、この関数は暗号化されたデータに必要なサイズを計算し、 pcbResult パラメーターが指す場所のサイズを返します。
[in] cbOutput
pbOutput パラメーターが指すバッファーのサイズ (バイト単位)。
[out] pcbResult
pbOutput バッファーにコピーされたバイト数を受け取る DWORD 変数へのポインター。 pbOutput が NULL の場合、署名に必要なサイズ (バイト単位) を受け取ります。
戻り値
関数が成功した場合、関数は 0 を返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | cryptxml.h |