]> git.cryptolib.org Git - avr-crypto-lib.git/blobdiff - keccak/keccak-stub.c
progress in asm version of keccak
[avr-crypto-lib.git] / keccak / keccak-stub.c
index 5b9e3c48f6485575287fa98c1de775e476b4125e..60cf2d19af227562f9500f59c95ad2aad8dae317 100644 (file)
@@ -30,7 +30,7 @@
 #  undef DEBUG
 #endif
 
-#define DEBUG 0
+#define DEBUG 1
 
 #if DEBUG
 #include "cli.h"
@@ -107,7 +107,7 @@ void keccak_round(uint64_t a[5][5], uint8_t rci){
                        uint8_t v8[8];
                } t;
        /* theta */
-#if DEBUG
+#if DEBUG & 0
     printf_P(PSTR("\npre-theta(1):"));
     keccak_dump_state(b);
 #endif
@@ -117,11 +117,10 @@ void keccak_round(uint64_t a[5][5], uint8_t rci){
        keccak_dump_state(b);
 #endif
        for(i = 0; i < 5; ++i){
-               t.v64 = b[(4 + i) % 5][0] ^ rotate64_1bit_left(b[(i + 1) % 5][0]);
-               for(j = 0; j < 5; ++j){
-                       a[j][i] ^= t.v64;
-               }
-       }
+        for(j = 0; j < 5; ++j){
+            a[j][i] ^= rotate64_1bit_left(b[(i + 1) % 5][0]);
+        }
+    }
 #if DEBUG
        cli_putstr_P(PSTR("\r\nAfter theta:"));
        keccak_dump_state(a);