Função BCryptHashData (bcrypt.h)
A função BCryptHashData executa um hash unidirecional ou MAC (Código de Autenticação de Mensagem ) em um buffer de dados.
Sintaxe
NTSTATUS BCryptHashData(
[in, out] BCRYPT_HASH_HANDLE hHash,
[in] PUCHAR pbInput,
[in] ULONG cbInput,
[in] ULONG dwFlags
);
Parâmetros
[in, out] hHash
O identificador do objeto hash ou MAC a ser usado para executar a operação. Esse identificador é obtido chamando a função BCryptCreateHash .
[in] pbInput
Um ponteiro para um buffer que contém os dados a serem processados. O parâmetro cbInput contém o número de bytes nesse buffer. Essa função não modifica o conteúdo desse buffer.
[in] cbInput
O número de bytes no buffer pbInput .
[in] dwFlags
Um conjunto de sinalizadores que modificam o comportamento dessa função. Nenhum sinalizador está definido no momento, portanto, esse parâmetro deve ser zero.
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. |
|
Um ou mais dos parâmetros não são válidos. |
|
O identificador de hash no parâmetro hHash não é válido. Depois que a função BCryptFinishHash tiver sido chamada para um identificador de hash, esse identificador não poderá ser reutilizado. |
Comentários
Para combinar mais de um buffer no hash ou MAC, você pode chamar essa função várias vezes, passando um buffer diferente a cada vez. Para obter o valor hash ou MAC, chame a função BCryptFinishHash . Depois que a função BCryptFinishHash tiver sido chamada para um identificador especificado, esse identificador não poderá ser reutilizado.
Dependendo de quais modos de processador um provedor dá suporte, BCryptHashData pode ser chamado do modo de usuário ou do modo kernel. Os chamadores do modo kernel podem ser executados em PASSIVE_LEVELIRQL ou DISPATCH_LEVEL IRQL. Se o nível IRQL atual for DISPATCH_LEVEL, o identificador fornecido no parâmetro hHash deverá ser derivado de um identificador de algoritmo retornado por um provedor que foi aberto usando o sinalizador BCRYPT_PROV_DISPATCH e todos os ponteiros passados para a função BCryptHashData devem se referir à memória não paga (ou bloqueada).
Para chamar essa função no modo kernel, use Cng.lib, que faz parte do DDK (Driver Development Kit). Windows Server 2008 e Windows Vista: Para chamar essa função no modo kernel, use Ksecdd.lib.
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 | bcrypt.h |
Biblioteca | Bcrypt.lib |
DLL | Bcrypt.dll |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de