Bagikan melalui


Fungsi NCryptSecretAgreement (ncrypt.h)

Fungsi NCryptSecretAgreement membuat nilai perjanjian rahasia dari privat dan kunci publik.

Sintaks

SECURITY_STATUS NCryptSecretAgreement(
  [in]  NCRYPT_KEY_HANDLE    hPrivKey,
  [in]  NCRYPT_KEY_HANDLE    hPubKey,
  [out] NCRYPT_SECRET_HANDLE *phAgreedSecret,
  [in]  DWORD                dwFlags
);

Parameter

[in] hPrivKey

Handel kunci privat yang digunakan untuk membuat nilai perjanjian rahasia. Kunci ini dan kunci hPubKey harus berasal dari penyedia penyimpanan kunci yang sama.

[in] hPubKey

Handel kunci publik yang digunakan untuk membuat nilai perjanjian rahasia. Kunci ini dan kunci hPrivKey harus berasal dari penyedia penyimpanan kunci yang sama.

[out] phAgreedSecret

Penunjuk ke variabel NCRYPT_SECRET_HANDLE yang menerima handel yang mewakili nilai perjanjian rahasia. Ketika handel ini tidak lagi diperlukan, lepaskan dengan meneruskannya ke fungsi NCryptFreeObject .

[in] dwFlags

Bendera yang mengubah perilaku fungsi. Ini bisa nol atau kombinasi dari satu atau beberapa nilai berikut. Kumpulan bendera yang valid khusus untuk setiap penyedia penyimpanan utama. Bendera berikut berlaku untuk semua penyedia.

Nilai Makna
NCRYPT_SILENT_FLAG
Meminta agar penyedia layanan utama (KSP) tidak menampilkan antarmuka pengguna apa pun. Jika penyedia harus menampilkan UI untuk beroperasi, panggilan gagal dan KSP harus mengatur kode kesalahan NTE_SILENT_CONTEXT sebagai kesalahan terakhir.

Nilai kembali

Mengembalikan kode status yang menunjukkan keberhasilan atau kegagalan fungsi.

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

Menampilkan kode Deskripsi
ERROR_SUCCESS
Fungsi berhasil.
NTE_INVALID_HANDLE
Parameter hPrivKey atau hPubKey tidak valid.
NTE_INVALID_PARAMETER
Satu atau beberapa parameter tidak valid.
NTE_NO_MEMORY
Terjadi kegagalan alokasi memori.

Keterangan

Layanan tidak boleh memanggil fungsi ini dari Fungsi StartService-nya. Jika layanan memanggil fungsi ini dari fungsi StartService-nya, kebuntuan dapat terjadi, dan layanan mungkin berhenti merespons.

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 ncrypt.h
Pustaka Ncrypt.lib
DLL Ncrypt.dll

Lihat juga

NCryptFreeObject