[SCM] libav/experimental: revert simplification (broke 192 bit keys)
siretart at users.alioth.debian.org
siretart at users.alioth.debian.org
Sun Jun 30 15:54:54 UTC 2013
The following commit has been merged in the experimental branch:
commit f25b650a5be8ef947cb3f57a751772ab7f2f5744
Author: Michael Niedermayer <michaelni at gmx.at>
Date: Sun Jan 14 21:13:14 2007 +0000
revert simplification (broke 192 bit keys)
Originally committed as revision 7500 to svn://svn.ffmpeg.org/ffmpeg/trunk
diff --git a/libavutil/aes.c b/libavutil/aes.c
index df3ba03..135b931 100644
--- a/libavutil/aes.c
+++ b/libavutil/aes.c
@@ -158,9 +158,7 @@ AVAES *av_aes_init(uint8_t *key, int key_bits, int decrypt) {
memcpy(tk, key, KC*4);
for(t= 0; t < (rounds+1)*4;) {
- if(decrypt) memcpy(a->round_key[0 ][ t], tk, KC*4);
- else memcpy(a->round_key[rounds][-t], tk, KC*4);
-
+ memcpy(a->round_key[0][t], tk, KC*4);
t+= KC;
for(i = 0; i < 4; i++)
@@ -181,6 +179,11 @@ AVAES *av_aes_init(uint8_t *key, int key_bits, int decrypt) {
a->round_key[i][0][j]= sbox[a->round_key[i][0][j]];
mix(a->round_key[i], dec_multbl);
}
+ }else{
+ for(i=0; i<(rounds+1)/2; i++){
+ for(j=0; j<16; j++)
+ FFSWAP(int, a->round_key[i][0][j], a->round_key[rounds-i][0][j]);
+ }
}
return a;
--
Libav/FFmpeg packaging
More information about the pkg-multimedia-commits
mailing list