Freigeben über


SslCreateEphemeralKey-Funktion

Die SslCreateEphemeralKey-Funktion erstellt einen kurzlebigen Schlüssel zur Verwendung während der Authentifizierung, die während des SSL-Handshakes ( Secure Sockets Layer Protocol ) erfolgt.

Syntax

SECURITY_STATUS WINAPI SslCreateEphemeralKey(
  _In_  NCRYPT_PROV_HANDLE hSslProvider,
  _Out_ NCRYPT_KEY_HANDLE  *phEphemeralKey,
  _In_  DWORD              dwProtocol,
  _In_  DWORD              dwCipherSuite,
  _In_  DWORD              dwKeyType,
  _In_  DWORD              dwKeyBitLen,
  _In_  PBYTE              pbParams,
  _In_  DWORD              cbParams,
  _In_  DWORD              dwFlags
);

Parameter

hSslProvider [in]

Das Handle des SSL-Protokollanbieters instance.

phEphemeralKey [out]

Das Handle des kurzlebigen Schlüssels.

dwProtocol [in]

Einer der Werte des CNG-SSL-Anbieterprotokollbezeichners .

dwCipherSuite [in]

Einer der CNG SSL Provider Cipher Suite Identifier-Werte .

dwKeyType [in]

Einer der Werte für den CNG-SSL-Anbieterschlüsseltypbezeichner . Legen Sie diesen Parameter für Schlüsseltypen, die keine Elliptic Curve Cryptography (ECC) sind, auf Null fest.

dwKeyBitLen [in]

Die Länge des Schlüssels in Bits.

pbParams [in]

Ein Zeiger auf einen Puffer, der Parameter für den zu erstellenden Schlüssel enthält. Wenn keine Diffie-Hellman-Verschlüsselungssammlung (kurzlebiger) Schlüsselaustauschalgorithmus (DHE) verwendet wird, legen Sie den Parameter pbParams auf NULL und den cbParams-Parameter auf Null fest.

cbParams [in]

Die Länge der Daten im pbParams-Puffer in Bytes.

dwFlags [in]

Dieser Parameter ist für die zukünftige Verwendung reserviert.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt sie null zurück.

Wenn die Funktion fehlschlägt, wird ein Fehlerwert ungleich null zurückgegeben.

Rückgabecode/-wert BESCHREIBUNG
NTE_NO_MEMORY
0x8009000EL
Es ist nicht genügend Arbeitsspeicher vorhanden, um den Puffer zuzuweisen.
NTE_INVALID_HANDLE
0x80090026L
Das hSslProvider-Handle ist ungültig.
NTE_INVALID_PARAMETER
0x80090027L
Einer der angegebenen Parameter ist ungültig.

Bemerkungen

Bei Verwendung einer DHE-Verschlüsselungssammlung übergibt die interne SSL-Implementierung die Serverparameter p und g an die SslCreateEphemeralKey-Funktion in den Parametern pbParams und cbParams .

Das Format der Daten im pbParams-Puffer entspricht dem Format, das beim Festlegen der eigenschaft BCRYPT_DH_PARAMETERS verwendet wurde, und es beginnt mit einer BCRYPT_DH_PARAMETER_HEADER-Struktur .

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2008 [nur Desktop-Apps]
Header
Sslprovider.h
DLL
Ncrypt.dll