HashMessage
Computes the digest value of an input message.
Syntax
IppStatus ippsHashMessage(const Ipp8u *pMsg, int len, Ipp8u *pMD, IppHashAlgId hashAlg);
IppStatus ippsHashMessage_rmf(const Ipp8u *pMsg, int msgLen, Ipp8u *pHash, const ippsHashMethod *pMethod);
Include Files
ippcp.h
Parameters
pMsg |
Pointer to the input message. |
len, msgLen |
Message length in octets. |
pMD, pHash |
Pointer to the resultant digest. |
hashAlg |
Identifier of the hash algorithm. |
pMethod |
Pointer to the hash method. |
Description
Note
ippsHashMessage API is deprecated. Please refer to Deprecated Functions section for the recommendations for transition.
The function uses the selected hash algorithm to compute the digest value of the entire (non-streaming) input message. The hashAlg and pMethod parameters define the hash algorithm used. The hashAlg parameter can take one of the values listed in table Supported Hash Algorithms. To get a value for the pMethod parameter, call one of the HashMethod functions.
Note
This function has a reduced memory footprint version. To learn more, see Reduced Memory Footprint Functions.
Return Values
ippStsNoErr |
Indicates no error. Any other value indicates an error or warning. |
ippStsNullPtrErr |
Indicates an error condition if any of the specified pointers is NULL. |
ippStsLengthErr |
Indicates an error condition if the length of the input data stream is less than zero. |
ippStsNotSupportedModeErr |
Indicates an error condition if the hashAlg parameter does not match any value of IppHashAlg listed in table Supported Hash Algorithms. |
Example
The code below computes MD5 digest of a message.
void MD5_sample(void)
{
// define message
Ipp8u msg[] = "abcdefghijklmnopqrstuvwxyz";
// once the whole message is placed into memory,
// you can use the integrated primitive
Ipp8u digest[16];
ippsHashMessage(msg, strlen((char*)msg), digest, IPP_ALG_HASH_MD5);
}