PFND3DDDI_CRYPTOSESSIONKEYEXCHANGE função de retorno de chamada (d3dumddi.h)
A função CryptoSessionKeyExchange negocia uma chave de sessão.
Sintaxe
PFND3DDDI_CRYPTOSESSIONKEYEXCHANGE Pfnd3dddiCryptosessionkeyexchange;
HRESULT Pfnd3dddiCryptosessionkeyexchange(
HANDLE hDevice,
D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE *unnamedParam2
)
{...}
Parâmetros
hDevice
Um identificador para o dispositivo de exibição (contexto gráfico).
unnamedParam2
pData [in, out]
Um ponteiro para uma estrutura D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE que descreve uma chave de sessão usada para criptografia.
Retornar valor
CryptoSessionKeyExchange retorna um dos seguintes valores:
Código de retorno | Descrição |
---|---|
S_OK | A chave de sessão é trocada com êxito. |
E_OUTOFMEMORY | CryptoSessionKeyExchange não pôde alocar a memória necessária para que ela fosse concluída. |
Comentários
O driver só deve dar suporte a um único mecanismo de troca de chaves para cada tipo de criptografia. A Microsoft padroniza o tipo de troca de chaves D3DKEYEXCHANGE_RSAES_OAEP. No entanto, os fornecedores de hardware podem usar mecanismos proprietários de troca de chaves.
Para D3DKEYEXCHANGE_RSAES_OAEP, o membro pData da estrutura D3DDDIARG_CRYPTOSESSIONKEYEXCHANGE aponta para um buffer que contém a chave de sessão que um aplicativo anteriormente RSAES-OAEP criptografava com a chave pública do certificado de sessão de criptografia do driver. O tamanho real do buffer é de 256 bytes. Essa troca é idêntica à forma como a troca de chaves do OPM ( Output Protection Manager ) funciona, exceto que o buffer do OPM contém dados adicionais além da chave de sessão. O mesmo certificado usado para troca de chaves OPM pode ser usado para a troca de chaves D3DKEYEXCHANGE_RSAES_OAEP.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | O CryptoSessionKeyExchange tem suporte a partir do sistema operacional Windows 7. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | d3dumddi.h (inclua D3dumddi.h) |