]> git.cryptolib.org Git - avr-crypto-lib.git/blobdiff - test_src/main-camellia-test.c
renaming to AVR-Crypto-Lib
[avr-crypto-lib.git] / test_src / main-camellia-test.c
index 4d64a506be1605e2e7caea88c5ceedcbb85fb0d3..b52cb09fae89d33e9e70c231e8841493b4ab3c5e 100644 (file)
@@ -1,6 +1,6 @@
 /* main-camellia-test.c */
 /*
-    This file is part of the Crypto-avr-lib/microcrypt-lib.
+    This file is part of the This file is part of the AVR-Crypto-Lib.
     Copyright (C) 2008  Daniel Otte (daniel.otte@rub.de)
 
     This program is free software: you can redistribute it and/or modify
@@ -103,9 +103,43 @@ void test_performance_camellia(void){
 /*****************************************************************************
  *  self tests                                                                                                                          *
  *****************************************************************************/
+/*
+128-bit key
+key         01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10
+plaintext   01 23 45 67 89 ab cd ef fe dc ba 98 76 54 32 10
+ciphertext  67 67 31 38 54 96 69 73 08 57 06 56 48 ea be 43
+*/
+void testrun_camellia(void){
+
+  uint8_t data[16] = { 0x01, 0x23, 0x45, 0x67, 
+                       0x89, 0xab, 0xcd, 0xef, 
+                       0xfe, 0xdc, 0xba, 0x98, 
+                       0x76, 0x54, 0x32, 0x10 };
+
+  uint8_t key[16] = { 0x01, 0x23, 0x45, 0x67, 
+                       0x89, 0xab, 0xcd, 0xef, 
+                       0xfe, 0xdc, 0xba, 0x98, 
+                       0x76, 0x54, 0x32, 0x10 };
+
+
+  camellia128_ctx_t ctx;
+  camellia128_init(key, &ctx);
+  uart_putstr_P(PSTR("\r\n key:        "));
+  uart_hexdump(data, 16);
+  uart_putstr_P(PSTR("\r\n plaintext:  "));
+  uart_hexdump(data, 16);
+  camellia128_enc(data, &ctx);
+  uart_putstr_P(PSTR("\r\n ciphertext: "));
+  uart_hexdump(data, 16);
+  camellia128_dec(data, &ctx);
+  uart_putstr_P(PSTR("\r\n decrypted:  "));
+  uart_hexdump(data, 16);
+
+}
+
 
 /*****************************************************************************
- *  main                                                                                                                                        *
+ * main                                                                                                                                         *
  *****************************************************************************/
 
 int main (void){
@@ -120,7 +154,7 @@ int main (void){
        uart_putstr_P(PSTR(")\r\nloaded and running\r\n"));
 
        PGM_P    u   = PSTR("nessie\0test\0performance\0");
-       void_fpt v[] = {testrun_nessie_camellia, testrun_nessie_camellia, test_performance_camellia};
+       void_fpt v[] = {testrun_nessie_camellia, testrun_camellia, test_performance_camellia};
        
        while(1){ 
                if (!getnextwordn(str,20)){DEBUG_S("DBG: W1\r\n"); goto error;}