Win32 API 日本語リファレンス
ホーム › Security.Cryptography › PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY

PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY

コールバック

シグネチャ

BOOL PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY(
    CMSG_CONTENT_ENCRYPT_INFO* pContentEncryptInfo,
    DWORD dwFlags,
    void* pvReserved
);

パラメーター

フィールド型説明
pContentEncryptInfoCMSG_CONTENT_ENCRYPT_INFO*キーを格納する CMSG_CONTENT_ENCRYPT_INFO 構造体へのポインター。
dwFlagsDWORDこの値は使用されません。ゼロに設定してください。
pvReservedvoid*このパラメーターは予約されており、NULL を指定する必要があります。

公式ドキュメント

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

戻り値

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

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

解説(Remarks)

このコールバック関数を配置するには、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"
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)