27#ifndef WOLF_CRYPT_MD5_H
28#define WOLF_CRYPT_MD5_H
35 #define wc_InitMd5 InitMd5
36 #define wc_Md5Update Md5Update
37 #define wc_Md5Final Md5Final
38 #define wc_Md5Hash Md5Hash
45#ifndef NO_OLD_WC_NAMES
48 #define MD5_BLOCK_SIZE WC_MD5_BLOCK_SIZE
49 #define MD5_DIGEST_SIZE WC_MD5_DIGEST_SIZE
50 #define WC_MD5_PAD_SIZE WC_MD5_PAD_SIZE
55 WC_MD5 = WC_HASH_TYPE_MD5,
56 WC_MD5_BLOCK_SIZE = 64,
57 WC_MD5_DIGEST_SIZE = 16,
62#ifdef WOLFSSL_MICROCHIP_PIC32MZ
63 #include <wolfssl/wolfcrypt/port/pic32/pic32mz-crypt.h>
66 #include <wolfssl/wolfcrypt/port/st/stm32.h>
68#ifdef WOLFSSL_ASYNC_CRYPT
69 #include <wolfssl/wolfcrypt/async.h>
73 #include "wolfssl/wolfcrypt/port/ti/ti-hash.h"
74#elif defined(WOLFSSL_IMX6_CAAM)
75 #include "wolfssl/wolfcrypt/port/caam/wolfcaam_sha.h"
86 word32 buffer[WC_MD5_BLOCK_SIZE /
sizeof(word32)];
87#ifdef WOLFSSL_PIC32MZ_HASH
88 word32 digest[PIC32_DIGEST_SIZE /
sizeof(word32)];
90 word32 digest[WC_MD5_DIGEST_SIZE /
sizeof(word32)];
93#ifdef WOLFSSL_PIC32MZ_HASH
97#ifdef WOLFSSL_ASYNC_CRYPT
98 WC_ASYNC_DEV asyncDev;
100#if defined(WOLFSSL_HASH_FLAGS) || defined(WOLF_CRYPTO_CB)
108WOLFSSL_API
int wc_InitMd5_ex(
wc_Md5*,
void*,
int);
116#ifdef WOLFSSL_PIC32MZ_HASH
117WOLFSSL_API
void wc_Md5SizeSet(
wc_Md5* md5, word32 len);
120#if defined(WOLFSSL_HASH_FLAGS) || defined(WOLF_CRYPTO_CB)
121 WOLFSSL_API
int wc_Md5SetFlags(
wc_Md5* md5, word32 flags);
122 WOLFSSL_API
int wc_Md5GetFlags(
wc_Md5* md5, word32* flags);
WOLFSSL_API int wc_InitMd5(wc_Md5 *)
This function initializes md5. This is automatically called by wc_Md5Hash.
Definition md5.c:495
WOLFSSL_API void wc_Md5Free(wc_Md5 *)
Resets the Md5 structure. Note: this is only supported if you have WOLFSSL_TI_HASH defined.
Definition md5.c:503
WOLFSSL_API int wc_Md5Final(wc_Md5 *, byte *)
Finalizes hashing of data. Result is placed into hash. Md5 Struct is reset. Note: This function will ...
Definition md5.c:436
WOLFSSL_API int wc_Md5Update(wc_Md5 *, const byte *, word32)
Can be called to continually hash the provided byte array of length len.
Definition md5.c:335
WOLFSSL_API int wc_Md5GetHash(wc_Md5 *, byte *)
Gets hash data. Result is placed into hash. Md5 struct is not reset.
Definition md5.c:516
Definition pic32mz-crypt.h:115