diff options
author | lloyd <[email protected]> | 2009-11-06 18:57:58 +0000 |
---|---|---|
committer | lloyd <[email protected]> | 2009-11-06 18:57:58 +0000 |
commit | 07412401c927e01da3504f0c2b7e94d4ac13ee33 (patch) | |
tree | 8a0a221d4b962db645d4a34ef9a97ccfd1cfcf3d /src/build-data | |
parent | 89da502ff80a9c63038b8b02a5062e460dff4649 (diff) |
Add a complete but untested AES-128 using the AES-NI intrinsics.
From looking at how key gen works in particular, it seems easiest to provide
only AES-128, AES-192, and AES-256 and not a general AES class that can
accept any key length. This also has the bonus of allowing full loop unrolling
which may be a win (how much so will depend on the latency/throughput of
the AES instructions which is currently unknown).
No block interleaving, though of course it works very nicely here, simply
due to the desire to keep things simple until what is currently here can
actually be tested. (Intel has an emulator that is supposed to work but
just crashes on my machine...)
I'm not entirely sure if byte swapping is required. Intel has a white paper
out that suggests it isn't (and really it would have been stupid of them to
not build this into the aes instructions), but who knows. If it turns
out to be necessary there is a pretty fast bswap instruction for SSE anyway.
Diffstat (limited to 'src/build-data')
0 files changed, 0 insertions, 0 deletions