Fungsi SslGenerateMasterKey
Fungsi SslGenerateMasterKey menghitung kunci rahasia master protokol Secure Sockets Layer (SSL).
Sintaks
SECURITY_STATUS WINAPI SslGenerateMasterKey(
_In_ NCRYPT_PROV_HANDLE hSslProvider,
_In_ NCRYPT_KEY_HANDLE hPrivateKey,
_In_ NCRYPT_KEY_HANDLE hPublicKey,
_Out_ NCRYPT_KEY_HANDLE *phMasterKey,
_In_ DWORD dwProtocol,
_In_ DWORD dwCipherSuite,
_In_ PNCryptBufferDesc pParameterList,
_Out_ PBYTE pbOutput,
_In_ DWORD cbOutput,
_Out_ DWORD *pcbResult,
_In_ DWORD dwFlags
);
Parameter
-
hSslProvider [in]
-
Handel ke instans penyedia protokol SSL.
-
hPrivateKey [in]
-
Handel ke kunci privat yang digunakan dalam pertukaran.
-
hPublicKey [in]
-
Handel ke kunci publik yang digunakan dalam pertukaran.
-
phMasterKey [out]
-
Penunjuk ke handel ke kunci master yang dihasilkan.
-
dwProtocol [in]
-
Salah satu nilai Pengidentifikasi Protokol Penyedia SSL CNG .
-
dwCipherSuite [in]
-
Salah satu nilai Pengidentifikasi Cipher Suite Penyedia SSL CNG .
-
pParameterList [in]
-
Penunjuk ke array buffer NCryptBuffer yang berisi informasi yang digunakan sebagai bagian dari operasi pertukaran kunci. Set buffer yang tepat tergantung pada protokol dan cipher suite yang digunakan. Minimal, daftar akan berisi buffer yang berisi nilai acak yang disediakan klien dan server.
-
pbOutput [out]
-
Alamat buffer yang menerima rahasia premaster yang dienkripsi dengan kunci umum server. Parameter cbOutput berisi ukuran buffer ini. Jika parameter ini NULL, fungsi ini mengembalikan ukuran yang diperlukan, dalam byte, dalam DWORD yang ditunjukkan oleh parameter pcbResult .
Catatan
Buffer ini digunakan saat melakukan pertukaran kunci RSA.
-
cbOutput [in]
-
Ukuran, dalam byte, dari buffer pbOutput .
-
pcbResult [out]
-
Penunjuk ke nilai DWORD untuk menempatkan jumlah byte yang ditulis ke buffer pbOutput .
-
dwFlags [in]
-
Menentukan apakah fungsi ini digunakan untuk pertukaran kunci sisi klien atau sisi server.
Nilai Makna - NCRYPT_SSL_CLIENT_FLAG
- 0x00000001
Menentukan pertukaran kunci sisi klien. - NCRYPT_SSL_SERVER_FLAG
- 0x00000002
Menentukan pertukaran kunci sisi server.
Mengembalikan nilai
Jika fungsi berhasil, fungsi akan mengembalikan nol.
Jika fungsi gagal, fungsi mengembalikan nilai kesalahan bukan nol.
Kemungkinan kode pengembalian termasuk, tetapi tidak terbatas pada, berikut ini.
Mengembalikan kode/nilai | Deskripsi |
---|---|
|
Memori tidak cukup tersedia untuk mengalokasikan buffer yang diperlukan. |
|
Salah satu handel yang disediakan tidak valid. |
|
Parameter phMasterKey atau hPublicKey tidak valid. |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung |
Windows Server 2008 [hanya aplikasi desktop] |
Header |
|
DLL |
|