2013-01-20 18:41:17 -05:00
2013-01-20 18:55:10 -05:00
# define TEST_NAME "hash"
# include "cmptest.h"
2015-11-23 10:07:13 -05:00
static unsigned char x [ ] = " testing \n " ;
static unsigned char x2 [ ] = " The Conscience of a Hacker is a small essay written January 8, 1986 by a computer security hacker who went by the handle of The Mentor, who belonged to the 2nd generation of Legion of Doom. " ;
static unsigned char h [ crypto_hash_BYTES ] ;
2013-01-20 18:41:17 -05:00
2013-01-20 18:48:08 -05:00
int main ( void )
2013-01-20 18:41:17 -05:00
{
2014-09-14 13:34:16 -04:00
size_t i ;
2014-09-13 17:37:04 -04:00
2014-09-14 14:32:55 -04:00
crypto_hash ( h , x , sizeof x - 1U ) ;
for ( i = 0 ; i < crypto_hash_BYTES ; + + i ) {
printf ( " %02x " , ( unsigned int ) h [ i ] ) ;
2014-09-14 13:34:16 -04:00
}
printf ( " \n " ) ;
2014-09-23 16:40:08 -04:00
crypto_hash ( h , x2 , sizeof x2 - 1U ) ;
for ( i = 0 ; i < crypto_hash_BYTES ; + + i ) {
printf ( " %02x " , ( unsigned int ) h [ i ] ) ;
}
printf ( " \n " ) ;
crypto_hash_sha256 ( h , x , sizeof x - 1U ) ;
for ( i = 0 ; i < crypto_hash_sha256_BYTES ; + + i ) {
printf ( " %02x " , ( unsigned int ) h [ i ] ) ;
}
printf ( " \n " ) ;
crypto_hash_sha256 ( h , x2 , sizeof x2 - 1U ) ;
for ( i = 0 ; i < crypto_hash_sha256_BYTES ; + + i ) {
printf ( " %02x " , ( unsigned int ) h [ i ] ) ;
}
printf ( " \n " ) ;
2014-09-13 17:37:04 -04:00
2014-09-14 13:34:16 -04:00
assert ( crypto_hash_bytes ( ) > 0U ) ;
assert ( strcmp ( crypto_hash_primitive ( ) , " sha512 " ) = = 0 ) ;
assert ( crypto_hash_sha256_bytes ( ) > 0U ) ;
2014-09-23 16:40:08 -04:00
assert ( crypto_hash_sha512_bytes ( ) > = crypto_hash_sha256_bytes ( ) ) ;
2014-09-14 13:34:16 -04:00
assert ( crypto_hash_sha512_bytes ( ) = = crypto_hash_bytes ( ) ) ;
2015-01-23 05:17:40 -05:00
assert ( crypto_hash_sha256_statebytes ( ) = = sizeof ( crypto_hash_sha256_state ) ) ;
assert ( crypto_hash_sha512_statebytes ( ) = = sizeof ( crypto_hash_sha512_state ) ) ;
2014-09-14 13:34:16 -04:00
return 0 ;
2013-01-20 18:41:17 -05:00
}