Fungsi CryptGetMessageCertificates (wincrypt.h)

Fungsi CryptGetMessageCertificates mengembalikan handel penyimpanan sertifikat terbuka yang berisi sertifikat dan CRL pesan. Fungsi ini memanggil CertOpenStore menggunakan jenis penyedia CERT_STORE_PROV_PKCS7 sebagai parameter lpszStoreProvider-nya .

Sintaks

HCERTSTORE CryptGetMessageCertificates(
  [in] DWORD             dwMsgAndCertEncodingType,
  [in] HCRYPTPROV_LEGACY hCryptProv,
  [in] DWORD             dwFlags,
  [in] const BYTE        *pbSignedBlob,
  [in] DWORD             cbSignedBlob
);

Parameter

[in] dwMsgAndCertEncodingType

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 saat ini ditentukan adalah:

  • X509_ASN_ENCODING
  • PKCS_7_ASN_ENCODING

[in] hCryptProv

Parameter ini tidak digunakan dan harus diatur ke NULL.

Windows Server 2003 dan Windows XP: Menangani CSP yang diteruskan ke CertOpenStore. Untuk informasi selengkapnya, lihat CertOpenStore. Kecuali ada alasan kuat untuk melewati penyedia kriptografi tertentu di hCryptProv, teruskan nol untuk menyebabkan penyedia RSA atau DSS default diperoleh.

Jenis data parameter ini adalah HCRYPTPROV.

[in] dwFlags

Bendera diteruskan ke CertOpenStore. Untuk informasi selengkapnya, lihat CertOpenStore.

[in] pbSignedBlob

Penunjuk ke struktur CRYPT_INTEGER_BLOB buffer yang berisi pesan yang ditandatangani.

[in] cbSignedBlob

Ukuran, dalam byte, dari pesan yang ditandatangani.

Mengembalikan nilai

Mengembalikan penyimpanan sertifikat yang berisi sertifikat dan CRL pesan. Untuk kesalahan, NULL dikembalikan.

Berikut ini mencantumkan kode kesalahan yang paling umum dikembalikan oleh fungsi GetLastError .

Menampilkan kode Deskripsi
E_INVALIDARG
Jenis pengodean pesan dan sertifikat tidak valid. Saat ini hanya PKCS_7_ASN_ENCODING dan X509_ASN_ENCODING yang didukung.
 

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.

Keterangan

Gunakan GetLastError untuk menentukan alasan kesalahan apa pun.

Contoh

Untuk contoh yang menggunakan fungsi ini, lihat Contoh Program C: Mengatur dan Mendapatkan Properti Penyimpanan Sertifikat.

Persyaratan

Persyaratan Nilai
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

CryptVerifyMessageSignature

Fungsi Pesan yang Disederhanakan