blob: 02004efa84b8fb217065110868d5c0a07b9ccb46 [file] [log] [blame] [raw]
Paul Bakker33b43f12013-08-20 11:48:36 +02001/* BEGIN_HEADER */
Manuel Pégourié-Gonnard7f809972015-03-09 17:05:11 +00002#include "mbedtls/md2.h"
3#include "mbedtls/md4.h"
4#include "mbedtls/md5.h"
5#include "mbedtls/ripemd160.h"
Paul Bakker33b43f12013-08-20 11:48:36 +02006/* END_HEADER */
Paul Bakker367dae42009-06-28 21:50:27 +00007
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +02008/* BEGIN_CASE depends_on:MBEDTLS_MD2_C */
Azim Khan5fcca462018-06-29 11:05:32 +01009void md2_text( char * text_src_string, data_t * hex_hash_string )
Paul Bakker367dae42009-06-28 21:50:27 +000010{
Andres Amaya Garciab71b6302017-06-28 10:51:17 +010011 int ret;
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010012 unsigned char src_str[100];
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010013 unsigned char output[16];
Paul Bakker367dae42009-06-28 21:50:27 +000014
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010015 memset( src_str, 0x00, sizeof src_str );
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010016 memset( output, 0x00, sizeof output );
Paul Bakker367dae42009-06-28 21:50:27 +000017
Paul Bakkerdd0aae92014-04-17 16:06:37 +020018 strncpy( (char *) src_str, text_src_string, sizeof(src_str) - 1 );
Paul Bakker367dae42009-06-28 21:50:27 +000019
Gilles Peskine9e4f77c2018-01-22 11:48:08 +010020 ret = mbedtls_md2_ret( src_str, strlen( (char *) src_str ), output );
Andres Amaya Garciab71b6302017-06-28 10:51:17 +010021 TEST_ASSERT( ret == 0 ) ;
Paul Bakker367dae42009-06-28 21:50:27 +000022
Azim Khand30ca132017-06-09 04:32:58 +010023 TEST_ASSERT( hexcmp( output, hex_hash_string->x, sizeof output, hex_hash_string->len ) == 0 );
Paul Bakker367dae42009-06-28 21:50:27 +000024}
Paul Bakker33b43f12013-08-20 11:48:36 +020025/* END_CASE */
Paul Bakker367dae42009-06-28 21:50:27 +000026
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020027/* BEGIN_CASE depends_on:MBEDTLS_MD4_C */
Azim Khan5fcca462018-06-29 11:05:32 +010028void md4_text( char * text_src_string, data_t * hex_hash_string )
Paul Bakker367dae42009-06-28 21:50:27 +000029{
Andres Amaya Garciab71b6302017-06-28 10:51:17 +010030 int ret;
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010031 unsigned char src_str[100];
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010032 unsigned char output[16];
Paul Bakker367dae42009-06-28 21:50:27 +000033
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010034 memset( src_str, 0x00, sizeof src_str );
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010035 memset( output, 0x00, sizeof output );
Paul Bakker367dae42009-06-28 21:50:27 +000036
Paul Bakkerdd0aae92014-04-17 16:06:37 +020037 strncpy( (char *) src_str, text_src_string, sizeof(src_str) - 1 );
Paul Bakker367dae42009-06-28 21:50:27 +000038
Gilles Peskine9e4f77c2018-01-22 11:48:08 +010039 ret = mbedtls_md4_ret( src_str, strlen( (char *) src_str ), output );
Andres Amaya Garciab71b6302017-06-28 10:51:17 +010040 TEST_ASSERT( ret == 0 );
Paul Bakker367dae42009-06-28 21:50:27 +000041
Azim Khand30ca132017-06-09 04:32:58 +010042 TEST_ASSERT( hexcmp( output, hex_hash_string->x, sizeof output, hex_hash_string->len ) == 0 );
Paul Bakker367dae42009-06-28 21:50:27 +000043}
Paul Bakker33b43f12013-08-20 11:48:36 +020044/* END_CASE */
Paul Bakker367dae42009-06-28 21:50:27 +000045
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020046/* BEGIN_CASE depends_on:MBEDTLS_MD5_C */
Azim Khan5fcca462018-06-29 11:05:32 +010047void md5_text( char * text_src_string, data_t * hex_hash_string )
Paul Bakker367dae42009-06-28 21:50:27 +000048{
Andres Amaya Garciab71b6302017-06-28 10:51:17 +010049 int ret;
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010050 unsigned char src_str[100];
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010051 unsigned char output[16];
Paul Bakker367dae42009-06-28 21:50:27 +000052
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010053 memset( src_str, 0x00, sizeof src_str );
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010054 memset( output, 0x00, sizeof output );
Paul Bakker367dae42009-06-28 21:50:27 +000055
Paul Bakkerdd0aae92014-04-17 16:06:37 +020056 strncpy( (char *) src_str, text_src_string, sizeof(src_str) - 1 );
Paul Bakker367dae42009-06-28 21:50:27 +000057
Gilles Peskine9e4f77c2018-01-22 11:48:08 +010058 ret = mbedtls_md5_ret( src_str, strlen( (char *) src_str ), output );
Andres Amaya Garciab71b6302017-06-28 10:51:17 +010059 TEST_ASSERT( ret == 0 );
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +010060
Azim Khand30ca132017-06-09 04:32:58 +010061 TEST_ASSERT( hexcmp( output, hex_hash_string->x, sizeof output, hex_hash_string->len ) == 0 );
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +010062}
63/* END_CASE */
64
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020065/* BEGIN_CASE depends_on:MBEDTLS_RIPEMD160_C */
Azim Khan5fcca462018-06-29 11:05:32 +010066void ripemd160_text( char * text_src_string, data_t * hex_hash_string )
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +010067{
Andres Amaya Garciab71b6302017-06-28 10:51:17 +010068 int ret;
Manuel Pégourié-Gonnard130fe972014-01-17 14:23:48 +010069 unsigned char src_str[100];
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +010070 unsigned char output[20];
71
72 memset(src_str, 0x00, sizeof src_str);
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +010073 memset(output, 0x00, sizeof output);
74
Paul Bakkerdd0aae92014-04-17 16:06:37 +020075 strncpy( (char *) src_str, text_src_string, sizeof(src_str) - 1 );
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +010076
Gilles Peskine9e4f77c2018-01-22 11:48:08 +010077 ret = mbedtls_ripemd160_ret( src_str, strlen( (char *) src_str ), output );
Andres Amaya Garciab71b6302017-06-28 10:51:17 +010078 TEST_ASSERT( ret == 0 );
Paul Bakker367dae42009-06-28 21:50:27 +000079
Azim Khand30ca132017-06-09 04:32:58 +010080 TEST_ASSERT( hexcmp( output, hex_hash_string->x, sizeof output, hex_hash_string->len ) == 0 );
Paul Bakker367dae42009-06-28 21:50:27 +000081}
Paul Bakker33b43f12013-08-20 11:48:36 +020082/* END_CASE */
Paul Bakkere896fea2009-07-06 06:40:23 +000083
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020084/* BEGIN_CASE depends_on:MBEDTLS_MD2_C:MBEDTLS_SELF_TEST */
Azim Khanf1aaec92017-05-30 14:23:15 +010085void md2_selftest( )
Paul Bakkere896fea2009-07-06 06:40:23 +000086{
Andres AG93012e82016-09-09 09:10:28 +010087 TEST_ASSERT( mbedtls_md2_self_test( 1 ) == 0 );
Paul Bakkere896fea2009-07-06 06:40:23 +000088}
Paul Bakker33b43f12013-08-20 11:48:36 +020089/* END_CASE */
Paul Bakkere896fea2009-07-06 06:40:23 +000090
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020091/* BEGIN_CASE depends_on:MBEDTLS_MD4_C:MBEDTLS_SELF_TEST */
Azim Khanf1aaec92017-05-30 14:23:15 +010092void md4_selftest( )
Paul Bakkere896fea2009-07-06 06:40:23 +000093{
Andres AG93012e82016-09-09 09:10:28 +010094 TEST_ASSERT( mbedtls_md4_self_test( 1 ) == 0 );
Paul Bakkere896fea2009-07-06 06:40:23 +000095}
Paul Bakker33b43f12013-08-20 11:48:36 +020096/* END_CASE */
Paul Bakkere896fea2009-07-06 06:40:23 +000097
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +020098/* BEGIN_CASE depends_on:MBEDTLS_MD5_C:MBEDTLS_SELF_TEST */
Azim Khanf1aaec92017-05-30 14:23:15 +010099void md5_selftest( )
Paul Bakkere896fea2009-07-06 06:40:23 +0000100{
Andres AG93012e82016-09-09 09:10:28 +0100101 TEST_ASSERT( mbedtls_md5_self_test( 1 ) == 0 );
Paul Bakkere896fea2009-07-06 06:40:23 +0000102}
Paul Bakker33b43f12013-08-20 11:48:36 +0200103/* END_CASE */
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +0100104
Manuel Pégourié-Gonnard2cf5a7c2015-04-08 12:49:31 +0200105/* BEGIN_CASE depends_on:MBEDTLS_RIPEMD160_C:MBEDTLS_SELF_TEST */
Azim Khanf1aaec92017-05-30 14:23:15 +0100106void ripemd160_selftest( )
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +0100107{
Andres AG93012e82016-09-09 09:10:28 +0100108 TEST_ASSERT( mbedtls_ripemd160_self_test( 1 ) == 0 );
Manuel Pégourié-Gonnardcab4a882014-01-17 12:42:35 +0100109}
110/* END_CASE */