SslGetCipherSuitePRFHashAlgorithm function

The SslGetCipherSuitePRFHashAlgorithm function returns the Cryptography API: Next Generation (CNG) Algorithm Identifier of the hashing algorithm that is used for the Transport Layer Security protocol (TLS) pseudo-random function (PRF) for the input protocol, cipher suite, and key type.

Syntax


SECURITY_STATUS WINAPI SslGetCipherSuitePRFHashAlgorithm(
  _In_   NCRYPT_PROV_HANDLE hSslProvider,
  _In_   DWORD dwProtocol,
  _In_   DWORD dwCipherSuite,
  _In_   DWORD dwKeyType,
  _Out_  WCHAR szPRFHash[NCRYPT_SSL_MAX_NAME_SIZE],
  _In_   DWORD dwFlags
);

Parameters

hSslProvider [in]

The handle of the Secure Sockets Layer protocol (SSL) protocol provider instance.

dwProtocol [in]

One of the CNG SSL Provider Protocol Identifier values.

dwCipherSuite [in]

One of the CNG SSL Provider Cipher Suite Identifier values.

dwKeyType [in]

One of the CNG SSL Provider Key Type Identifier values. For key types that are not elliptic curve cryptography (ECC), set this parameter to zero.

szPRFHash [out]

One of the CNG Algorithm Identifiers for the hash that will be used for the TLS PRF.

dwFlags [in]

This parameter is reserved for future use and must be set to zero.

Return value

If the function succeeds, it returns zero.

If the function fails, it returns a nonzero error value.

Possible return codes include, but are not limited to, the following.

Return code/valueDescription
NTE_INVALID_HANDLE
0x80090026L

The hSslProvider parameter contains a pointer that is not valid.

NTE_INVALID_PARAMETER
0x80090027L

The szPRFHash parameter is set to NULL.

NTE_NOT_SUPPORTED
0x80090029L

The selected function is not supported in the specified version of the interface.

NTE_BAD_FLAGS
0x80090009L

The dwFlags parameter must be set to zero.

 

Remarks

This SslGetCipherSuitePRFHashAlgorithm function is called for TLS 1.2 or later conversations to query the hashing algorithm that will be used in the TLS PRF.

Requirements

Minimum supported client

Windows 7 [desktop apps only]

Minimum supported server

Windows Server 2008 R2 [desktop apps only]

Header

Sslprovider.h

DLL

Ncrypt.dll

 

 

Community Additions

ADD
Show:
© 2014 Microsoft