Partilhar via


Função SslExportKeyingMaterial

Exporta material de chave de acordo com o padrão RFC 5705. Essa função usa a função pseudorandom TLS para produzir um buffer de bytes de material de chave. Ele usa uma referência para o segredo master, o rótulo ASCII desambiguando, os valores aleatórios do cliente e do servidor e, opcionalmente, os dados de contexto do aplicativo.

Sintaxe

SECURITY_STATUS WINAPI SslExportKeyingMaterial(
  _In_     NCRYPT_PROV_HANDLE hSslProvider,
  _In_     NCRYPT_KEY_HANDLE  hMasterKey,
  _In_     PCHAR              sLabel,
  _In_     PBYTE              pbRandoms,
  _In_     DWORD              cbRandoms,
  _In_opt_ PBYTE              pbContextValue,
  _In_     WORD               cbContextValue,
  _Out_    PBYTE              pbOutput,
  _In_     DWORD              cbOutput,
  _In_     DWORD              dwFlags
);

Parâmetros

hSslProvider [in]

O identificador da instância do provedor de protocolo TLS.

hMasterKey [in]

O identificador do objeto de chave master que será usado para criar o material de chave para br exportado.

sLabel [in]

uma cadeia de caracteres de rótulo ASCII terminada em NUL. O Schannel removerá o caractere NUL de terminação antes de passá-lo para a função pseudorandom.

pbRandoms [in]

Um ponteiro para um buffer que contém uma concatenação dos valores client_random e server_random da conexão TLS.

cbRandoms [in]

O comprimento, em bytes, do buffer pbRandoms .

pbContextValue [in, opcional]

Um ponteiro para um buffer que contém o contexto do aplicativo. Se pbContextValue for NULL, cbContextValue deverá ser zero.

cbContextValue [in]

O comprimento, em bytes, do buffer pbContextValue .

pbOutput [out]

O endereço de um buffer que recebe o material de chave exportado. O parâmetro cbOutput contém o tamanho desse buffer. Esse valor não pode ser NULL.

cbOutput [in]

O comprimento, em bytes, do buffer pbOutput . Deve ser maior que zero.

dwFlags [in]

Não usado. Deve ser definido como zero.

Valor retornado

Se a função for bem-sucedida, ela retornará zero.

Se a função falhar, ela retornará um valor de erro diferente de zero.

Os códigos de retorno possíveis incluem, mas não se limitam a, o seguinte.

Retornar código/valor Descrição
NTE_INVALID_HANDLE
0x80090026L
Um dos identificadores fornecidos não é válido.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 10 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2016 [somente aplicativos da área de trabalho]
Cabeçalho
Sslprovider.h
DLL
Ncrypt.dll