Función BCryptHash (bcrypt.h)

Realiza un cálculo hash único. Esta es una función de conveniencia que encapsula las llamadas a BCryptCreateHash, BCryptHashData, BCryptFinishHash y BCryptDestroyHash.

Sintaxis

NTSTATUS BCryptHash(
  BCRYPT_ALG_HANDLE hAlgorithm,
  PUCHAR            pbSecret,
  ULONG             cbSecret,
  PUCHAR            pbInput,
  ULONG             cbInput,
  PUCHAR            pbOutput,
  ULONG             cbOutput
);

Parámetros

hAlgorithm

Identificador de un proveedor de algoritmos creado mediante la función BCryptOpenAlgorithmProvider . El algoritmo que se especificó cuando se creó el proveedor debe admitir la interfaz hash.

pbSecret

Puntero a un búfer que contiene la clave que se va a usar para el hash o MAC. El parámetro cbSecret contiene el tamaño de este búfer. Esta clave solo se aplica a los algoritmos hash abiertos por la función BCryptOpenAlgorithmProvider mediante la marca BCRYPT_ALG_HANDLE_HMAC . De lo contrario, establezca este parámetro en NULL.

cbSecret

Tamaño, en bytes, del búfer pbSecret . Si no se usa ninguna clave, establezca este parámetro en cero.

pbInput

Puntero a un búfer que contiene los datos que se van a procesar. El parámetro cbInput contiene el número de bytes de este búfer. Esta función no modifica el contenido de este búfer.

cbInput

Número de bytes en el búfer pbInput .

pbOutput

Puntero a un búfer que recibe el valor hash o MAC. El parámetro cbOutput contiene el tamaño de este búfer.

cbOutput

Tamaño, en bytes, del búfer pbOutput . Este tamaño debe coincidir exactamente con el tamaño del valor hash o MAC.

El tamaño se puede obtener llamando a la función BCryptGetProperty para obtener la propiedad BCRYPT_HASH_LENGTH . Esto proporcionará el tamaño del valor hash o MAC para el algoritmo especificado.

Valor devuelto

Código de estado que indica éxito o error.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10 [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2016 [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado bcrypt.h
Library Bcrypt.lib
Archivo DLL Bcrypt.dll