X-Git-Url: https://git.cryptolib.org/?a=blobdiff_plain;f=test_src%2Fnessie_hash_test.c;h=04895b0c89e6f36683a40e2adcda97dde093fac2;hb=f02dfa3ab0f34d6b9ef4afc5aa336255fd21882c;hp=ef5d968ed871185b250f61d01d273221bc741526;hpb=65b5512d92a8b13973ae65201b18922b856328e5;p=avr-crypto-lib.git diff --git a/test_src/nessie_hash_test.c b/test_src/nessie_hash_test.c index ef5d968..04895b0 100644 --- a/test_src/nessie_hash_test.c +++ b/test_src/nessie_hash_test.c @@ -32,6 +32,7 @@ #include "dbz_strings.h" nessie_hash_ctx_t nessie_hash_ctx; +uint8_t nessie_hash_quick=0; #define HASHSIZE_B ((nessie_hash_ctx.hashsize_b+7)/8) #define BLOCKSIZE_B (nessie_hash_ctx.blocksize_B) @@ -49,12 +50,12 @@ void ascii_hash_P(PGM_P data, PGM_P desc){ sl = strlen_P(data); while(sl>=BLOCKSIZE_B){ memcpy_P(buffer, data, BLOCKSIZE_B); - nessie_hash_ctx.hash_next(buffer, ctx); + nessie_hash_ctx.hash_next(ctx, buffer); data += BLOCKSIZE_B; sl -= BLOCKSIZE_B; } memcpy_P(buffer, data, sl); - nessie_hash_ctx.hash_last(buffer, sl*8, ctx); + nessie_hash_ctx.hash_last(ctx, buffer, sl*8); nessie_hash_ctx.hash_conv(hash, ctx); nessie_print_item("hash", hash, (nessie_hash_ctx.hashsize_b+7)/8); } @@ -74,11 +75,11 @@ void amillion_hash(void){ memset(block, 'a', nessie_hash_ctx.blocksize_B); nessie_hash_ctx.hash_init(ctx); while(n>=nessie_hash_ctx.blocksize_B){ - nessie_hash_ctx.hash_next(block, ctx); + nessie_hash_ctx.hash_next(ctx, block); n -= nessie_hash_ctx.blocksize_B; NESSIE_SEND_ALIVE_A(i++); } - nessie_hash_ctx.hash_last(block, n*8, ctx); + nessie_hash_ctx.hash_last(ctx, block, n*8); nessie_hash_ctx.hash_conv(hash, ctx); nessie_print_item("hash", hash, (nessie_hash_ctx.hashsize_b+7)/8); } @@ -105,10 +106,10 @@ void zero_hash(uint16_t n){ memset(block, 0, nessie_hash_ctx.blocksize_B); nessie_hash_ctx.hash_init(ctx); while(n>=nessie_hash_ctx.blocksize_B*8){ - nessie_hash_ctx.hash_next(block, ctx); + nessie_hash_ctx.hash_next(ctx, block); n -= nessie_hash_ctx.blocksize_B*8; } - nessie_hash_ctx.hash_last(block, n, ctx); + nessie_hash_ctx.hash_last(ctx, block, n); nessie_hash_ctx.hash_conv(hash, ctx); nessie_print_item("hash", hash, (nessie_hash_ctx.hashsize_b+7)/8); } @@ -147,10 +148,10 @@ void one_in512_hash(uint16_t pos){ block[pos>>3] = 0x80>>(pos&0x7); nessie_hash_ctx.hash_init(ctx); while(n>=nessie_hash_ctx.blocksize_B*8){ - nessie_hash_ctx.hash_next(block, ctx); + nessie_hash_ctx.hash_next(ctx, block); n -= nessie_hash_ctx.blocksize_B*8; } - nessie_hash_ctx.hash_last(block, n, ctx); + nessie_hash_ctx.hash_last(ctx, block, n); nessie_hash_ctx.hash_conv(hash, ctx); nessie_print_item("hash", hash, (nessie_hash_ctx.hashsize_b+7)/8); } @@ -179,15 +180,17 @@ void tv4_hash(void){ nessie_hash_ctx.hash_init(ctx); while(n>=nessie_hash_ctx.blocksize_B*8){ - nessie_hash_ctx.hash_next(block, ctx); + nessie_hash_ctx.hash_next(ctx, block); n -= nessie_hash_ctx.blocksize_B*8; } - nessie_hash_ctx.hash_last(block, n, ctx); + nessie_hash_ctx.hash_last(ctx, block, n); nessie_hash_ctx.hash_conv(hash, ctx); nessie_print_item("hash", hash, (nessie_hash_ctx.hashsize_b+7)/8); + if(nessie_hash_quick) + return; for(i=1; i<100000L; ++i){ /* this assumes BLOCKSIZE >= HASHSIZE */ nessie_hash_ctx.hash_init(ctx); - nessie_hash_ctx.hash_last(hash, nessie_hash_ctx.hashsize_b, ctx); + nessie_hash_ctx.hash_last(ctx, hash, nessie_hash_ctx.hashsize_b); nessie_hash_ctx.hash_conv(hash, ctx); NESSIE_SEND_ALIVE_A(i); } @@ -242,7 +245,8 @@ void nessie_hash_run(void){ ascii_hash_P(challange[2*i], challange[2*i+1]); } nessie_print_set_vector(set, i); - amillion_hash(); + if(!nessie_hash_quick) + amillion_hash(); /* test set 2 */ set=2; nessie_print_setheader(set);