1*62c56f98SSadaf Ebrahimi/* BEGIN_HEADER */ 2*62c56f98SSadaf Ebrahimi#include "mbedtls/md5.h" 3*62c56f98SSadaf Ebrahimi#include "mbedtls/ripemd160.h" 4*62c56f98SSadaf Ebrahimi/* END_HEADER */ 5*62c56f98SSadaf Ebrahimi 6*62c56f98SSadaf Ebrahimi/* BEGIN_CASE depends_on:MBEDTLS_MD5_C */ 7*62c56f98SSadaf Ebrahimivoid md5_text(char *text_src_string, data_t *hash) 8*62c56f98SSadaf Ebrahimi{ 9*62c56f98SSadaf Ebrahimi int ret; 10*62c56f98SSadaf Ebrahimi unsigned char src_str[100]; 11*62c56f98SSadaf Ebrahimi unsigned char output[16]; 12*62c56f98SSadaf Ebrahimi 13*62c56f98SSadaf Ebrahimi memset(src_str, 0x00, sizeof(src_str)); 14*62c56f98SSadaf Ebrahimi memset(output, 0x00, sizeof(output)); 15*62c56f98SSadaf Ebrahimi 16*62c56f98SSadaf Ebrahimi strncpy((char *) src_str, text_src_string, sizeof(src_str) - 1); 17*62c56f98SSadaf Ebrahimi 18*62c56f98SSadaf Ebrahimi ret = mbedtls_md5(src_str, strlen((char *) src_str), output); 19*62c56f98SSadaf Ebrahimi TEST_ASSERT(ret == 0); 20*62c56f98SSadaf Ebrahimi 21*62c56f98SSadaf Ebrahimi TEST_ASSERT(mbedtls_test_hexcmp(output, hash->x, 22*62c56f98SSadaf Ebrahimi sizeof(output), hash->len) == 0); 23*62c56f98SSadaf Ebrahimi} 24*62c56f98SSadaf Ebrahimi/* END_CASE */ 25*62c56f98SSadaf Ebrahimi 26*62c56f98SSadaf Ebrahimi/* BEGIN_CASE depends_on:MBEDTLS_RIPEMD160_C */ 27*62c56f98SSadaf Ebrahimivoid ripemd160_text(char *text_src_string, data_t *hash) 28*62c56f98SSadaf Ebrahimi{ 29*62c56f98SSadaf Ebrahimi int ret; 30*62c56f98SSadaf Ebrahimi unsigned char src_str[100]; 31*62c56f98SSadaf Ebrahimi unsigned char output[20]; 32*62c56f98SSadaf Ebrahimi 33*62c56f98SSadaf Ebrahimi memset(src_str, 0x00, sizeof(src_str)); 34*62c56f98SSadaf Ebrahimi memset(output, 0x00, sizeof(output)); 35*62c56f98SSadaf Ebrahimi 36*62c56f98SSadaf Ebrahimi strncpy((char *) src_str, text_src_string, sizeof(src_str) - 1); 37*62c56f98SSadaf Ebrahimi 38*62c56f98SSadaf Ebrahimi ret = mbedtls_ripemd160(src_str, strlen((char *) src_str), output); 39*62c56f98SSadaf Ebrahimi TEST_ASSERT(ret == 0); 40*62c56f98SSadaf Ebrahimi 41*62c56f98SSadaf Ebrahimi TEST_ASSERT(mbedtls_test_hexcmp(output, hash->x, 42*62c56f98SSadaf Ebrahimi sizeof(output), hash->len) == 0); 43*62c56f98SSadaf Ebrahimi} 44*62c56f98SSadaf Ebrahimi/* END_CASE */ 45*62c56f98SSadaf Ebrahimi 46*62c56f98SSadaf Ebrahimi/* BEGIN_CASE depends_on:MBEDTLS_MD5_C:MBEDTLS_SELF_TEST */ 47*62c56f98SSadaf Ebrahimivoid md5_selftest() 48*62c56f98SSadaf Ebrahimi{ 49*62c56f98SSadaf Ebrahimi TEST_ASSERT(mbedtls_md5_self_test(1) == 0); 50*62c56f98SSadaf Ebrahimi} 51*62c56f98SSadaf Ebrahimi/* END_CASE */ 52*62c56f98SSadaf Ebrahimi 53*62c56f98SSadaf Ebrahimi/* BEGIN_CASE depends_on:MBEDTLS_RIPEMD160_C:MBEDTLS_SELF_TEST */ 54*62c56f98SSadaf Ebrahimivoid ripemd160_selftest() 55*62c56f98SSadaf Ebrahimi{ 56*62c56f98SSadaf Ebrahimi TEST_ASSERT(mbedtls_ripemd160_self_test(1) == 0); 57*62c56f98SSadaf Ebrahimi} 58*62c56f98SSadaf Ebrahimi/* END_CASE */ 59