]> git.cryptolib.org Git - avr-crypto-lib.git/blobdiff - test_src/main-xtea-test.c
fixing E-Mail-Address & Copyright
[avr-crypto-lib.git] / test_src / main-xtea-test.c
index c40046f0cdd9cf518c936eefca9ad7183ed542ac..91f34e96458aea971ce22b5aca75ce0bbfa5e0c3 100644 (file)
@@ -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
  * 
 */
 
-#include "config.h"
 
-#include "uart_i.h"
-#include "debug.h"
+#include "main-test-common.h"
 
 #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>
-#include <string.h>
+char *algo_name = "XTEA";
 
-char* algo_name = "XTEA";
-
-const bcdesc_t* algolist[] PROGMEM = {
+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_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);
-}
-
-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){
        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);
+       cli_putstr_P(PSTR("\r\n crypt: "));
+       cli_hexdump(data, 8);
+       xtea_dec(data, data, key);
+       cli_putstr_P(PSTR("\r\n plain: "));
+       cli_hexdump(data, 8);
+}
+
 /*****************************************************************************
  *  main                                                                                                                                        *
  *****************************************************************************/
@@ -82,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();
-       
-       cli_rx = (cli_rx_fpt)uart0_getc;
-       cli_tx = (cli_tx_fpt)uart0_putc;                
-       for(;;){
-               cli_putstr_P(PSTR("\r\n\r\nCrypto-VS ("));
-               cli_putstr(algo_name);
-               cli_putstr_P(PSTR(")\r\nloaded and running\r\n"));
-               cmd_interface(cmdlist);
+    main_setup();
+
+    for(;;){
+        welcome_msg(algo_name);
+        cmd_interface(cmdlist);
        }
 }