Función CryptVerifyMessageHash (wincrypt.h)
La función CryptVerifyMessageHash comprueba el hash del contenido especificado.
Sintaxis
BOOL CryptVerifyMessageHash(
[in] PCRYPT_HASH_MESSAGE_PARA pHashPara,
[in] BYTE *pbHashedBlob,
[in] DWORD cbHashedBlob,
[out] BYTE *pbToBeHashed,
[in, out] DWORD *pcbToBeHashed,
[out, optional] BYTE *pbComputedHash,
[in, out, optional] DWORD *pcbComputedHash
);
Parámetros
[in] pHashPara
Puntero a una estructura de CRYPT_HASH_MESSAGE_PARA que contiene parámetros hash.
[in] pbHashedBlob
Puntero a un búfer que contiene contenido original y su hash.
[in] cbHashedBlob
Tamaño, en bytes, del búfer hash original.
[out] pbToBeHashed
Puntero a un búfer para recibir el contenido original que se ha hashizado.
Este parámetro puede ser NULL si el contenido original no es necesario para el procesamiento adicional o para establecer el tamaño del contenido original con fines de asignación de memoria. Para obtener más información, vea Recuperar datos de longitud desconocida.
[in, out] pcbToBeHashed
Puntero a un DWORD que especifica el tamaño, en bytes, del búfer pbToBeHashed . Cuando la función devuelve, esta variable contiene el tamaño, en bytes, del contenido original copiado en pbToBeHashed. El contenido original no se devolverá si este parámetro es NULL.
[out, optional] pbComputedHash
Puntero a un búfer para recibir el hash calculado. Este parámetro puede ser NULL si el hash creado no es necesario para el procesamiento adicional o para establecer el tamaño del contenido original con fines de asignación de memoria. Para obtener más información, vea Recuperar datos de longitud desconocida.
[in, out, optional] pcbComputedHash
Puntero a un DWORD que especifica el tamaño, en bytes, del búfer pbComputedHash . Cuando la función devuelve, esta variable contiene el tamaño, en bytes, del hash creado. El hash no se devuelve si este parámetro es NULL.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es distinto de cero (TRUE).
Si se produce un error en la función, el valor devuelto es cero (FALSE).
Para obtener información de error extendida, llame a GetLastError.
A continuación se enumeran los códigos de error devueltos por la función GetLastError .
Código devuelto | Descripción |
---|---|
|
No es un mensaje criptográfico con hash. |
|
El tipo de codificación del mensaje no es válido. Actualmente solo se admite PKCS_7_ASN_ENCODING. El cbSize en *pHashPara no es válido. |
|
Si el búfer especificado por el parámetro pbToBeHashed no es lo suficientemente grande como para contener los datos devueltos, la función establece el código de ERROR_MORE_DATA y almacena el tamaño de búfer necesario, en bytes, en la variable a la que apunta pcbToBeHashed. |
Si se produce un error en la función, GetLastError puede devolver un error de codificación y descodificación de sintaxis abstracta Uno (ASN.1). Para obtener información sobre estos errores, vea Valores devueltos de codificación/descodificación de ASN.1.
Requisitos
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wincrypt.h |
Library | Crypt32.lib |
Archivo DLL | Crypt32.dll |