Fungsi BCryptDeriveKeyPBKDF2 (bcrypt.h)

Fungsi BCryptDeriveKeyPBKDF2 memperoleh kunci dari nilai hash dengan menggunakan algoritma derivasi kunci PBKDF2 seperti yang didefinisikan oleh RFC 2898.

Sintaks

NTSTATUS BCryptDeriveKeyPBKDF2(
  [in]           BCRYPT_ALG_HANDLE hPrf,
  [in, optional] PUCHAR            pbPassword,
  [in]           ULONG             cbPassword,
  [in, optional] PUCHAR            pbSalt,
  [in]           ULONG             cbSalt,
  [in]           ULONGLONG         cIterations,
  [out]          PUCHAR            pbDerivedKey,
  [in]           ULONG             cbDerivedKey,
  [in]           ULONG             dwFlags
);

Parameter

[in] hPrf

Handel penyedia algoritma yang menyediakan fungsi pseudo-random. Ini harus menjadi penyedia algoritma yang melakukan komputasi Kode Autentikasi Pesan . Saat Anda menggunakan penyedia algoritma Microsoft default, algoritma hash apa pun yang dibuka dengan menggunakan bendera BCRYPT_ALG_HANDLE_HMAC_FLAG dapat digunakan.

Catatan Hanya algoritma yang mengimplementasikan properti BCRYPT_IS_KEYED_HASH yang dapat digunakan untuk mengisi parameter ini.
 

[in, optional] pbPassword

Penunjuk ke buffer yang berisi parameter kata sandi untuk algoritma turunan kunci PBKDF2.

Catatan Informasi rahasia apa pun yang digunakan dalam derivasi kunci harus diteruskan dalam buffer ini.

 

[in] cbPassword

Panjangnya, dalam byte, data dalam buffer yang diarahkan oleh parameter pbPassword .

[in, optional] pbSalt

Penunjuk ke buffer yang berisi argumen garam untuk algoritma derivasi kunci PBKDF2.

Catatan Informasi apa pun yang bukan rahasia dan yang digunakan dalam turunan kunci harus diteruskan dalam buffer ini.
 

[in] cbSalt

Panjangnya, dalam byte, dari argumen garam yang ditujukkan oleh parameter pbSalt .

[in] cIterations

Jumlah iterasi untuk algoritma derivasi kunci PBKDF2.

[out] pbDerivedKey

Penunjuk ke buffer yang menerima kunci turunan.

[in] cbDerivedKey

Panjangnya, dalam byte, dari kunci turunan yang dikembalikan dalam buffer yang ditunjukkan 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 hPrf tidak valid.
STATUS_INVALID_PARAMETER
Satu atau beberapa parameter tidak valid.
STATUS_NO_MEMORY
Terjadi kegagalan alokasi memori.

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