Fungsi BCryptExportKey (bcrypt.h)
Fungsi BCryptExportKey mengekspor kunci ke memori BLOB yang dapat dipertahankan untuk digunakan nanti.
Sintaksis
NTSTATUS BCryptExportKey(
[in] BCRYPT_KEY_HANDLE hKey,
[in] BCRYPT_KEY_HANDLE hExportKey,
[in] LPCWSTR pszBlobType,
[out] PUCHAR pbOutput,
[in] ULONG cbOutput,
[out] ULONG *pcbResult,
[in] ULONG dwFlags
);
Parameter
[in] hKey
Handel kunci yang akan diekspor.
[in] hExportKey
Handel kunci untuk membungkus kunci yang diekspor. Gunakan parameter ini saat mengekspor BLOB jenis BCRYPT_AES_WRAP_KEY_BLOB; jika tidak, atur ke null.
Windows Server 2008 dan Windows Vista: Parameter ini tidak digunakan dan harus diatur ke NULL.
[in] pszBlobType
String Unicode yang dihentikan null yang berisi pengidentifikasi yang menentukan jenis BLOB yang akan diekspor. Ini bisa menjadi salah satu nilai berikut.
Nilai | Arti |
---|---|
|
Ekspor kunci AES yang dibungkus kunci. Parameter hExportKey Windows Server 2008 dan Windows Vista: Tipe BLOB ini tidak didukung. |
|
Ekspor pasangan kunci publik/privat Diffie-Hellman . Buffer pbOutput |
|
Ekspor kunci umum Diffie-Hellman . Buffer pbOutput |
|
Ekspor pasangan kunci publik/privat DSA. Buffer pbOutput Windows 8: Dukungan untuk BCRYPT_DSA_KEY_BLOB_V2 dimulai. |
|
Mengekspor kunci publik DSA. Buffer pbOutput Windows 8: Dukungan untuk BCRYPT_DSA_KEY_BLOB_V2 dimulai. |
|
Ekspor kriptografi kurva elips (ECC) kunci privat. Buffer pbOutput |
|
Mengekspor kunci publik ECC. Buffer pbOutput |
|
Ekspor kunci konten ke BLOB data. Buffer pbOutput |
|
Ekspor kunci konten dalam format yang khusus untuk satu penyedia layanan kriptografi (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. |
|
Ekspor kunci umum generik dari jenis apa pun. Jenis kunci dalam BLOB ini ditentukan oleh Magic anggota struktur BCRYPT_KEY_BLOB. |
|
Ekspor kunci privat generik dari jenis apa pun. Kunci privat tidak selalu berisi kunci publik. Jenis kunci dalam BLOB ini ditentukan oleh Magic anggota struktur BCRYPT_KEY_BLOB. |
|
Ekspor pasangan kunci publik/privat RSA lengkap. Buffer pbOutput menerima struktur BCRYPT_RSAKEY_BLOB segera diikuti oleh data utama. BLOB ini akan mencakup materi kunci tambahan dibandingkan dengan jenis BCRYPT_RSAPRIVATE_BLOB. |
|
Ekspor pasangan kunci publik/privat RSA. Buffer pbOutput menerima struktur BCRYPT_RSAKEY_BLOB segera diikuti oleh data utama. |
|
Ekspor kunci publik RSA. Buffer pbOutput menerima struktur BCRYPT_RSAKEY_BLOB segera diikuti oleh data utama. |
|
Ekspor BLOB Kunci Privat |
|
Ekspor Diffie-Hellman blob Kunci Umum versi 3 warisan yang berisi kunci umum Diffie-Hellman yang dapat diimpor dengan menggunakan CryptoAPI. |
|
Ekspor pasangan kunci publik/privat DSA dalam formulir yang dapat diimpor dengan menggunakan CryptoAPI. |
|
Ekspor kunci publik DSA dalam formulir yang dapat diimpor dengan menggunakan CryptoAPI. |
|
Ekspor kunci privat DSA versi 2 dalam formulir yang dapat diimpor dengan menggunakan CryptoAPI. |
|
Ekspor pasangan kunci publik/privat RSA dalam formulir yang dapat diimpor dengan menggunakan CryptoAPI. |
|
Ekspor kunci publik RSA dalam formulir yang dapat diimpor dengan menggunakan CryptoAPI. |
[out] pbOutput
Alamat buffer yang menerima BLOB kunci. Parameter
[in] cbOutput
Berisi ukuran, dalam byte, dari pbOutput buffer.
[out] pcbResult
Pointer ke ULONG
[in] dwFlags
Sekumpulan bendera yang mengubah perilaku fungsi ini. Tidak ada bendera yang didefinisikan untuk fungsi ini.
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 yang ditentukan oleh parameter |
|
Handel kunci dalam parameter |
|
Satu atau beberapa parameter tidak valid. |
|
Jenis BLOB yang ditentukan tidak didukung oleh penyedia. |
Komentar
Bergantung pada mode prosesor apa yang didukung penyedia, BCryptExportKey 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 |