]> git.cryptolib.org Git - avr-crypto-lib.git/blobdiff - test_src/main-xtea-test.c
a lot of fixes
[avr-crypto-lib.git] / test_src / main-xtea-test.c
index aaebdf35d72476d97c0eca03f1fbf461fc07f6d1..42b5ee51ea0e240baa40743246a45bf744dace55 100644 (file)
@@ -29,6 +29,9 @@
 #include "xtea.h"
 #include "nessie_bc_test.h"
 #include "performance_test.h"
+#include "bcal-performance.h"
+#include "bcal-nessie.h"
+#include "bcal_xtea.h"
 #include "cli.h"
 
 #include <stdint.h>
 
 char* algo_name = "XTEA";
 
-void xtea_genctx_dummy(uint8_t* key, uint16_t keysize, void* ctx){
-       memcpy(ctx, key, (keysize+7)/8);
-}
+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_enc_dummy(uint8_t* buffer, void* ctx){
-       xtea_enc((uint32_t*)buffer, (uint32_t*)buffer, ctx);
-}
-
-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);
-       
-       cli_putstr_P(PSTR("\r\n"));
+       cli_putstr_P(PSTR("\r\n plain: "));
+       cli_hexdump(data, 8);
 }
 
 /*****************************************************************************
@@ -92,9 +82,9 @@ 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}