On Mon, Oct 26, 2015 at 03:25:45AM -0500, Rodger Combs wrote: > --- > libavutil/aes.c | 47 +++++++++++++++++++++++++++++++---------------- > libavutil/aes_internal.h | 1 + > 2 files changed, 32 insertions(+), 16 deletions(-) > > diff --git a/libavutil/aes.c b/libavutil/aes.c > index 61e9dd1..4fa01ea 100644 > --- a/libavutil/aes.c > +++ b/libavutil/aes.c > @@ -126,31 +126,44 @@ static inline void aes_crypt(AVAES *a, int s, const > uint8_t *sbox, > subshift(&a->state[0], s, sbox); > } > > -void av_aes_crypt(AVAES *a, uint8_t *dst, const uint8_t *src, > - int count, uint8_t *iv, int decrypt) > +static void aes_encrypt(AVAES *a, uint8_t *dst, const uint8_t *src, > + int count, uint8_t *iv, int rounds) > { > while (count--) { > addkey_s(&a->state[1], src, &a->round_key[a->rounds]); > - if (decrypt) { > - aes_crypt(a, 0, inv_sbox, dec_multbl); > - if (iv) { > - addkey_s(&a->state[0], iv, &a->state[0]); > - memcpy(iv, src, 16); > - } > - addkey_d(dst, &a->state[0], &a->round_key[0]); > - } else { > - if (iv) > - addkey_s(&a->state[1], iv, &a->state[1]); > - aes_crypt(a, 2, sbox, enc_multbl); > - addkey_d(dst, &a->state[0], &a->round_key[0]); > - if (iv) > - memcpy(iv, dst, 16); > + if (iv) > + addkey_s(&a->state[1], iv, &a->state[1]); > + aes_crypt(a, 2, sbox, enc_multbl); > + addkey_d(dst, &a->state[0], &a->round_key[0]); > + if (iv) > + memcpy(iv, dst, 16); > + src += 16; > + dst += 16; > + } > +} > +
> +static void aes_decrypt(AVAES *a, uint8_t *dst, const uint8_t *src, > + int count, uint8_t *iv, int rounds) > +{ > + while (count--) { > + addkey_s(&a->state[1], src, &a->round_key[a->rounds]); could be simplified by using the funtction argument "rounds" patch ok either way [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Good people do not need laws to tell them to act responsibly, while bad people will find a way around the laws. -- Plato
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel