88 lines
1.9 KiB
C
88 lines
1.9 KiB
C
/*!
|
|
\ingroup MD4
|
|
|
|
\brief This function initializes md4. This is automatically
|
|
called by wc_Md4Hash.
|
|
|
|
\return 0 Returned upon successfully initializing
|
|
|
|
\param md4 pointer to the md4 structure to use for encryption
|
|
|
|
_Example_
|
|
\code
|
|
md4 md4[1];
|
|
if ((ret = wc_InitMd4(md4)) != 0) {
|
|
WOLFSSL_MSG("wc_Initmd4 failed");
|
|
}
|
|
else {
|
|
wc_Md4Update(md4, data, len);
|
|
wc_Md4Final(md4, hash);
|
|
}
|
|
\endcode
|
|
|
|
\sa wc_Md4Hash
|
|
\sa wc_Md4Update
|
|
\sa wc_Md4Final
|
|
*/
|
|
WOLFSSL_API void wc_InitMd4(Md4*);
|
|
|
|
/*!
|
|
\ingroup MD4
|
|
|
|
\brief Can be called to continually hash the provided byte array
|
|
of length len.
|
|
|
|
\return 0 Returned upon successfully adding the data to the digest.
|
|
|
|
\param md4 pointer to the md4 structure to use for encryption
|
|
\param data the data to be hashed
|
|
\param len length of data to be hashed
|
|
|
|
_Example_
|
|
\code
|
|
md4 md4[1];
|
|
byte data[] = { }; // Data to be hashed
|
|
word32 len = sizeof(data);
|
|
|
|
if ((ret = wc_InitMd4(md4)) != 0) {
|
|
WOLFSSL_MSG("wc_Initmd4 failed");
|
|
}
|
|
else {
|
|
wc_Md4Update(md4, data, len);
|
|
wc_Md4Final(md4, hash);
|
|
}
|
|
\endcode
|
|
|
|
\sa wc_Md4Hash
|
|
\sa wc_Md4Final
|
|
\sa wc_InitMd4
|
|
*/
|
|
WOLFSSL_API void wc_Md4Update(Md4*, const byte*, word32);
|
|
|
|
/*!
|
|
\ingroup MD4
|
|
|
|
\brief Finalizes hashing of data. Result is placed into hash.
|
|
|
|
\return 0 Returned upon successfully finalizing.
|
|
|
|
\param md4 pointer to the md4 structure to use for encryption
|
|
\param hash Byte array to hold hash value.
|
|
|
|
_Example_
|
|
\code
|
|
md4 md4[1];
|
|
if ((ret = wc_InitMd4(md4)) != 0) {
|
|
WOLFSSL_MSG("wc_Initmd4 failed");
|
|
}
|
|
else {
|
|
wc_Md4Update(md4, data, len);
|
|
wc_Md4Final(md4, hash);
|
|
}
|
|
\endcode
|
|
|
|
\sa wc_Md4Hash
|
|
\sa wc_Md4Final
|
|
\sa wc_InitMd4
|
|
*/
|
|
WOLFSSL_API void wc_Md4Final(Md4*, byte*);
|