ホーム › Security.Cryptography › PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC
PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC
コールバックシグネチャ
BOOL PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC(
CERT_QUERY_ENCODING_TYPE dwCertEncodingType,
CERT_PUBLIC_KEY_INFO* pPubKeyInfo,
CRYPT_ALGORITHM_IDENTIFIER* pSignatureAlgorithm,
void* pvDecodedSignPara,
LPWSTR pwszCNGPubKeyAlgid,
LPWSTR pwszCNGHashAlgid,
BYTE* pbComputedHash,
DWORD cbComputedHash,
BYTE* pbSignature,
DWORD cbSignature
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| dwCertEncodingType | CERT_QUERY_ENCODING_TYPE | 使用するエンコードの種類を指定します。証明書とメッセージエンコードの種類の両方を、次の例のようにビットごとの OR 演算で組み合わせて指定することは常に可能です。 X509_ASN_ENCODING | PKCS_7_ASN_ENCODING 現在定義されているエンコードの種類は次のとおりです。 |
| pPubKeyInfo | CERT_PUBLIC_KEY_INFO* | 署名の検証に使用する公開キーを格納した CERT_PUBLIC_KEY_INFO 構造体のアドレス。これを CryptImportPublicKeyInfoEx2 と共に使用して、BCRYPT_KEY_HANDLE を取得できます。 |
| pSignatureAlgorithm | CRYPT_ALGORITHM_IDENTIFIER* | 署名のオブジェクト識別子 (OID) と、その省略可能なエンコードされたパラメーターを格納した CRYPT_ALGORITHM_IDENTIFIER 構造体へのポインター。 |
| pvDecodedSignPara | void* | PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC 関数が以前に返した、デコード済みの署名パラメーターのデータ構造への省略可能なポインター。 |
| pwszCNGPubKeyAlgid | LPWSTR | pSignatureAlgorithm->pszObjId に対応する Cryptography API: Next Generation (CNG) の公開キーアルゴリズム識別子を格納した Unicode 文字列。 |
| pwszCNGHashAlgid | LPWSTR | pSignatureAlgorithm->pszObjId、または pvDecodedSignPara 内のハッシュアルゴリズム識別子に対応する CNG のハッシュアルゴリズム識別子を格納した Unicode 文字列。 |
| pbComputedHash | BYTE* | pwszCNGHashAlgid に対応する、BCryptFinishHash 関数が返した計算済みハッシュのバイト列へのポインター。 |
| cbComputedHash | DWORD | 計算済みハッシュの長さ (バイト単位) を表す値。 |
| pbSignature | BYTE* | エンコードされた署名のバイト列へのポインター。 |
| cbSignature | DWORD | エンコードされた署名の長さ (バイト単位) を表す値。 |
公式ドキュメント
PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC コールバック関数は、エンコードされた署名を復号し、計算されたハッシュと比較するために呼び出されます。
戻り値
関数が成功した場合は、0 以外の値 (TRUE) を返します。
関数が失敗した場合は、0 (FALSE) を返します。拡張エラー情報を取得するには、GetLastError を呼び出します。
このコールバック関数がその署名アルゴリズムをサポートしていない場合は、FALSE を返し、ERROR_NOT_SUPPORTED を指定して SetLastError を呼び出す必要があります。
解説(Remarks)
このコールバック関数を配置するには、OID サポート関数を使用できます。Wincrypt.h では、この目的のために次の定数が定義されています。
| 定数 | 定義 |
|---|---|
| CRYPT_OID_VERIFY_ENCODED_SIGNATURE_FUNC | "CryptDllVerifyEncodedSignature" |
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)