]> git.sesse.net Git - ffmpeg/commitdiff
simplify round_key generation by writing over the end but ensuring that theres some...
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 14 Jan 2007 13:46:20 +0000 (13:46 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 14 Jan 2007 13:46:20 +0000 (13:46 +0000)
Originally committed as revision 7471 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavutil/aes.c

index bdbced191380d182d1e2ccfa75c395162ba248b8..090ecd234df7b10de3d7faee0dc25ebd59e4c4a3 100644 (file)
@@ -23,8 +23,8 @@
 #include "aes.h"
 
 typedef struct AVAES{
-    uint8_t state[4][4];
     uint8_t round_key[15][4][4];
+    uint8_t state[4][4];
     int rounds;
 }AVAES;
 
@@ -143,9 +143,9 @@ AVAES *av_aes_init(uint8_t *key, int key_bits) {
 
     memcpy(tk, key, KC*4);
 
-    for(t= 0; t < (rounds+1)*4; ) {
-        for(j = 0; j < KC && t < (rounds+1)*4; j++, t++)
-            memcpy(a->round_key[0][t],  tk[j], 4);
+    for(t= 0; t < (rounds+1)*4;) {
+        memcpy(a->round_key[0][t], tk, KC*4);
+        t+= KC;
 
         for(i = 0; i < 4; i++)
             tk[0][i] ^= sbox[tk[KC-1][(i+1)&3]];