SslImportMasterKey-Funktion
Die SslImportMasterKey-Funktion führt einen serverseitigen SSL-Schlüsselaustauschvorgang ( Secure Sockets Layer Protocol ) aus.
Syntax
SECURITY_STATUS WINAPI SslImportMasterKey(
_In_ NCRYPT_PROV_HANDLE hSslProvider,
_In_ NCRYPT_KEY_HANDLE hPrivateKey,
_Out_ NCRYPT_KEY_HANDLE *phMasterKey,
_In_ DWORD dwProtocol,
_In_ DWORD dwCipherSuite,
_In_ PNCryptBufferDesc pParameterList,
_In_ PBYTE pbEncryptedKey,
_In_ DWORD cbEncryptedKey,
_In_ DWORD dwFlags
);
Parameter
-
hSslProvider [in]
-
Das Handle für den SSL-Protokollanbieter instance.
-
hPrivateKey [in]
-
Das Handle für den privaten Schlüssel , der im Austausch verwendet wird.
-
phMasterKey [out]
-
Ein Zeiger auf das Handle, um den master Schlüssel zu empfangen.
-
dwProtocol [in]
-
Einer der Werte des CNG-SSL-Anbieterprotokoll-Bezeichners .
-
dwCipherSuite [in]
-
Einer der Werte für CNG SSL Provider Cipher Suite Identifiers .
-
pParameterList [in]
-
Ein Zeiger auf ein Array von NCryptBuffer-Puffern , die Informationen enthalten, die im Rahmen des Schlüsselaustauschvorgangs verwendet werden. Der genaue Satz von Puffern hängt vom verwendeten Protokoll und der Verschlüsselungssuite ab. Mindestens enthält die Liste Puffer, die die vom Client und Server bereitgestellten Zufallswerte enthalten.
-
pbEncryptedKey [in]
-
Ein Zeiger auf einen Puffer, der den verschlüsselten geheimen Premasterschlüssel enthält, der mit dem öffentlichen Schlüssel des Servers verschlüsselt ist.
-
cbEncryptedKey [in]
-
Die Größe des Puffers pbEncryptedKey in Bytes.
-
dwFlags [in]
-
Legen Sie diesen Parameter auf NCRYPT_SSL_SERVER_FLAG fest, um anzugeben, dass es sich um einen Serveraufruf handelt.
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt sie null zurück.
Wenn die Funktion fehlschlägt, gibt sie einen fehlerfreien Wert zurück.
Mögliche Rückgabecodes umfassen folgendes, sind aber nicht darauf beschränkt.
Rückgabecode/-wert | BESCHREIBUNG |
---|---|
|
Für die Zuweisung der erforderlichen Puffer steht nicht genügend Arbeitsspeicher zur Verfügung. |
|
Eines der bereitgestellten Handles ist ungültig. |
|
Der parameter phMasterKey ist NULL. |
Bemerkungen
Diese Funktion entschlüsselt das Premastergeheimnis, berechnet das SSL-master Geheimnis und gibt ein Handle für dieses Objekt an den Aufrufer zurück. Dieser master Schlüssel kann dann verwendet werden, um den SSL-Sitzungsschlüssel abzuleiten und den SSL-Handshake abzuschließen.
Hinweis
Diese Funktion wird verwendet, wenn der RSA-Schlüsselaustauschalgorithmus verwendet wird. Wenn DH verwendet wird, ruft der Servercode stattdessen SslGenerateMasterKey auf .
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows Server 2008 [nur Desktop-Apps] |
Header |
|
DLL |
|