1/* BEGIN_HEADER */ 2#include "mbedtls/md2.h" 3#include "mbedtls/md4.h" 4#include "mbedtls/md5.h" 5#include "mbedtls/ripemd160.h" 6/* END_HEADER */ 7 8/* BEGIN_CASE depends_on:MBEDTLS_MD2_C */ 9void md2_text( char *text_src_string, char *hex_hash_string ) 10{ 11 unsigned char src_str[100]; 12 unsigned char hash_str[33]; 13 unsigned char output[16]; 14 15 memset( src_str, 0x00, sizeof src_str ); 16 memset( hash_str, 0x00, sizeof hash_str ); 17 memset( output, 0x00, sizeof output ); 18 19 strncpy( (char *) src_str, text_src_string, sizeof(src_str) - 1 ); 20 21 mbedtls_md2( src_str, strlen( (char *) src_str ), output ); 22 hexify( hash_str, output, sizeof output ); 23 24 TEST_ASSERT( strcmp( (char *) hash_str, hex_hash_string ) == 0 ); 25} 26/* END_CASE */ 27 28/* BEGIN_CASE depends_on:MBEDTLS_MD4_C */ 29void md4_text( char *text_src_string, char *hex_hash_string ) 30{ 31 unsigned char src_str[100]; 32 unsigned char hash_str[33]; 33 unsigned char output[16]; 34 35 memset( src_str, 0x00, sizeof src_str ); 36 memset( hash_str, 0x00, sizeof hash_str ); 37 memset( output, 0x00, sizeof output ); 38 39 strncpy( (char *) src_str, text_src_string, sizeof(src_str) - 1 ); 40 41 mbedtls_md4( src_str, strlen( (char *) src_str ), output ); 42 hexify( hash_str, output, sizeof output ); 43 44 TEST_ASSERT( strcmp( (char *) hash_str, hex_hash_string ) == 0 ); 45} 46/* END_CASE */ 47 48/* BEGIN_CASE depends_on:MBEDTLS_MD5_C */ 49void md5_text( char *text_src_string, char *hex_hash_string ) 50{ 51 unsigned char src_str[100]; 52 unsigned char hash_str[33]; 53 unsigned char output[16]; 54 55 memset( src_str, 0x00, sizeof src_str ); 56 memset( hash_str, 0x00, sizeof hash_str ); 57 memset( output, 0x00, sizeof output ); 58 59 strncpy( (char *) src_str, text_src_string, sizeof(src_str) - 1 ); 60 61 mbedtls_md5( src_str, strlen( (char *) src_str ), output ); 62 hexify( hash_str, output, sizeof output ); 63 64 TEST_ASSERT( strcmp( (char *) hash_str, hex_hash_string ) == 0 ); 65} 66/* END_CASE */ 67 68/* BEGIN_CASE depends_on:MBEDTLS_RIPEMD160_C */ 69void ripemd160_text( char *text_src_string, char *hex_hash_string ) 70{ 71 unsigned char src_str[100]; 72 unsigned char hash_str[41]; 73 unsigned char output[20]; 74 75 memset(src_str, 0x00, sizeof src_str); 76 memset(hash_str, 0x00, sizeof hash_str); 77 memset(output, 0x00, sizeof output); 78 79 strncpy( (char *) src_str, text_src_string, sizeof(src_str) - 1 ); 80 81 mbedtls_ripemd160( src_str, strlen( (char *) src_str ), output ); 82 hexify( hash_str, output, sizeof output ); 83 84 TEST_ASSERT( strcmp( (char *) hash_str, hex_hash_string ) == 0 ); 85} 86/* END_CASE */ 87 88/* BEGIN_CASE depends_on:MBEDTLS_MD2_C:MBEDTLS_SELF_TEST */ 89void md2_selftest() 90{ 91 TEST_ASSERT( mbedtls_md2_self_test( 0 ) == 0 ); 92} 93/* END_CASE */ 94 95/* BEGIN_CASE depends_on:MBEDTLS_MD4_C:MBEDTLS_SELF_TEST */ 96void md4_selftest() 97{ 98 TEST_ASSERT( mbedtls_md4_self_test( 0 ) == 0 ); 99} 100/* END_CASE */ 101 102/* BEGIN_CASE depends_on:MBEDTLS_MD5_C:MBEDTLS_SELF_TEST */ 103void md5_selftest() 104{ 105 TEST_ASSERT( mbedtls_md5_self_test( 0 ) == 0 ); 106} 107/* END_CASE */ 108 109/* BEGIN_CASE depends_on:MBEDTLS_RIPEMD160_C:MBEDTLS_SELF_TEST */ 110void ripemd160_selftest() 111{ 112 TEST_ASSERT( mbedtls_ripemd160_self_test( 0 ) == 0 ); 113} 114/* END_CASE */ 115