Fungsi CryptVerifyDetachedMessageSignature (wincrypt.h)
Fungsi CryptVerifyDetachedMessageSignature memverifikasi pesan bertanda tangan yang berisi tanda tangan atau tanda tangan yang dilepas.
Sintaks
BOOL CryptVerifyDetachedMessageSignature(
[in] PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara,
[in] DWORD dwSignerIndex,
[in] const BYTE *pbDetachedSignBlob,
[in] DWORD cbDetachedSignBlob,
[in] DWORD cToBeSigned,
[in] const BYTE * [] rgpbToBeSigned,
[in] DWORD [] rgcbToBeSigned,
[out, optional] PCCERT_CONTEXT *ppSignerCert
);
Parameter
[in] pVerifyPara
Penunjuk ke struktur CRYPT_VERIFY_MESSAGE_PARA yang berisi parameter verifikasi.
[in] dwSignerIndex
Indeks tanda tangan yang akan diverifikasi. Pesan mungkin memiliki beberapa penanda tangan dan fungsi ini dapat dipanggil berulang kali, mengubah dwSignerIndex untuk memverifikasi tanda tangan lainnya. Jika fungsi mengembalikan FALSE, dan GetLastError mengembalikan CRYPT_E_NO_SIGNER, panggilan sebelumnya menerima penanda tangan terakhir pesan.
[in] pbDetachedSignBlob
Penunjuk ke BLOB yang berisi tanda tangan pesan yang dikodekan.
[in] cbDetachedSignBlob
Ukuran, dalam byte, dari tanda tangan yang dilepas.
[in] cToBeSigned
Jumlah elemen array dalam rgpbToBeSigned dan rgcbToBeSigned.
[in] rgpbToBeSigned
Array pointer ke buffer yang berisi konten yang akan di-hash.
[in] rgcbToBeSigned
Array ukuran, dalam byte, untuk buffer konten yang diarahkan ke rgpbToBeSigned.
[out, optional] ppSignerCert
Penunjuk ke penunjuk ke struktur CERT_CONTEXT sertifikat penanda tangan. Setelah Anda selesai menggunakan konteks sertifikat, bebaskan dengan memanggil fungsi CertFreeCertificateContext . Penunjuk ke struktur CERT_CONTEXT tidak akan dikembalikan jika parameter ini NULL.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan bukan nol (TRUE).
Jika fungsi gagal, nilai yang dikembalikan adalah nol (FALSE).
Untuk informasi kesalahan yang diperluas, hubungi GetLastError.
Berikut ini mencantumkan kode kesalahan yang paling umum dikembalikan oleh fungsi GetLastError .
Menampilkan kode | Deskripsi |
---|---|
|
Jenis pengodean pesan dan sertifikat tidak valid. Saat ini hanya PKCS_7_ASN_ENCODING dan X509_ASN_ENCODING_TYPE yang didukung. cbSize tidak valid dalam *pVerifyPara. |
|
Bukan pesan kriptografi yang ditandatangani. |
|
Pesan tidak memiliki penanda tangan atau penanda tangan untuk dwSignerIndex yang ditentukan. |
|
Pesan di-hash dan ditandatangani dengan menggunakan algoritma yang tidak diketahui atau tidak didukung. |
|
Tanda tangan pesan tidak diverifikasi. |
Jika fungsi gagal, GetLastError dapat mengembalikan kesalahan pengodean/pendekodean Abstract Syntax Notation One (ASN.1). Untuk informasi tentang kesalahan ini, lihat Nilai Pengembalian Pengodean/Pendekodean ASN.1.
Persyaratan
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | wincrypt.h |
Pustaka | Crypt32.lib |
DLL | Crypt32.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk