along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*
- * Mickey128 test-suit
+ * Trivium test-suit
*
*/
-#include "config.h"
-
-#include "uart_i.h"
-#include "debug.h"
-#include "cli.h"
+#include "main-test-common.h"
#include "trivium.h"
#include "scal_trivium.h"
+#include "scal-basic.h"
#include "scal-nessie.h"
#include "performance_test.h"
-#include <stdlib.h>
-#include <stdint.h>
-#include <string.h>
-
char* algo_name = "Trivium";
/*****************************************************************************
cli_putstr_P(PSTR("\r\n IV = "));
cli_hexdump(iv, 4);
cli_putstr_P(PSTR("\r\n Cipher = "));
- cli_hexdump_block(buffer, 64, 4, 8);
+ cli_hexdump_block(buffer, 64, 4, 16);
+ scal_cipher_free(&ctx);
+ key[0] = 0x40;
+ scal_cipher_init(&trivium_desc, key, 80, iv, 32, &ctx);
+ scal_cipher_gen_fillblock(buffer, 64, &ctx);
+ cli_putstr_P(PSTR("\r\nTest:\r\n Key = "));
+ cli_hexdump(key, 10);
+ cli_putstr_P(PSTR("\r\n IV = "));
+ cli_hexdump(iv, 4);
+ cli_putstr_P(PSTR("\r\n Cipher = "));
+ cli_hexdump_block(buffer, 64, 4, 16);
scal_cipher_free(&ctx);
- key[0] = 0x00;
- key[9] = 0x80;
+ key[0] = 0x20;
scal_cipher_init(&trivium_desc, key, 80, iv, 32, &ctx);
scal_cipher_gen_fillblock(buffer, 64, &ctx);
cli_putstr_P(PSTR("\r\nTest:\r\n Key = "));
cli_putstr_P(PSTR("\r\n IV = "));
cli_hexdump(iv, 4);
cli_putstr_P(PSTR("\r\n Cipher = "));
- cli_hexdump_block(buffer, 64, 4, 8);
+ cli_hexdump_block(buffer, 64, 4, 16);
+ scal_cipher_free(&ctx);
+ key[0] = 0x10;
+ scal_cipher_init(&trivium_desc, key, 80, iv, 32, &ctx);
+ scal_cipher_gen_fillblock(buffer, 64, &ctx);
+ cli_putstr_P(PSTR("\r\nTest:\r\n Key = "));
+ cli_hexdump(key, 10);
+ cli_putstr_P(PSTR("\r\n IV = "));
+ cli_hexdump(iv, 4);
+ cli_putstr_P(PSTR("\r\n Cipher = "));
+ cli_hexdump_block(buffer, 64, 4, 16);
scal_cipher_free(&ctx);
}
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_trivium},
{ test_str, NULL, testrun_trivium},
{ performance_str, NULL, testrun_performance_trivium},
};
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);
}
}