Bagikan melalui


Fungsi BCryptGetProperty (bcrypt.h)

Fungsi BCryptGetProperty mengambil nilai properti bernama untuk objek CNG.

Sintaksis

NTSTATUS BCryptGetProperty(
  [in]  BCRYPT_HANDLE hObject,
  [in]  LPCWSTR       pszProperty,
  [out] PUCHAR        pbOutput,
  [in]  ULONG         cbOutput,
  [out] ULONG         *pcbResult,
  [in]  ULONG         dwFlags
);

Parameter-parameternya

[in] hObject

Handel yang mewakili objek CNG untuk mendapatkan nilai properti.

[in] pszProperty

Penunjuk ke string Unicode yang dihentikan null yang berisi nama properti yang akan diambil. Ini bisa menjadi salah satu Pengidentifikasi Properti Primitif Kriptografi yang telah ditentukan sebelumnya atau pengidentifikasi properti kustom.

[out] pbOutput

Alamat buffer yang menerima nilai properti. Parameter cbOutput berisi ukuran buffer ini.

[in] cbOutput

Ukurannya, dalam byte, dari buffer pbOutput .

[out] pcbResult

Penunjuk ke variabel ULONG yang menerima jumlah byte yang disalin ke buffer pbOutput . Jika parameter pbOutput adalah NULL, fungsi ini akan menempatkan ukuran yang diperlukan, dalam byte, di lokasi yang ditunjukkan oleh parameter ini.

[in] dwFlags

Sekumpulan bendera yang mengubah perilaku fungsi ini. Tidak ada bendera yang didefinisikan untuk fungsi ini.

Parameter ini harus diatur ke nol untuk ML-KEM.

Mengembalikan nilai

Mengembalikan kode status yang menunjukkan keberhasilan atau kegagalan fungsi.

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

Mengembalikan kode Deskripsi
STATUS_SUCCESS Fungsi berhasil.
STATUS_BUFFER_TOO_SMALL Ukuran buffer yang ditentukan oleh parameter cbOutput tidak cukup besar untuk menahan nilai properti.
STATUS_INVALID_HANDLE Handel dalam parameter hObject tidak valid.
STATUS_INVALID_PARAMETER Satu atau beberapa parameter tidak valid.
STATUS_NOT_SUPPORTED Properti yang ditentukan oleh parameter pszProperty tidak didukung.

Komentar

Untuk mendapatkan ukuran yang diperlukan untuk properti, berikan NULL parameter pbOutput . Fungsi ini akan menempatkan ukuran yang diperlukan, dalam byte, dalam nilai yang diarahkan oleh parameter pcbResult .

Bergantung pada mode prosesor apa yang didukung penyedia, BCryptGetProperty 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 DISPATCH_LEVEL, setiap pointer yang diteruskan ke fungsi BCryptGetProperty harus merujuk ke memori yang tidak dipagasi (atau dikunci). Jika objek yang ditentukan dalam parameter hObject adalah handel, objek tersebut harus dibuka dengan menggunakan bendera BCRYPT_PROV_DISPATCH .

Properti BCRYPT_PARAMETER_SET_NAME harus diatur pada kunci ML-DSA BCrypt sebelum dapat digunakan. Data tersebut dapat diambil dari objek kunci.

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]
Platform Target Windows
Header bcrypt.h
Perpustakaan Bcrypt.lib
DLL Bcrypt.dll