次の方法で共有


PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY コールバック関数 (wincrypt.h)

PFN_CMSG_GEN_CONTENT_ENCRYPT_KEYコールバック関数は、エンベロープされたメッセージのコンテンツを暗号化するために使用される対称キーを生成します。 この関数は、CMSG_CONTENT_ENCRYPT_INFO構造体を初期化するときに、CryptMsgOpenToEncode 関数によって呼び出されます。

構文

PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY PfnCmsgGenContentEncryptKey;

BOOL PfnCmsgGenContentEncryptKey(
  [in, out] PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo,
  [in]      DWORD dwFlags,
            void *pvReserved
)
{...}

パラメーター

[in, out] pContentEncryptInfo

キーを含む CMSG_CONTENT_ENCRYPT_INFO 構造体へのポインター。

[in] dwFlags

この値は使用されません。 0 に設定します。

pvReserved

このパラメーターは予約済みであり、 NULL である必要があります。

戻り値

関数が成功した場合、戻り値は 0 以外 (TRUE) になります

関数が失敗した場合、戻り値は 0 (FALSE) になります。 拡張エラー情報については、 GetLastError を呼び出します。

注釈

OID サポート関数を使用して、このコールバック関数を展開できます。 Wincrypt.h は、この目的のために次の定数を定義します。

CAPI1 キーと Cryptography API: Next Generation (CNG) キーには、さまざまなコールバック関数を定義する必要があります。 どちらの関数も同じシグネチャを持ちますが、異なる オブジェクト識別子 (OID) を使用します。 呼び出される関数は、pContentEncryptInfo パラメーターが指すCMSG_CONTENT_ENCRYPT_INFO構造体の fCNG メンバーの値によって異なります。 次の表は、コールバック関数と fCNG メンバーの値の関係を示しています。

fCNG 値 常時 定義
FALSE CMSG_OID_GEN_CONTENT_ENCRYPT_KEY_FUNCまたはCMSG_OID_CAPI1_GEN_CONTENT_ENCRYPT_KEY_FUNC "CryptMsgDllGenContentEncryptKey"
TRUE CMSG_OID_CNG_GEN_CONTENT_ENCRYPT_KEY_FUNC "CryptMsgDllCNGGenContentEncryptKey"

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー wincrypt.h