HashMessage
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
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.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 isNULL.
- ippStsLengthErr
- Indicates an error condition if the length of the input data stream is less than zero.
- ippStsNotSupportedModeErr
- Indicates an error condition if thehashAlgparameter does not match anyvalue of.IppHashAlglisted 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); }