PFN_CMSG_EXPORT_KEY_TRANSコールバック関数 (wincrypt.h)
PFN_CMSG_EXPORT_KEY_TRANS コールバック関数は、エンベロープ メッセージのキー トランスポート受信者のコンテンツ暗号化キーを暗号化およびエクスポートします。 PFN_CMSG_EXPORT_KEY_TRANS は、CryptoAPIオブジェクト識別子 (OID) を使用してインストールできます。 この関数は、dwMsgType パラメーターが CMSG_ENVELOPEDに設定されている場合に、CryptMsgOpenToEncode 関数によって呼び出されます。
構文
PFN_CMSG_EXPORT_KEY_TRANS PfnCmsgExportKeyTrans;
BOOL PfnCmsgExportKeyTrans(
[in] PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo,
[in] PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTransEncodeInfo,
[in, out] PCMSG_KEY_TRANS_ENCRYPT_INFO pKeyTransEncryptInfo,
[in] DWORD dwFlags,
void *pvReserved
)
{...}
パラメーター
[in] pContentEncryptInfo
コンテンツ暗号化キーを含む CMSG_CONTENT_ENCRYPT_INFO 構造体へのポインター。
[in] pKeyTransEncodeInfo
コンテンツ暗号化キーの暗号化に使用する受信者の公開キーを指定する CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO 構造体へのポインター。
[in, out] pKeyTransEncryptInfo
暗号化されたコンテンツ暗号化キーを含む CMSG_KEY_TRANS_ENCRYPT_INFO 構造体へのポインター。
[in] dwFlags
この値は使用されません。 0 に設定します。
pvReserved
この値は予約されています。 これを NULL
戻り値
関数が成功した場合、戻り値は 0 以外 (TRUE) です。
関数が失敗した場合、戻り値は 0 (FALSE) です。 拡張エラー情報については、GetLastError
備考
PFN_CMSG_EXPORT_KEY_TRANS 関数は、pKeyTransEncryptInfo パラメーターが指す CMSG_KEY_TRANS_ENCRYPT_INFO 構造体の EncryptedKey メンバーを更新する必要があります。 この関数は、暗号化されたキーのメモリ割り当てを管理するために、
OID サポート関数 を使用して、このコールバック関数を展開できます。 Wincrypt.h は、この目的のために次の定数を定義します。
CAPI1 キーと Cryptography API: Next Generation (CNG) キーには、さまざまなコールバック関数を定義する必要があります。 どちらの関数も同じシグネチャを持ちますが、異なる OID を使用します。 呼び出される関数は、pContentEncryptInfo パラメーターが指す CMSG_CONTENT_ENCRYPT_INFO 構造体の fCNG メンバーの値によって異なります。 次の表に、コールバック関数と、fCNG メンバーの値の関係を示します。
fCNG 値 | 定数 | 定義 |
---|---|---|
偽 | CMSG_OID_EXPORT_KEY_TRANS_FUNCまたはCMSG_OID_CAPI1_EXPORT_KEY_TRANS_FUNC | "CryptMsgDllExportKeyTrans" |
真 | CMSG_OID_CNG_EXPORT_KEY_TRANS_FUNC | "CryptMsgDllCNGExportKeyTrans" |
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows XP [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows Server 2003 [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | wincrypt.h |