Función BCryptHashData (bcrypt.h)
La función BCryptHashData realiza un hash unidireccional o un código de autenticación de mensajes (MAC) en un búfer de datos.
Sintaxis
NTSTATUS BCryptHashData(
[in, out] BCRYPT_HASH_HANDLE hHash,
[in] PUCHAR pbInput,
[in] ULONG cbInput,
[in] ULONG dwFlags
);
Parámetros
[in, out] hHash
Identificador del objeto hash o MAC que se va a usar para realizar la operación. Este identificador se obtiene mediante una llamada a la función BCryptCreateHash .
[in] 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.
[in] cbInput
Número de bytes en el búfer pbInput .
[in] dwFlags
Conjunto de marcas que modifican el comportamiento de esta función. Actualmente no hay marcas definidas, por lo que este parámetro debe ser cero.
Valor devuelto
Devuelve un código de estado que indica el éxito o error de la función.
Entre los códigos de retorno posibles se incluyen, entre otros, los siguientes.
Código devuelto | Descripción |
---|---|
|
La función se realizó correctamente. |
|
Uno o más parámetros no son válidos. |
|
El identificador hash del parámetro hHash no es válido. Después de llamar a la función BCryptFinishHash para un identificador hash, ese identificador no se puede reutilizar. |
Comentarios
Para combinar más de un búfer en el hash o MAC, puede llamar a esta función varias veces, pasando un búfer diferente cada vez. Para obtener el valor hash o MAC, llame a la función BCryptFinishHash . Después de llamar a la función BCryptFinishHash para un identificador especificado, ese identificador no se puede reutilizar.
En función de los modos de procesador que admita un proveedor, se puede llamar a BCryptHashData desde el modo de usuario o el modo kernel. Los autores de llamadas en modo kernel se pueden ejecutar en PASSIVE_LEVELIRQL o DISPATCH_LEVEL IRQL. Si el nivel irQL actual es DISPATCH_LEVEL, el identificador proporcionado en el parámetro hHash debe derivarse de un identificador de algoritmo devuelto por un proveedor que se abrió mediante la marca BCRYPT_PROV_DISPATCH y los punteros pasados a la función BCryptHashData deben hacer referencia a la memoria no paginada (o bloqueada).
Para llamar a esta función en modo kernel, use Cng.lib, que forma parte del Kit de desarrollo de controladores (DDK). Windows Server 2008 y Windows Vista: Para llamar a esta función en modo kernel, use Ksecdd.lib.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | bcrypt.h |
Library | Bcrypt.lib |
Archivo DLL | Bcrypt.dll |
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de