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> 72 #ifdef WOLFSSL_TI_HASH 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) 108 WOLFSSL_API
int wc_InitMd5_ex(
wc_Md5*,
void*,
int);
116 #ifdef WOLFSSL_PIC32MZ_HASH 117 WOLFSSL_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);
Definition: pic32mz-crypt.h:115
WOLFSSL_API int wc_InitMd5(wc_Md5 *)
This function initializes md5. This is automatically called by wc_Md5Hash.
Definition: md5.c:495
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
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 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_Md5Update(wc_Md5 *, const byte *, word32)
Can be called to continually hash the provided byte array of length len.
Definition: md5.c:335