X-Git-Url: https://git.cryptolib.org/?p=avr-crypto-lib.git;a=blobdiff_plain;f=test_src%2Fmain-xtea-test.c;h=91f34e96458aea971ce22b5aca75ce0bbfa5e0c3;hp=a1dfd029bf37caf0c542f7588b5499df0d724100;hb=4b5da1dc27a791b5c448274a3db09cd035b33493;hpb=572b35bb7409fb362441e0812cb62eab9f2411f0 diff --git a/test_src/main-xtea-test.c b/test_src/main-xtea-test.c index a1dfd02..91f34e9 100644 --- a/test_src/main-xtea-test.c +++ b/test_src/main-xtea-test.c @@ -1,7 +1,7 @@ /* main-xtea-test.c */ /* This file is part of the AVR-Crypto-Lib. - Copyright (C) 2008 Daniel Otte (daniel.otte@rub.de) + Copyright (C) 2006-2015 Daniel Otte (bg@nerilex.org) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -21,66 +21,50 @@ * */ -#include "config.h" -#include "serial-tools.h" -#include "uart.h" -#include "debug.h" + +#include "main-test-common.h" #include "xtea.h" #include "nessie_bc_test.h" #include "performance_test.h" -#include "cli.h" - -#include -#include +#include "bcal-performance.h" +#include "bcal-nessie.h" +#include "bcal_xtea.h" -char* algo_name = "XTEA"; +char *algo_name = "XTEA"; -void xtea_genctx_dummy(uint8_t* key, uint16_t keysize, void* ctx){ - memcpy(ctx, key, (keysize+7)/8); -} - -void xtea_enc_dummy(uint8_t* buffer, void* ctx){ - xtea_enc((uint32_t*)buffer, (uint32_t*)buffer, ctx); -} +const bcdesc_t *const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const const algolist[] PROGMEM = { + (bcdesc_t*)&xtea_desc, + NULL +}; -void xtea_dec_dummy(uint8_t* buffer, void* ctx){ - xtea_dec((uint32_t*)buffer, (uint32_t*)buffer, ctx); -} +/******************************************************************************/ void testrun_nessie_xtea(void){ - nessie_bc_ctx.blocksize_B = 8; - nessie_bc_ctx.keysize_b = 128; - nessie_bc_ctx.name = algo_name; - nessie_bc_ctx.ctx_size_B = 128/8; - nessie_bc_ctx.cipher_enc = (nessie_bc_enc_fpt)xtea_enc_dummy; - nessie_bc_ctx.cipher_dec = (nessie_bc_dec_fpt)xtea_dec_dummy; - nessie_bc_ctx.cipher_genctx = (nessie_bc_gen_fpt)xtea_genctx_dummy; - - nessie_bc_run(); + bcal_nessie_multiple(algolist); } void testrun_performance_xtea(void){ - uint64_t t; - uint8_t key[16], data[8]; - - calibrateTimer(); - print_overhead(); - - memset(key, 0, 16); - memset(data, 0, 8); - - startTimer(1); + bcal_performance_multiple(algolist); +} + +void test_xtea(void){ + uint8_t key[16]; + uint8_t data[8]; + + memset(key, 0, 16); + key[0] = 0x80; + memset(data, 0, 8); + cli_putstr_P(PSTR("\r\n*** XTEA test ***\r\n key: ")); + cli_hexdump(key, 16); + cli_putstr_P(PSTR("\r\n plain: ")); + cli_hexdump(data, 8); xtea_enc(data, data, key); - t = stopTimer(); - print_time_P(PSTR("\tencrypt time: "), t); - - startTimer(1); + cli_putstr_P(PSTR("\r\n crypt: ")); + cli_hexdump(data, 8); xtea_dec(data, data, key); - t = stopTimer(); - print_time_P(PSTR("\tdecrypt time: "), t); - - uart_putstr_P(PSTR("\r\n")); + cli_putstr_P(PSTR("\r\n plain: ")); + cli_hexdump(data, 8); } /***************************************************************************** @@ -92,23 +76,19 @@ const char test_str[] PROGMEM = "test"; const char performance_str[] PROGMEM = "performance"; const char echo_str[] PROGMEM = "echo"; -cmdlist_entry_t cmdlist[] PROGMEM = { +const cmdlist_entry_t cmdlist[] PROGMEM = { { nessie_str, NULL, testrun_nessie_xtea}, - { test_str, NULL, testrun_nessie_xtea}, + { test_str, NULL, test_xtea}, { performance_str, NULL, testrun_performance_xtea}, { echo_str, (void*)1, (void_fpt)echo_ctrl}, { NULL, NULL, NULL} }; int main (void){ - DEBUG_INIT(); - uart_putstr("\r\n"); - cli_rx = uart_getc; - cli_tx = uart_putc; - for(;;){ - uart_putstr_P(PSTR("\r\n\r\nCrypto-VS (")); - uart_putstr(algo_name); - uart_putstr_P(PSTR(")\r\nloaded and running\r\n")); - cmd_interface(cmdlist); + main_setup(); + + for(;;){ + welcome_msg(algo_name); + cmd_interface(cmdlist); } }