Fungsi CertSetCRLContextProperty (wincrypt.h)
Fungsi CertSetCRLContextProperty menetapkan properti yang diperluas untuk konteks daftar pencabutan sertifikat (CRL) yang ditentukan.
Sintaks
BOOL CertSetCRLContextProperty(
[in] PCCRL_CONTEXT pCrlContext,
[in] DWORD dwPropId,
[in] DWORD dwFlags,
[in] const void *pvData
);
Parameter
[in] pCrlContext
Penunjuk ke struktur CRL_CONTEXT .
[in] dwPropId
Mengidentifikasi properti yang akan diatur. Nilai dwPropId menentukan jenis dan konten parameter pvData . Pengidentifikasi yang ditentukan saat ini dan jenis data yang akan dikembalikan dalam pvData tercantum dalam tabel berikut.
Biasanya, hanya properti berikut yang diatur:
- CERT_HASH_PROP_ID
- CERT_SHA1_HASH_PROP_ID
- CERT_MD5_HASH_PROP_ID
- CERT_SIGNATURE_HASH_PROP_ID
Nilai | Makna |
---|---|
|
Jenis data untuk pvData: penunjuk ke DWORD
Menetapkan nilai DWORD yang menunjukkan apakah operasi tulis ke sertifikat dipertahankan. Nilai DWORD tidak diatur jika sertifikat berada di penyimpanan memori atau di penyimpanan berbasis registri yang dibuka sebagai baca-saja. |
|
Jenis data untuk pvData: NULL
Menunjukkan sertifikat dilewati selama enumerasi. Sertifikat dengan set properti ini ditemukan dengan operasi pencarian eksplisit, seperti yang digunakan untuk menemukan sertifikat dengan hash tertentu atau nomor seri. Tidak ada data dalam pvData yang terkait dengan properti ini. |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur string Unicode yang dihentikan null dengan nama jenis sertifikat yang sertifikatnya telah didaftarkan secara otomatis. |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur array byte yang berisi struktur CTL_USAGE yang dikodekan Abstract Syntax Notation One (ASN.1). |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur properti yang ditampilkan oleh antarmuka pengguna sertifikat. Properti ini memungkinkan pengguna untuk menjelaskan penggunaan sertifikat. |
|
Jenis data untuk pvData: Mengatur array byte yang berisi struktur CERT_ENHKEY_USAGE yang dikodekan ASN.1. |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur string karakter Unicode yang dihentikan null yang berisi nama tampilan untuk CRL. |
|
Jenis data untuk pvData: Penunjuk ke struktur CRYPT_DATA_BLOB .
Mengatur string yang berisi satu set algoritma kunci publik L"<PUBKEY>/<BITLENGTH>" dan pasangan panjang bit. Titik koma, L";", digunakan sebagai pemisah. Nilai <PUBKEY> mengidentifikasi algoritma kunci publik CNG. Algoritma berikut didukung:
Catatan Properti ini tidak boleh diatur untuk sertifikat penanda tangan OCSP yang didelegasikan. Sertifikat penanda tangan yang didelegasikan ditandatangani dengan kunci yang sama yang digunakan untuk menandatangani sertifikat subjek dan diperiksa di sana.
: L"RSA/2048; RSA/4096" |
|
Jenis data untuk pvData: Penunjuk ke struktur CRYPT_DATA_BLOB .
Mengatur string yang berisi sekumpulan pasangan algoritma L"<SIGNATURE>/<HASH>". Titik koma, L";", digunakan sebagai pemisah di antara pasangan. Properti ini diatur hanya ketika respons OCSP dikonversi ke CRL. Untuk sertifikat penanda tangan OCSP yang didelegasikan, hanya pasangan algoritma untuk sertifikat penanda tangan yang dikembalikan. Untuk rantai sertifikat penanda tangan OCSP independen, pasangan algoritma dikembalikan untuk setiap sertifikat dalam rantai tidak termasuk akar. Nilai <SIGNATURE> mengidentifikasi algoritma kunci publik CNG. Algoritma berikut didukung:
|
|
Jenis data untuk pvData: Penunjuk ke struktur CRYPT_DATA_BLOB .
Mengatur panjang, dalam bit, dari kunci publik dalam sertifikat penerbit CRL. Properti ini juga berlaku untuk OCSP yang telah dikonversi ke CRL. Properti ini secara eksplisit diatur oleh fungsi pencabutan verifikasi. Windows 8 dan Windows Server 2012: Dukungan untuk properti ini dimulai. |
|
Jenis data untuk pvData: penunjuk ke CERT_KEY_CONTEXT
Mengatur struktur CERT_KEY_CONTEXT . |
|
Jenis data untuk pvData: penunjuk ke array BYTE |
|
Jenis data untuk pvData: pointer ke HCRYPTPROV
Mengatur handel penyedia yang diperoleh dari CERT_KEY_CONTEXT_PROP_ID. |
|
Jenis data untuk pvData: pointer ke CRYPT_KEY_PROV_INFO
Mengatur penunjuk ke struktur CRYPT_KEY_PROV_INFO . |
|
Jenis data untuk pvData: penunjuk ke DWORD
Mengatur nilai DWORD yang menentukan kunci privat yang diperoleh dari properti CERT_KEY_CONTEXT_PROP_ID jika ada. Jika tidak, jika CERT_KEY_PROV_INFO_PROP_ID ada, itu adalah sumber dwKeySpec. |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur hash MD5. Anda dapat menghitung hash dengan menggunakan fungsi CryptHashCertificate . |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur struktur CERT_ALT_NAME_INFO yang dikodekan ASN.1 pada CTL. |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur Unicode yang dihentikan null, string karakter lebar yang menentukan nama file yang berisi kunci privat yang terkait dengan kunci umum sertifikat. |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur hash SHA1. Anda dapat menghitung hash dengan menggunakan CryptHashCertificate. |
|
Jenis data pvData: Penunjuk ke struktur CRYPT_DATA_BLOB .
Mengatur string L"<SIGNATURE>/<HASH>" yang mewakili tanda tangan sertifikat. Nilai <SIGNATURE> mengidentifikasi algoritma kunci publik CNG. Algoritma berikut didukung:
Properti ini secara eksplisit diatur oleh fungsi pencabutan verifikasi. Windows 8 dan Windows Server 2012: Dukungan untuk properti ini dimulai. |
|
Jenis data untuk pvData: penunjuk ke array BYTE Mengatur hash tanda tangan. Jika hash tidak ada, hash dihitung dengan CryptHashToBeSigned. Panjang hash adalah 20 byte untuk SHA dan 16 untuk MD5. |
Pengguna dapat menentukan jenis dwPropId tambahan dengan menggunakan nilai DWORD dari CERT_FIRST_USER_PROP_ID ke CERT_LAST_USER_PROP_ID. Untuk semua jenis dwPropId yang ditentukan pengguna, pvData menunjuk ke CRYPT_DATA_BLOB yang dikodekan.
Untuk semua pengidentifikasi properti lainnya, pvData menunjuk ke struktur CRYPT_DATA_BLOB yang dikodekan.
[in] dwFlags
CERT_STORE_NO_CRYPT_RELEASE_FLAG dapat diatur untuk properti dwPropId CERT_KEY_PROV_HANDLE_PROP_ID atau CERT_KEY_CONTEXT_PROP_ID.
Jika nilai CERT_SET_PROPERTY_IGNORE_PERSIST_ERROR_FLAG diatur, kesalahan penulisan penyedia apa pun diabaikan dan properti konteks yang di-cache selalu diatur.
Jika CERT_SET_PROPERTY_INHIBIT_PERSIST_FLAG diatur, kumpulan properti apa pun tidak akan bertahan.
[in] pvData
Penunjuk ke jenis data yang ditentukan oleh nilai yang diteruskan dalam dwPropId.
Mengembalikan nilai
Jika fungsi berhasil, nilai yang dikembalikan adalah TRUE.
Jika fungsi gagal, nilai yang dikembalikan adalah FALSE. Untuk informasi kesalahan yang diperluas, hubungi GetLastError. Salah satu kemungkinan kode kesalahan adalah sebagai berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Properti tidak valid. Pengidentifikasi yang ditentukan lebih besar dari 0x0000FFFF, atau, untuk properti CERT_KEY_CONTEXT_PROP_ID, anggota cbSize yang tidak valid ditentukan dalam struktur CERT_KEY_CONTEXT . |
Keterangan
Jika properti sudah ada, nilai lamanya diganti.
Contoh
Untuk contoh yang menggunakan fungsi ini, lihat Contoh Program C: Mendapatkan dan Mengatur Properti Sertifikat.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2003 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | wincrypt.h |
Pustaka | Crypt32.lib |
DLL | Crypt32.dll |