Fungsi BCryptFinishHash (bcrypt.h)
Fungsi BCryptFinishHash mengambil nilai hash atau Kode Autentikasi Pesan (MAC) untuk data yang terakumulasi dari panggilan sebelumnya ke BCryptHashData.
Sintaks
NTSTATUS BCryptFinishHash(
[in, out] BCRYPT_HASH_HANDLE hHash,
[out] PUCHAR pbOutput,
[in] ULONG cbOutput,
[in] ULONG dwFlags
);
Parameter
[in, out] hHash
Handel objek hash atau MAC yang akan digunakan untuk menghitung hash atau MAC. Handel ini diperoleh dengan memanggil fungsi BCryptCreateHash . Setelah fungsi ini dipanggil, handel hash yang diteruskan ke fungsi ini tidak dapat digunakan lagi kecuali dalam panggilan ke BCryptDestroyHash.
[out] pbOutput
Penunjuk ke buffer yang menerima nilai hash atau MAC. Parameter cbOutput berisi ukuran buffer ini.
[in] cbOutput
Ukuran, dalam byte, dari buffer pbOutput . Ukuran ini harus sama persis dengan ukuran nilai hash atau MAC.
Ukurannya dapat diperoleh dengan memanggil fungsi BCryptGetProperty untuk mendapatkan properti BCRYPT_HASH_LENGTH . Ini akan memberikan ukuran nilai hash atau MAC untuk algoritma yang ditentukan.
[in] dwFlags
Sekumpulan bendera yang mengubah perilaku fungsi ini. Tidak ada bendera yang saat ini ditentukan, jadi parameter ini harus 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 |
---|---|
|
Fungsi berhasil. |
|
Handel hash dalam parameter hHash tidak valid. Setelah fungsi BCryptFinishHash dipanggil untuk handel hash, handel tersebut tidak dapat digunakan kembali. |
|
Satu atau beberapa parameter tidak valid. Ini termasuk kasus di mana cbOutput tidak berukuran sama dengan hash. |
Keterangan
Tergantung pada mode prosesor apa yang didukung penyedia, BCryptFinishHash dapat dipanggil baik dari mode pengguna atau mode kernel. Pemanggil mode kernel dapat mengeksekusi baik di PASSIVE_LEVEL IRQL atau DISPATCH_LEVEL IRQL. Jika tingkat IRQL saat ini DISPATCH_LEVEL, handel yang disediakan dalam parameter hHash harus berasal dari handel algoritma yang dikembalikan oleh penyedia yang dibuka dengan menggunakan bendera BCRYPT_PROV_DISPATCH , dan setiap penunjuk yang diteruskan ke fungsi BCryptFinishHash harus mengacu pada memori yang tidak di-patahkan (atau dikunci).
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
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2008 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | bcrypt.h |
Pustaka | Bcrypt.lib |
DLL | Bcrypt.dll |