Commit 67cd46aa authored by Niels Möller's avatar Niels Möller

Use ROTL32 in the aes code.

parent f13fd113
...@@ -2,6 +2,9 @@ ...@@ -2,6 +2,9 @@
* macros.h (ROTL32): New macro, to replace (almost) all other * macros.h (ROTL32): New macro, to replace (almost) all other
rotation macros. rotation macros.
* aes-set-encrypt-key.c: Include macros.h.
(aes_set_encrypt_key): Use ROTL32.
* aes-internal.h (ROTBYTE, ROTRBYTE): Deleted macros.
2012-03-30 Niels Möller <nisse@lysator.liu.se> 2012-03-30 Niels Möller <nisse@lysator.liu.se>
......
...@@ -63,8 +63,6 @@ _aes_decrypt(const struct aes_ctx *ctx, ...@@ -63,8 +63,6 @@ _aes_decrypt(const struct aes_ctx *ctx,
const uint8_t *src); const uint8_t *src);
/* Macros */ /* Macros */
#define ROTBYTE(x) (((x) >> 8) | (((x) & 0xff) << 24))
#define ROTRBYTE(x) (((x) << 8) | (((x) >> 24) & 0xff))
#define SUBBYTE(x, box) (((box)[((x) & 0xff)]) | \ #define SUBBYTE(x, box) (((box)[((x) & 0xff)]) | \
((box)[(((x) >> 8) & 0xff)] << 8) | \ ((box)[(((x) >> 8) & 0xff)] << 8) | \
((box)[(((x) >> 16) & 0xff)] << 16) | \ ((box)[(((x) >> 16) & 0xff)] << 16) | \
......
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
#include <assert.h> #include <assert.h>
#include "aes-internal.h" #include "aes-internal.h"
#include "macros.h"
static unsigned static unsigned
xtime(unsigned x) xtime(unsigned x)
...@@ -83,7 +84,7 @@ aes_set_encrypt_key(struct aes_ctx *ctx, ...@@ -83,7 +84,7 @@ aes_set_encrypt_key(struct aes_ctx *ctx,
temp = ctx->keys[i-1]; temp = ctx->keys[i-1];
if (i % nk == 0) if (i % nk == 0)
{ {
temp = SUBBYTE(ROTBYTE(temp), aes_sbox) ^ rcon; temp = SUBBYTE(ROTL32(24, temp), aes_sbox) ^ rcon;
rcon = (uint32_t)xtime((uint8_t)rcon&0xff); rcon = (uint32_t)xtime((uint8_t)rcon&0xff);
} }
else if (nk > 6 && (i%nk) == 4) else if (nk > 6 && (i%nk) == 4)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment