Fungsi BCryptImportKey (bcrypt.h)
Fungsi BCryptImportKey
Sintaksis
NTSTATUS BCryptImportKey(
[in] BCRYPT_ALG_HANDLE hAlgorithm,
[in, optional] BCRYPT_KEY_HANDLE hImportKey,
[in] LPCWSTR pszBlobType,
[out] BCRYPT_KEY_HANDLE *phKey,
[out, optional] PUCHAR pbKeyObject,
[in] ULONG cbKeyObject,
[in] PUCHAR pbInput,
[in] ULONG cbInput,
[in] ULONG dwFlags
);
Parameter
[in] hAlgorithm
Handel penyedia algoritma untuk mengimpor kunci. Handel ini diperoleh dengan memanggil fungsi
[in, optional] hImportKey
Handel kunci enkripsi kunci yang diperlukan untuk membongkar BLOB kunci dalam parameter pbInput
Windows Server 2008 dan Windows Vista: Parameter ini tidak digunakan dan harus diatur ke NULL.
[in] pszBlobType
String Unicode null-terminated yang berisi pengidentifikasi yang menentukan jenis BLOB yang terkandung dalam pbInput buffer. Ini bisa menjadi salah satu nilai berikut.
Nilai | Arti |
---|---|
|
Impor kunci konten dari BLOB kunci yang dibungkus kunci AES. Parameter Windows Server 2008 dan Windows Vista: Tipe BLOB ini tidak didukung. |
|
Impor kunci konten dari BLOB data. Parameter pbInput adalah penunjuk ke struktur BCRYPT_KEY_DATA_BLOB_HEADER yang segera diikuti oleh BLOB kunci. |
|
Impor BLOB kunci konten dalam format yang khusus untuk satu CSP. BLOB buram tidak dapat ditransfer dan harus diimpor dengan menggunakan CSP yang sama yang menghasilkan BLOB. BLOB buram hanya dimaksudkan untuk digunakan untuk transfer kunci antarproseksi dan tidak cocok untuk dipertahankan dan dibaca di seluruh versi penyedia. |
[out] phKey
Penunjuk ke BCRYPT_KEY_HANDLE yang menerima handel kunci yang diimpor. Handel ini digunakan dalam fungsi berikutnya yang memerlukan kunci, seperti BCryptEncrypt. Handel ini harus dirilis ketika tidak lagi diperlukan dengan meneruskannya ke fungsi BCryptDestroyKey
[out, optional] pbKeyObject
Penunjuk ke buffer yang menerima objek kunci yang diimpor. Parameter cbKeyObject
Memori ini hanya dapat dibebaskan setelah pegangan kunci phKey
[in] cbKeyObject
Ukurannya, dalam byte, dari pbKeyObject buffer.
[in] pbInput
Alamat buffer yang berisi BLOB kunci untuk diimpor. Parameter cbInput
[in] cbInput
Ukurannya, dalam byte, dari pbInput buffer.
[in] dwFlags
Sekumpulan bendera yang mengubah perilaku fungsi ini. Tidak ada bendera yang saat ini ditentukan, jadi parameter ini harus nol.
Mengembalikan nilai
Mengembalikan kode status yang menunjukkan keberhasilan atau kegagalan fungsi.
Kemungkinan kode pengembalian termasuk, tetapi tidak terbatas pada, berikut ini.
Mengembalikan kode | Deskripsi |
---|---|
|
Fungsi berhasil. |
|
Ukuran objek kunci yang ditentukan oleh parameter |
|
Handel algoritma dalam parameter hAlgoritma |
|
Satu atau beberapa parameter tidak valid. |
|
Penyedia algoritma yang ditentukan oleh parameter hAlgorithm |
Komentar
Tergantung pada mode prosesor apa yang didukung penyedia, BCryptImportKey dapat dipanggil baik dari mode pengguna atau mode kernel. Pemanggil mode kernel dapat menjalankan baik di PASSIVE_LEVELIRQL atau IRQL DISPATCH_LEVEL. Jika tingkat IRQL saat ini
Untuk memanggil fungsi ini dalam mode kernel, gunakan Cng.lib, yang merupakan bagian dari Driver Development Kit (DDK). Windows Server 2008 dan Windows Vista: Untuk memanggil fungsi ini dalam mode kernel, gunakan Ksecdd.lib.
Persyaratan
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows Vista [aplikasi desktop | Aplikasi UWP] |
server minimum yang didukung |
Windows Server 2008 [aplikasi desktop | Aplikasi UWP] |
Platform Target |
Windows |
Header |
bcrypt.h |
Pustaka |
Bcrypt.lib |
DLL |
Bcrypt.dll |