PFN_CMSG_CNG_IMPORT_KEY_TRANS コールバック関数 (wincrypt.h)
PFN_CMSG_CNG_IMPORT_KEY_TRANSコールバック関数は、キー トランスポート受信者を対象とするコンテンツ暗号化キー (CEK) をインポートおよび復号化します。 PFN_CMSG_CNG_IMPORT_KEY_TRANS は、Cryptography API: Next Generation (CNG) オブジェクト識別子 (OID) を使用してインストールできます。
構文
PFN_CMSG_CNG_IMPORT_KEY_TRANS PfnCmsgCngImportKeyTrans;
BOOL PfnCmsgCngImportKeyTrans(
[in, out] PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo,
[in] PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara,
[in] DWORD dwFlags,
void *pvReserved
)
{...}
パラメーター
[in, out] pCNGContentDecryptInfo
復号化された CEK バイトで更新される CMSG_CNG_CONTENT_DECRYPT_INFO 構造体へのポインター。 このパラメーターには、CEK の暗号化を解除するために使用されるキーが含まれています。 次の pKeyTransDecryptPara パラメーターには、復号化する CEK バイトが含まれています。
[in] pKeyTransDecryptPara
CMSG_CTRL_DECRYPTまたはCMSG_CTRL_KEY_TRANS_DECRYPTケースで CryptMsgControl 関数に渡されるキー トランスポート情報を含むCMSG_CTRL_KEY_TRANS_DECRYPT_PARA構造体へのポインター。 CMSG_CTRL_DECRYPTの場合、CryptMsgControl は、CMSG_CTRL_DECRYPT_PARA構造体をCMSG_CTRL_KEY_TRANS_DECRYPT_PARA構造体に変換します。
pKeyTrans メンバーの EncryptedKey メンバーには、復号化する CEK バイトが含まれています。 CMSG_CTRL_KEY_TRANS_DECRYPT_PARA構造体には HCRYPTPROV の選択肢が含まれている可能性があるため、その hNCryptKey メンバーを使用して EncryptedKey の暗号化を解除することはできません。 代わりに、pCNGContentDecryptInfo パラメーターで指定された hNCryptKey を使用する必要があります。
この関数は 、CMSG_CTRL_KEY_TRANS_DECRYPT_PARA 構造体のメンバーを更新することはできません。
[in] dwFlags
このパラメーターは予約されています。 0 に設定します。
pvReserved
このパラメーターは予約されています。 NULL に設定 します。
戻り値
関数が成功した場合、戻り値は 0 以外 (TRUE) になります。
関数が失敗した場合、戻り値は 0 (FALSE) になります。 拡張エラー情報については、 GetLastError を呼び出します。
このコールバック関数がキー暗号化アルゴリズムをサポートしていない場合は、 FALSE を 返し、ERROR_NOT_SUPPORTEDを使用して SetLastError を 呼び出す必要があります。
注釈
CryptMsgControl 関数は、dwCtrlType パラメーターで指定された次の操作に対してこの関数を呼び出します。
CMSG_CTRL_DECRYPTCMSG_CTRL_KEY_TRANS_DECRYPTOID サポート関数 を使用して、このコールバック関数を展開できます。 Wincrypt.h は、この目的のために次の定数を定義します。
常時 | 定義 |
---|---|
CMSG_OID_CNG_IMPORT_KEY_TRANS_FUNC | "CryptMsgDllCNGImportKeyTrans" |
例
OID インストール可能なコールバック関数を展開する例については、「 CryptoAPI 機能の拡張」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | wincrypt.h |