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.
Nilai berikut digunakan untuk mengidentifikasi properti penyimpanan kunci.
Pengidentifikasi
NCRYPT_ALGORITHM_GROUP_PROPERTY
L"Algorithm Group"
String Unicode null-terminated yang berisi nama grup algoritma objek. Properti ini hanya berlaku untuk kunci. Pengidentifikasi berikut dikembalikan oleh penyedia penyimpanan kunci Microsoft.
| Pengidentifikasi | Nilai | Deskripsi |
|---|---|---|
| NCRYPT_RSA_ALGORITHM_GROUP | "RSA" | Grup algoritma RSA. |
| NCRYPT_DH_ALGORITHM_GROUP | "DH" | Grup algoritma Diffie-Hellman. |
| NCRYPT_DSA_ALGORITHM_GROUP | "DSA" | Grup algoritma DSA. |
| NCRYPT_ECDSA_ALGORITHM_GROUP | "ECDSA" | Grup algoritma DSA kurva elips. |
| NCRYPT_ECDH_ALGORITHM_GROUP | "ECDH" | Kurva elips Diffie-Hellman grup algoritma. |
NCRYPT_ALGORITHM_PROPERTY
L"Algorithm Name"
String Unicode yang dihentikan null yang berisi nama algoritma objek. Ini bisa menjadi salah satu Pengidentifikasi Algoritma CNG yang telah ditentukan sebelumnya atau pengidentifikasi algoritma terdaftar lainnya. Properti ini hanya berlaku untuk kunci.
NCRYPT_ASSOCIATED_ECDH_KEY
L"SmartCardAssociatedECDHKey"
Nilai LPWSTR yang menunjukkan nama kontainer kunci Kurva Elips Diffie-Hellman (ECDH) untuk digunakan selama masuk untuk handel tertentu ke kunci Elliptic Curve Digital Signature Algorithm (ECDSA). Jika tidak ada kunci ECDH pada kartu, penyedia penyimpanan kunci (KSP) mengembalikan NTE_NOT_FOUND. Properti ini berlaku untuk kunci ECDSA untuk masuk dengan kartu pintar. Properti ini didukung oleh penyedia penyimpanan kunci Kartu Pintar Microsoft dan bukan oleh penyedia penyimpanan kunci Perangkat Lunak Microsoft.
Windows Server 2008 dan Windows Vista: Nilai ini tidak didukung.
NCRYPT_BLOCK_LENGTH_PROPERTY
L"Block Length"
DWORD yang berisi panjang, dalam byte, dari blok enkripsi. Properti ini hanya berlaku untuk kunci yang mendukung enkripsi.
NCRYPT_CERTIFICATE_PROPERTY
L"SmartCardKeyCertificate"
BLOB yang berisi sertifikat X.509 yang terkait dengan kunci.
Windows Server 2008 R2, Windows 7, Windows Server 2008 dan Windows Vista:BLOB yang berisi sertifikat kunci kartu pintar. Properti ini tidak didukung oleh Penyedia Penyimpanan Kunci Perangkat Lunak Microsoft.
NCRYPT_DH_PARAMETERS_PROPERTY
L"DHParameters"
Menentukan parameter yang akan digunakan dengan kunci Diffie-Hellman. Jenis data ini adalah penunjuk ke struktur BCRYPT_DH_PARAMETER_HEADER . Properti ini hanya dapat diatur dan harus diatur untuk kunci sebelum kunci selesai.
NCRYPT_EXPORT_POLICY_PROPERTY
L"Export Policy"
DWORD yang berisi sekumpulan bendera yang menentukan kebijakan ekspor untuk kunci yang dipertahankan. Properti ini hanya berlaku untuk kunci. Ini bisa berisi nol atau kombinasi dari satu atau beberapa nilai berikut.
| Pengidentifikasi | Nilai | Deskripsi |
|---|---|---|
| NCRYPT_ALLOW_EXPORT_FLAG | 0x00000001 | Kunci privat dapat diekspor. |
| NCRYPT_ALLOW_PLAINTEXT_EXPORT_FLAG | 0x00000002 | Kunci privat dapat diekspor dalam bentuk teks biasa. |
| NCRYPT_ALLOW_ARCHIVING_FLAG | 0x00000004 | Kunci privat dapat diekspor sekali untuk tujuan pengarsipan. Bendera ini hanya berlaku untuk handel kunci asli tempat bendera diatur. Kebijakan ini hanya dapat diterapkan ke handel kunci asli. Setelah handel kunci ditutup, kunci tidak dapat lagi diekspor untuk tujuan pengarsipan. |
| NCRYPT_ALLOW_PLAINTEXT_ARCHIVING_FLAG | 0x00000008 | Kunci privat dapat diekspor sekali dalam bentuk teks biasa untuk tujuan pengarsipan. Bendera ini hanya berlaku untuk handel kunci asli tempat bendera diatur. Kebijakan ini hanya dapat diterapkan ke handel kunci asli. Setelah handel kunci ditutup, kunci tidak dapat lagi diekspor untuk tujuan pengarsipan. |
NCRYPT_IMPL_TYPE_PROPERTY
L"Impl Type"
DWORD yang berisi sekumpulan bendera yang menentukan detail implementasi penyedia. Properti ini hanya berlaku untuk penyedia penyimpanan utama. Ini bisa berisi nol atau kombinasi dari satu atau beberapa nilai berikut.
| Pengidentifikasi | Nilai | Deskripsi |
|---|---|---|
| NCRYPT_IMPL_HARDWARE_FLAG | 0x00000001 | Penyedia berbasis perangkat keras. |
| NCRYPT_IMPL_SOFTWARE_FLAG | 0x00000002 | Penyedia berbasis perangkat lunak. |
| NCRYPT_IMPL_REMOVABLE_FLAG | 0x00000008 | Penyedia dapat dilepas. |
| NCRYPT_IMPL_HARDWARE_RNG_FLAG | 0x00000010 | Penyedia adalah generator angka acak berbasis perangkat keras. |
| NCRYPT_IMPL_VIRTUAL_ISOLATION_FLAG | 0x00000020 | Penyedia adalah penyedia isolasi virtual. |
NCRYPT_KEM_CIPHERTEXT_LENGTH_PROPERTY
L"KEM Ciphertext Length"
DWORD yang berisi panjang, dalam byte, dari ciphertext. Properti ini hanya berlaku untuk kunci yang mendukung mekanisme enkapsulasi kunci (KEM).
NCRYPT_KEM_SHARED_SECRET_LENGTH_PROPERTY
L"KEM Shared Secret Length"
DWORD yang berisi panjang, dalam byte, dari rahasia bersama. Properti ini hanya berlaku untuk kunci yang mendukung mekanisme enkapsulasi kunci (KEM).
NCRYPT_KEY_TYPE_PROPERTY
L"Key Type"
DWORD yang berisi sekumpulan bendera yang menentukan jenis kunci. Properti ini hanya berlaku untuk kunci. Ini bisa berisi nol atau nilai berikut.
| Pengidentifikasi | Nilai | Deskripsi |
|---|---|---|
| NCRYPT_MACHINE_KEY_FLAG | 0x00000020 | Kunci berlaku untuk komputer lokal. Jika bendera ini tidak ada, kunci berlaku untuk pengguna saat ini. |
NCRYPT_KEY_USAGE_PROPERTY
L"Key Usage"
DWORD yang berisi sekumpulan bendera yang menentukan detail penggunaan untuk kunci. Properti ini hanya berlaku untuk kunci. Ini bisa berisi nol atau kombinasi dari satu atau beberapa nilai berikut.
| Pengidentifikasi | Nilai | Deskripsi |
|---|---|---|
| NCRYPT_ALLOW_DECRYPT_FLAG | 0x00000001 | Kunci dapat digunakan untuk dekripsi. |
| NCRYPT_ALLOW_SIGNING_FLAG | 0x00000002 | Kunci dapat digunakan untuk penandatanganan. |
| NCRYPT_ALLOW_KEY_AGREEMENT_FLAG | 0x00000004 | Kunci dapat digunakan untuk enkripsi perjanjian rahasia. |
| NCRYPT_ALLOW_KEY_ATTESTATION_FLAG | 0x00000010 | Menunjukkan kunci adalah kunci dengan pengesahan. |
| NCRYPT_ALLOW_ALL_USAGES | 0x00ffffff | Kunci dapat digunakan untuk tujuan apa pun. |
NCRYPT_LAST_MODIFIED_PROPERTY
L"Modified"
Menunjukkan kapan kunci terakhir diubah. Jenis data ini adalah penunjuk ke struktur FILETIME . Properti ini hanya berlaku untuk kunci yang dipertahankan.
NCRYPT_LENGTH_PROPERTY
L"Length"
DWORD yang berisi panjang, dalam bit, dari kunci. Properti ini hanya berlaku untuk kunci.
NCRYPT_LENGTHS_PROPERTY
L"Lengths"
Menunjukkan ukuran kunci yang didukung oleh kunci. Jenis data ini adalah penunjuk ke struktur NCRYPT_SUPPORTED_LENGTHS yang berisi informasi ini. Properti ini hanya berlaku untuk kunci.
NCRYPT_MAX_NAME_LENGTH_PROPERTY
L"Max Name Length"
DWORD yang berisi panjang maksimum, dalam karakter, dari nama kunci persisten. Properti ini hanya berlaku untuk penyedia.
Properti ini terutama dimaksudkan untuk digunakan oleh penyedia penyimpanan utama yang menyimpan kunci mereka pada perangkat yang memiliki jumlah memori terbatas yang tersedia, seperti kartu pintar.
NCRYPT_NAME_PROPERTY
L"Name"
Penunjuk ke string Unicode yang dihentikan null yang berisi nama objek.
NCRYPT_PIN_PROMPT_PROPERTY
L"SmartCardPinPrompt"
Nilai ini tidak didukung.
NCRYPT_PIN_PROPERTY
L"SmartCardPin"
Penunjuk ke string Unicode yang dihentikan null yang berisi PIN. PIN digunakan untuk kunci kartu pintar atau kata sandi untuk kunci yang dilindungi kata sandi yang disimpan dalam KSP berbasis perangkat lunak. Properti ini hanya dapat diatur. Microsoft KSP akan menyimpan nilai ini sehingga pengguna hanya diminta sekali per proses.
NCRYPT_PROVIDER_HANDLE_PROPERTY
L"Provider Handle"
NCRYPT_PROV_HANDLE yang berisi handel penyedia penyimpanan kunci CNG. Setelah selesai menggunakan handel, Anda harus memanggil NCryptFreeObject untuk merilisnya.
NCRYPT_READER_PROPERTY
L"SmartCardReader"
Penunjuk ke string Unicode yang dihentikan null yang berisi nama pembaca kartu pintar. Properti ini hanya dapat diatur.
NCRYPT_ROOT_CERTSTORE_PROPERTY
L"SmartcardRootCertStore"
HCERTSTORE yang mewakili penyimpanan sertifikat akar kartu pintar.
NCRYPT_SCARD_PIN_ID
L"SmartCardPinId"
Pointer ke nilai yang PIN_ID terkait dengan kunci kriptografi tertentu pada kartu pintar. Ini adalah properti baca saja. Jenis PIN_ID data didefinisikan dalam Cardmod.h.
Windows Server 2008 dan Windows Vista: Nilai ini tidak didukung.
Nota
File Cardmod.h header C menyediakan informasi tambahan yang relevan dengan API ini. File ini berisi prototipe fungsi dan struktur yang ditentukan API minidriver kartu pintar Microsoft. API ini tersedia melalui Kit Pengembangan Penyedia Kriptografi Microsoft (CPDK).
NCRYPT_SCARD_PIN_INFO
L"SmartCardPinInfo"
Pointer untuk PIN_INFO struktur PIN yang terkait dengan kunci kriptografi tertentu pada kartu pintar. Pemanggil menyediakan handel kunci. Properti ini adalah properti baca-saja. Struktur PIN_INFO didefinisikan dalam Cardmod.h.
Windows Server 2008 dan Windows Vista: Nilai ini tidak didukung.
NCRYPT_SECURE_PIN_PROPERTY
L"SmartCardSecurePin"
Penunjuk ke string Unicode yang dihentikan null yang berisi PIN sesi kartu pintar. Properti ini hanya dapat diatur.
Windows Vista: Properti ini tidak didukung.
NCRYPT_SECURITY_DESCR_PROPERTY
L"Security Descr"
Penunjuk ke struktur SECURITY_DESCRIPTOR yang berisi informasi kontrol akses untuk kunci. Properti ini hanya berlaku untuk kunci persisten. Parameter dwFlags dari fungsi NCryptGetProperty atau NCryptSetProperty mengidentifikasi bagian dari deskriptor keamanan untuk mendapatkan atau mengatur.
NCRYPT_SECURITY_DESCR_SUPPORT_PROPERTY
L"Security Descr Support"
Menunjukkan apakah penyedia mendukung deskriptor keamanan untuk kunci. Properti ini adalah DWORD yang berisi 1 jika penyedia mendukung deskriptor keamanan untuk kunci. Jika properti ini berisi nilai lain, atau jika fungsi NCryptGetProperty mengembalikan NTE_NOT_SUPPORTED, maka penyedia tidak mendukung deskriptor keamanan untuk kunci. Properti ini hanya berlaku untuk penyedia.
NCRYPT_SMARTCARD_GUID_PROPERTY
L"SmartCardGuid"
BLOB yang berisi pengidentifikasi kartu pintar.
NCRYPT_UI_POLICY_PROPERTY
L"UI Policy"
Jika digunakan dengan fungsi NCryptSetProperty atau NCryptGetProperty , ini adalah penunjuk ke struktur NCRYPT_UI_POLICY yang berisi kebijakan antarmuka pengguna kunci yang kuat untuk kunci tersebut. Properti ini hanya berlaku untuk kunci persisten. Properti ini hanya dapat diatur ketika kunci sedang dibuat. Setelah fungsi NCryptFinalizeKey dipanggil untuk kunci ini, properti ini menjadi baca-saja.
Penyedia penyimpanan utama dapat menerima parameter ini melalui fungsi panggilan balik NCryptSetPropertyFn . Nilai parameter adalah struktur NCRYPT_UI_POLICY_BLOB yang berisi informasi yang sama. Demikian pula, ketika aplikasi membuat permintaan melalui NCryptSetPropertyFn kepada penyedia untuk mengembalikan properti ini, penyedia diharapkan mengembalikan struktur NCRYPT_UI_POLICY_BLOB .
NCRYPT_UNIQUE_NAME_PROPERTY
L"Unique Name"
Penunjuk ke string Unicode yang dihentikan null yang berisi nama unik objek. Ini adalah nama alternatif yang dapat digunakan saat mengakses kunci. Properti ini digunakan ketika diperkirakan bahwa nama kunci yang awalnya diteruskan ke NCryptCreatePersistedKey tidak cukup unik untuk mengidentifikasi kunci yang bertahan dengan andal. Penyedia penyimpanan kunci Microsoft akan mengembalikan nama file kunci sebagai properti ini.
NCRYPT_USE_CONTEXT_PROPERTY
L"Use Context"
Penunjuk ke string Unicode yang dihentikan null yang menjelaskan konteks operasi. Properti ini tidak persisten dan dapat diatur pada penyedia atau kunci. Kunci tidak memiliki akses ke NCRYPT_USE_CONTEXT_PROPERTY properti penyedia karena properti hanya khusus untuk handel yang diatur.
Contoh di mana properti ini akan digunakan dalam konteks penyedia adalah penyedia penyimpanan utama yang perlu meminta pengguna selama panggilan ke NCryptOpenKey (misalnya, "Masukkan kartu pintar Anda di pembaca."). Karena handel kunci tidak tersedia sampai setelah NCryptOpenKey kembali, aplikasi harus mengatur properti ini pada handel penyedia sebelum memanggil NCryptOpenKey.
Contoh di mana properti ini akan digunakan dalam konteks handel kunci adalah penyedia penyimpanan utama yang perlu meminta pengguna selama operasi menggunakan kunci (misalnya, "Aplikasi ini perlu menggunakan kunci ini untuk menandatangani dokumen."). Penyedia kemudian dapat menyampaikan informasi konteks ini kepada pengguna di antarmuka pengguna apa pun yang ditampilkan selama operasi.
NCRYPT_USE_COUNT_ENABLED_PROPERTY
L"Enabled Use Count"
Menunjukkan apakah penyedia mendukung penghitungan penggunaan untuk kunci. Properti ini adalah DWORD yang berisi 1 jika penyedia mendukung penghitungan penggunaan untuk kunci. Jika properti ini berisi nilai lain, atau jika fungsi NCryptGetProperty mengembalikan NTE_NOT_SUPPORTED, maka penyedia tidak mendukung penghitungan penggunaan untuk kunci. Properti ini hanya berlaku untuk penyedia.
NCRYPT_USE_COUNT_PROPERTY
L"Use Count"
Variabel ULARGE_INTEGER yang berisi jumlah operasi yang telah dilakukan kunci privat yang ditentukan. Properti ini bersifat opsional dan mungkin tidak didukung oleh semua penyedia. Penyedia yang mendukung properti ini pada kunci juga harus mendukung properti NCRYPT_USE_COUNT_ENABLED_PROPERTY pada handel penyedia. Penyedia penyimpanan kunci Microsoft tidak mendukung properti ini. Properti ini hanya berlaku untuk kunci persisten.
NCRYPT_USER_CERTSTORE_PROPERTY
L"SmartCardUserCertStore"
HCERTSTORE yang mewakili penyimpanan sertifikat pengguna kartu pintar.
NCRYPT_VBS_ROOT_PUB_PROPERTY
L"VBS_ROOT_PUB"
Properti baru penyedia MS_KEY_STORAGE_PROVIDER . Properti ini memungkinkan pengambilan bagian publik dari Root Signing Key (IDKS) dari Virtualization Based Security (VBS).
NCRYPT_VERSION_PROPERTY
L"Version"
DWORD yang berisi versi perangkat lunak penyedia. Kata tinggi berisi versi utama dan kata rendah berisi versi minor. Contohnya, 0x00030033 = 3.51. Properti ini hanya berlaku untuk penyedia.
NCRYPT_WINDOW_HANDLE_PROPERTY
L"HWND Handle"
Penunjuk ke handel jendela (HWND) yang akan digunakan sebagai induk antarmuka pengguna apa pun yang ditampilkan.
Karena perilaku yang tidak diinginkan dapat terjadi ketika antarmuka pengguna ditampilkan dengan menggunakan handel jendela NULL untuk induk, kami sangat menyarankan agar penyedia penyimpanan kunci tidak menampilkan antarmuka pengguna kecuali properti ini diatur.
Nilai berikut digunakan untuk menentukan batas data properti.
| Konstanta | Nilai | Deskripsi |
|---|---|---|
| NCRYPT_MAX_PROPERTY_DATA | 0x100000 | Menentukan ukuran maksimum nilai properti, dalam byte. |
| NCRYPT_MAX_PROPERTY_NAME | 64 | Menentukan ukuran maksimum nama properti, dalam karakter. |
Persyaratan
| Persyaratan | Nilai |
|---|---|
| Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
| Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
| Kepala Halaman | Ncrypt.h |