Função NCryptIsAlgSupported (ncrypt.h)

A função NCryptIsAlgSupported determina se um provedor de armazenamento de chaves CNG dá suporte a um algoritmo criptográfico específico.

Sintaxe

SECURITY_STATUS NCryptIsAlgSupported(
  [in] NCRYPT_PROV_HANDLE hProvider,
  [in] LPCWSTR            pszAlgId,
  [in] DWORD              dwFlags
);

Parâmetros

[in] hProvider

O identificador do provedor de armazenamento de chaves. Esse identificador é obtido com a função NCryptOpenStorageProvider .

[in] pszAlgId

Um ponteiro para uma cadeia de caracteres Unicode terminada em nulo que identifica o algoritmo criptográfico em questão. Esse pode ser um dos Identificadores de Algoritmo CNG padrão ou o identificador de outro algoritmo registrado.

[in] dwFlags

Sinalizadores que modificam o comportamento da função. Isso pode ser zero (0) ou o valor a seguir.

Valor Significado
NCRYPT_SILENT_FLAG
Solicita que o KSP (provedor de serviços de chave) não exiba nenhuma interface do usuário. Se o provedor precisar exibir a interface do usuário para operar, a chamada falhará e o KSP deverá definir o código de erro NTE_SILENT_CONTEXT como o último erro.

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
ERROR_SUCCESS
O provedor dá suporte ao algoritmo especificado.
NTE_BAD_FLAGS
O parâmetro dwFlags contém um ou mais sinalizadores que não têm suporte.
NTE_INVALID_HANDLE
O identificador especificado pelo parâmetro hProvider não é válido.
NTE_INVALID_PARAMETER
Um ou mais dos parâmetros não são válidos.
NTE_NOT_SUPPORTED
O provedor não dá suporte ao algoritmo especificado.

Comentários

Se o provedor der suporte ao algoritmo, essa função retornará ERROR_SUCCESS. Se o provedor não der suporte ao algoritmo e nenhum outro erro tiver ocorrido, essa função retornará NTE_NOT_SUPPORTED.

Um serviço não deve chamar essa função de sua Função StartService. Se um serviço chamar essa função de sua função StartService, um deadlock poderá ocorrer e o serviço poderá parar de responder.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho ncrypt.h
Biblioteca Ncrypt.lib
DLL Ncrypt.dll