Função NCryptProtectSecret (ncryptprotect.h)
A função NCryptProtectSecret criptografa dados para um descritor de proteção especificado. Chame NCryptUnprotectSecret para descriptografar os dados.
Sintaxe
SECURITY_STATUS NCryptProtectSecret(
[in] NCRYPT_DESCRIPTOR_HANDLE hDescriptor,
[in] DWORD dwFlags,
[in] const BYTE *pbData,
[in] ULONG cbData,
[in, optional] const NCRYPT_ALLOC_PARA *pMemPara,
[in, optional] HWND hWnd,
[out] BYTE **ppbProtectedBlob,
[out] ULONG *pcbProtectedBlob
);
Parâmetros
[in] hDescriptor
Identificador do objeto descritor de proteção. Crie o identificador chamando NCryptCreateProtectionDescriptor.
[in] dwFlags
O sinalizador pode ser zero ou o valor a seguir.
Valor | Significado |
---|---|
|
Solicita que o provedor de serviços de chave não exiba uma interface do usuário. |
[in] pbData
Ponteiro para a matriz de bytes a ser protegida.
[in] cbData
Número de bytes na matriz binária especificada pelo parâmetro pbData .
[in, optional] pMemPara
Ponteiro para uma estrutura NCRYPT_ALLOC_PARA que você pode usar para especificar funções de gerenciamento de memória personalizadas. Se você definir esse argumento como NULL, a função LocalAlloc será usada internamente para alocar memória e seu aplicativo deverá chamar LocalFree para liberar a memória apontada pelo parâmetro ppbProtectedBlob .
[in, optional] hWnd
Manipule para a janela pai da interface do usuário, se houver, a ser exibida.
[out] ppbProtectedBlob
Endereço de uma variável que recebe um ponteiro para os dados criptografados.
[out] pcbProtectedBlob
Ponteiro para uma variável ULONG que contém o tamanho, em bytes, dos dados criptografados apontados pela variável ppbProtectedBlob .
Retornar valor
Retorna um código status que indica o êxito ou a falha da função. Os códigos de retorno possíveis incluem, mas não se limitam a, o seguinte.
Código de retorno | Descrição |
---|---|
|
A função foi bem-sucedida. |
|
Os parâmetros pbData, ppbProtectedBlob e pcbProtectedBlob não podem ser NULL.
O parâmetro cbData não pode ser menor que um. |
|
Há memória insuficiente para alocar a chave de criptografia de conteúdo. |
|
O identificador especificado pelo parâmetro hDescriptor não é válido. |
Comentários
Use a função NCryptProtectSecret para proteger chaves, material de chave e senhas. Use as funções NCryptStreamOpenToProtect e NCryptStreamUpdate para criptografar mensagens maiores.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2012 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | ncryptprotect.h |
Biblioteca | NCrypt.lib |
DLL | NCrypt.dll |