Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Fungsi CertNameToStr mengonversi nama yang dikodekan dalam struktur CERT_NAME_BLOB menjadi string karakter null-terminated.
Representasi string mengikuti spesifikasi nama khusus dalam RFC 1779. Pengecualian untuk aturan ini tercantum di bagian Keterangan, di bawah ini.
Sintaksis
DWORD CertNameToStrA(
[in] DWORD dwCertEncodingType,
[in] PCERT_NAME_BLOB pName,
[in] DWORD dwStrType,
[out] LPSTR psz,
[in] DWORD csz
);
Parameter
[in] dwCertEncodingType
Jenis pengodean sertifikat yang digunakan untuk mengodekan nama. Jenis pengodean pesan
Parameter ini dapat berupa jenis pengodean sertifikat yang saat ini ditentukan berikut.
Nilai | Arti |
---|---|
|
Menentukan pengodean sertifikat X.509. |
[in] pName
Penunjuk ke struktur CERT_NAME_BLOB yang akan dikonversi.
[in] dwStrType
Parameter ini menentukan format string output. Parameter ini juga menentukan opsi lain untuk konten string.
Parameter ini bisa menjadi salah satu nilai berikut.
Nilai | Arti |
---|---|
|
Semua pengidentifikasi objek |
|
OID disertakan dengan pemisah tanda sama dengan (=) dari nilai atributnya. CERT_RDN entri dipisahkan oleh koma diikuti dengan spasi (, ). Beberapa atribut dalam CERT_RDN dipisahkan oleh tanda plus diikuti dengan spasi (+ ). |
|
OID dikonversi ke nama kunci X.500 mereka; jika tidak, mereka sama dengan CERT_OID_NAME_STR. Jika OID tidak memiliki nama X.500 yang sesuai, OID digunakan dengan awalan OID.
Nilai RDN dikutip jika berisi spasi kosong di depan atau di belakang atau salah satu karakter berikut:
|
Opsi berikut juga dapat dikombinasikan dengan nilai di atas untuk menentukan opsi tambahan untuk string.
[out] psz
Penunjuk ke buffer karakter yang menerima string yang dikembalikan. Ukuran buffer ini ditentukan dalam parameter
[in] csz
Ukurannya, dalam karakter, dari psz buffer. Ukuran harus menyertakan karakter null yang mengakhiri.
Mengembalikan nilai
Mengembalikan jumlah karakter yang dikonversi, termasuk karakter null yang dihentikan.
Jika psz NULL atau csz adalah nol, mengembalikan ukuran string tujuan yang diperlukan.
Komentar
Jika
Sebaiknya jangan gunakan RDN multikomponen (misalnya, CN=James+O=Microsoft) untuk menghindari kemungkinan masalah pemesanan saat decoding terjadi. Sebagai gantinya, pertimbangkan untuk menggunakan RDN bernilai tunggal (misalnya, CN=James, O=Microsoft).
Representasi string mengikuti spesifikasi nama khusus dalam RFC 1779 kecuali untuk penyimpangan yang dijelaskan dalam daftar berikut.
- Nama yang berisi tanda kutip diapit dalam tanda kutip ganda.
- String kosong diapit dalam tanda kutip ganda.
- String yang berisi spasi berturut-turut tidak diapit dalam tanda kutip.
- Nilai Relative Distinguished Name (RDN) jenis CERT_RDN_ENCODED_BLOB atau CERT_RDN_OCTET_STRING diformat dalam heksadesimal.
- Jika OID tidak memiliki nama X.500 yang sesuai, awalan "OID" digunakan sebelum OID.
- Nilai RDN diapit dengan tanda kutip ganda (bukan "\") jika berisi spasi putih di depan, spasi kosong di belakang, atau salah satu karakter berikut:
- Koma (,)
- Tanda plus (+)
- Tanda sama dengan (=)
- Tanda inci (")
- Garis miring terbelakang (/)
- Kurang dari tanda (<)
- Lebih besar dari tanda (>)
- Tanda nomor (#)
- Titik koma (;)
- Nama kunci X.500 untuk stateOrProvinceName (2.5.4.8) OID adalah "S". Nilai ini berbeda dari nama kunci RFC 1779 X.500 ("ST").
Kunci | String pengidentifikasi objek |
---|---|
E | 1.2.840.113549.1.9.1 |
T | 2.5.4.12 |
G | 2.5.4.42 |
Saya | 2.5.4.43 |
SN | 2.5.4.4 |
Contoh
Untuk contoh yang menggunakan fungsi ini, lihat
Contoh Program C: Mengonversi Nama dari Sertifikat ke ASN.1 dan Back.
Nota
Header wincrypt.h mendefinisikan CertNameToStr sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedur UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows XP [aplikasi desktop | Aplikasi UWP] |
server minimum yang didukung |
Windows Server 2003 [aplikasi desktop | Aplikasi UWP] |
Platform Target |
Windows |
Header |
wincrypt.h |
Pustaka |
Crypt32.lib |
DLL |
Crypt32.dll |
Lihat juga
Fungsi Konversi Data