PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC fungsi panggilan balik (wincrypt.h)
Fungsi panggilan balik PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC dipanggil untuk mendekripsi tanda tangan yang dikodekan dan membandingkannya dengan hash komputasi.
Sintaks
PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC PfnCryptVerifyEncodedSignatureFunc;
BOOL PfnCryptVerifyEncodedSignatureFunc(
[in] DWORD dwCertEncodingType,
[in] PCERT_PUBLIC_KEY_INFO pPubKeyInfo,
[in] PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
[in, optional] void *pvDecodedSignPara,
[in] LPCWSTR pwszCNGPubKeyAlgid,
[in] LPCWSTR pwszCNGHashAlgid,
[in] BYTE *pbComputedHash,
[in] DWORD cbComputedHash,
[in] BYTE *pbSignature,
[in] DWORD cbSignature
)
{...}
Parameter
[in] dwCertEncodingType
Menentukan jenis pengodean yang digunakan. Selalu dapat diterima untuk menentukan jenis pengodean sertifikat dan pesan dengan menggabungkannya dengan operasi bitwise-OR seperti yang ditunjukkan dalam contoh berikut:
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING Jenis pengodean yang ditentukan saat ini adalah:
- X509_ASN_ENCODING
- PKCS_7_ASN_ENCODING
[in] pPubKeyInfo
Alamat struktur CERT_PUBLIC_KEY_INFO yang berisi kunci umum yang akan digunakan untuk memverifikasi tanda tangan. Anda dapat menggunakan ini dengan CryptImportPublicKeyInfoEx2 untuk mendapatkan BCRYPT_KEY_HANDLE.
[in] pSignatureAlgorithm
Penunjuk ke struktur CRYPT_ALGORITHM_IDENTIFIER yang berisi pengidentifikasi objek tanda tangan (OID) dan parameter yang dikodekan opsional.
[in, optional] pvDecodedSignPara
Penunjuk opsional ke struktur data parameter tanda tangan yang didekodekan yang sebelumnya dikembalikan oleh fungsi PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC .
[in] pwszCNGPubKeyAlgid
String Unicode yang berisi pengidentifikasi algoritma kunci publik Cryptography API: Next Generation (CNG) yang sesuai dengan pSignatureAlgorithm-pszObjId>.
[in] pwszCNGHashAlgid
String Unicode yang berisi pengidentifikasi algoritma hashing CNG yang sesuai dengan pSignatureAlgorithm-pszObjId> atau ke pengidentifikasi algoritma hash di pvDecodedSignPara.
[in] pbComputedHash
Penunjuk ke byte hash terkomputasi yang dikembalikan oleh fungsi BCryptFinishHash yang sesuai dengan pwszCNGHashAlgid.
[in] cbComputedHash
Nilai yang mewakili panjang, dalam byte, dari hash komputasi.
[in] pbSignature
Penunjuk ke byte tanda tangan yang dikodekan.
[in] cbSignature
Nilai yang mewakili panjang, dalam byte, dari tanda tangan yang dikodekan.
Nilai kembali
Jika fungsi berhasil, fungsi mengembalikan bukan nol (TRUE).
Jika fungsi gagal, fungsi akan mengembalikan nol (FALSE). Untuk informasi kesalahan yang diperluas, hubungi GetLastError.
Jika fungsi panggilan balik ini tidak mendukung algoritma tanda tangan, fungsi tersebut harus mengembalikan FALSE dan memanggil SetLastError dengan ERROR_NOT_SUPPORTED.
Keterangan
Anda dapat menggunakan Fungsi Dukungan OID untuk menyebarkan fungsi panggilan balik ini. Wincrypt.h mendefinisikan konstanta berikut untuk tujuan ini.
Terus-menerus | Definisi |
---|---|
CRYPT_OID_VERIFY_ENCODED_SIGNATURE_FUNC | "CryptDllVerifyEncodedSignature" |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | wincrypt.h |