Bagikan melalui


Fungsi BCryptDeriveKeyCapi (bcrypt.h)

Fungsi BCryptDeriveKeyCapi memperoleh kunci dari nilai hash.

Fungsi ini disediakan sebagai fungsi pembantu untuk membantu memigrasikan aplikasi berbasis Cryptography API (CAPI) warisan untuk menggunakan Cryptography API: Next Generation (CNG). Fungsi BCryptDeriveKeyCapi melakukan derivasi kunci dengan cara yang kompatibel dengan fungsi CAPI CryptDeriveKey .

Sintaks

NTSTATUS BCryptDeriveKeyCapi(
  [in]           BCRYPT_HASH_HANDLE hHash,
  [in, optional] BCRYPT_ALG_HANDLE  hTargetAlg,
  [out]          PUCHAR             pbDerivedKey,
  [in]           ULONG              cbDerivedKey,
  [in]           ULONG              dwFlags
);

Parameter

[in] hHash

Handel objek hash. Handel diperoleh dengan memanggil fungsi BCryptCreateHash . Setelah selesai menggunakan handel, Anda harus membebaskannya dengan memanggil fungsi BCryptDestroyHash .

[in, optional] hTargetAlg

Handel objek algoritma. Ini bisa menjadi nilai ALG_ID yang kompatibel dengan fungsi CryptDeriveKey .

Catatan Batasan dalam CAPI dan perluasan kunci mencegah penggunaan algoritma hash apa pun yang menghasilkan output yang lebih besar dari 512 bit.
 

[out] pbDerivedKey

Penunjuk ke buffer yang menerima kunci turunan.

[in] cbDerivedKey

Ukuran, dalam karakter, dari kunci turunan yang ditujukkan oleh parameter pbDerivedKey .

[in] dwFlags

Parameter ini dicadangkan dan harus diatur ke nol.

Nilai kembali

Mengembalikan kode status yang menunjukkan keberhasilan atau kegagalan fungsi.

Kemungkinan kode pengembalian termasuk, tetapi tidak terbatas pada, berikut ini.

Menampilkan kode Deskripsi
STATUS_SUCCESS
Fungsi berhasil.
STATUS_INVALID_HANDLE
Handel dalam parameter hHash atau hTargetAlg tidak valid.
STATUS_INVALID_PARAMETER
Nilai dalam parameter cbDerivedKey lebih besar dari dua kali ukuran output fungsi hash.
STATUS_NO_MEMORY
Terjadi kegagalan alokasi memori.

Keterangan

Fungsi ini tidak mendukung fungsionalitas garam PK dari fungsi CAPI CryptDeriveKey .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header bcrypt.h
Pustaka Bcrypt.lib
DLL Bcrypt.dll