Función SslCreateEphemeralKey

La función SslCreateEphemeralKey crea una clave efímera para su uso durante la autenticación que se produce durante el protocolo de enlace de capa de sockets seguros (SSL).

Sintaxis

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
);

Parámetros

hSslProvider [in]

Identificador de la instancia del proveedor de protocolo SSL.

phEphemeralKey [out]

Identificador de la clave efímera.

dwProtocol [in]

Uno de los valores del identificador de protocolo de proveedor SSL de CNG .

dwCipherSuite [in]

Uno de los valores del identificador del conjunto de cifrado del proveedor SSL de CNG .

dwKeyType [in]

Uno de los valores de identificador de tipo de clave de proveedor SSL de CNG . Establezca este parámetro en cero para los tipos de clave que no son criptografía de curva elíptica (ECC).

dwKeyBitLen [in]

Longitud, en bits, de la clave.

pbParams [in]

Puntero a un búfer que va a contener parámetros para la clave que se va a crear. Si no se usa un conjunto de cifrado de algoritmo de intercambio de claves (DHE) Diffie-Hellman (efímero ), establezca el parámetro pbParams en NULL y el parámetro cbParams en cero.

cbParams [in]

Longitud, en bytes, de los datos del búfer pbParams .

dwFlags [in]

Este parámetro se reserva para uso futuro.

Valor devuelto

Si la función se realiza correctamente, devuelve cero.

Si se produce un error en la función, devuelve un valor de error distinto de cero.

Código o valor devuelto Descripción
NTE_NO_MEMORY
0x8009000EL
No hay memoria suficiente para asignar el búfer.
NTE_INVALID_HANDLE
0x80090026L
El identificador hSslProvider no es válido.
NTE_INVALID_PARAMETER
0x80090027L
Uno de los parámetros proporcionados no es válido.

Comentarios

Cuando se usa un conjunto de cifrado DHE, la implementación ssl interna pasa los parámetros p y g del servidor a la función SslCreateEphemeralKey en los parámetros pbParams y cbParams .

El formato de los datos en el búfer pbParams es el mismo que el que se usa al establecer la propiedad BCRYPT_DH_PARAMETERS y comienza con una estructura BCRYPT_DH_PARAMETER_HEADER .

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado
Sslprovider.h
Archivo DLL
Ncrypt.dll