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

PFN_CRYPT_GET_SIGNER_CERTIFICATE

コールバック

シグネチャ

CERT_CONTEXT* PFN_CRYPT_GET_SIGNER_CERTIFICATE(
    void* pvGetArg,
    CERT_QUERY_ENCODING_TYPE dwCertEncodingType,
    CERT_INFO* pSignerId,
    HCERTSTORE hMsgCertStore
);

パラメーター

フィールド型説明
pvGetArgvoid*CRYPT_VERIFY_MESSAGE_PARA 構造体で指定され、検証関数に渡されるユーザー定義データへのポインター。
dwCertEncodingTypeCERT_QUERY_ENCODING_TYPE

使用するエンコードの種類を指定します。次の例のように、証明書のエンコードの種類とメッセージのエンコードの種類をビットごとの OR 演算で組み合わせて両方指定することは、常に許容されます。

X509_ASN_ENCODING | PKCS_7_ASN_ENCODING

現在定義されているエンコードの種類は次のとおりです。

pSignerIdCERT_INFO*発行者とシリアル番号を格納した CERT_INFO 構造体へのポインター。コンテンツまたは署名者が存在しない場合は NULL になることがあります。
hMsgCertStoreHCERTSTORE署名されたメッセージに含まれるすべての証明書と CRL を格納した証明書ストアへのハンドル。

公式ドキュメント

CryptGetSignerCertificateCallback は、ユーザーが用意するコールバック関数で、CRYPT_VERIFY_MESSAGE_PARA 構造体と共に使用して、メッセージの署名者の証明書を取得し検証します。

戻り値

署名者の証明書が見つかった場合、この関数は読み取り専用の CERT_CONTEXT へのポインターを返します。返される CERT_CONTEXT は、証明書ストアから取得されたものか、CertCreateCertificateContext を使用して作成されたものです。いずれの場合も、CertFreeCertificateContext を使用して解放する必要があります。この関数が失敗した場合、戻り値は NULL です。

解説(Remarks)

メッセージにコンテンツまたは署名者が含まれていない場合、この関数は pSignerId に NULL を設定して呼び出されます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)