Andy Polyakov
8bae7722a2
_x86_64_AES_[en|de]crypt_compact: size optimization and aggressive
...
T[ed]4 prefetch.
2007-07-19 14:29:41 +00:00
Andy Polyakov
96b0f6c16d
Various minor updates to AES assembler modules.
2007-07-13 17:42:13 +00:00
Andy Polyakov
e1612ea59d
Add _x86_64_AES_[en|de]crypt_compact.
2007-07-13 17:39:40 +00:00
Dr. Stephen Henson
9677bf0f30
Update .cvsignore
2007-06-18 12:40:24 +00:00
Andy Polyakov
f20af72312
AES_set_[en|de]crypt_key for ARMv4.
2007-05-30 15:57:31 +00:00
Andy Polyakov
7ef643360d
s390x gas can't handle .align 128.
2007-05-28 16:32:50 +00:00
Andy Polyakov
76c828c627
AES_set_[en|de]crypt_key for s390x.
2007-05-28 16:30:18 +00:00
Andy Polyakov
86d8f3ee19
Typo in aes-ppc.pl.
2007-05-19 20:00:33 +00:00
Andy Polyakov
9c200f5471
Initial draft of AES for PPC.
2007-05-19 17:16:27 +00:00
Dr. Stephen Henson
9660cbcd6b
Change C++ style comments.
2007-05-15 23:50:55 +00:00
Ben Laurie
69ab085290
More IGE speedup.
2007-05-13 15:14:38 +00:00
Ben Laurie
5f09d0ecc2
AES IGE mode speedup.
2007-05-13 12:57:59 +00:00
Andy Polyakov
3f6916cf29
Fix bug introduced in cn#16195.
2007-05-03 09:12:47 +00:00
Andy Polyakov
a4470ae7b2
Fine reading of manual suggests that km can return non-normal completion code.
2007-05-03 07:26:27 +00:00
Andy Polyakov
251718e4c1
Fix s390x bugs and correct performance coefficients.
2007-05-02 11:44:02 +00:00
Andy Polyakov
b900df5258
Engage s390x assembler modules.
2007-04-30 09:22:27 +00:00
Andy Polyakov
a2a54ffc5f
s390x assembler pack.
2007-04-30 08:42:54 +00:00
Ben Laurie
f6301f6888
Avoid overrun. Coverity ID 60.
2007-04-05 15:45:58 +00:00
Andy Polyakov
82686bdcaa
Minimize aes_core.c footprint when AES_[en|de]crypt is implemented in
...
assembler.
2007-01-25 20:47:00 +00:00
Andy Polyakov
14b1d089b6
Minor touch to aes-armv4.pl.
2007-01-25 11:28:07 +00:00
Andy Polyakov
a296239bdd
AES for ARMv4.
2007-01-25 10:44:48 +00:00
Dr. Stephen Henson
560b79cbff
Constify version strings and some structures.
2007-01-21 13:07:17 +00:00
Dr. Stephen Henson
4d7aff707e
Update dependencies.
2006-11-30 13:41:47 +00:00
Andy Polyakov
591e85e928
Linking errors on IA64 and typo in aes-ia64.S.
2006-10-17 06:41:27 +00:00
Andy Polyakov
3a8012cbf2
Improve 386 portability of aes-586.pl.
2006-09-18 19:13:15 +00:00
Andy Polyakov
2b8a5406f9
Fix bug in aes-586.pl.
2006-08-31 21:15:38 +00:00
Dr. Stephen Henson
02c9b66a6c
Fix C++ style comments, change assert to OPENSSL_assert, stop warning with
...
pedantic mode.
2006-08-31 20:56:20 +00:00
Ben Laurie
aa6d1a0c19
Forward port of IGE mode.
2006-08-31 14:04:04 +00:00
Andy Polyakov
6c69aa532e
Revised AES_cbc_encrypt in x86 assembler module.
2006-08-07 09:05:52 +00:00
Andy Polyakov
fc92414273
Agressively prefetch S-box in SSE codepatch, relax alignment requirement,
...
check for SSE bit instead of MMX, as pshufw was introduces in PIII, minor
optimization, typos...
2006-08-02 22:38:16 +00:00
Andy Polyakov
53154d71c3
Switch to compact S-box when generating AES key schedule.
2006-08-02 07:46:56 +00:00
Andy Polyakov
8cebec9802
Switch to compact S-box when generating AES key schedule.
2006-08-01 22:10:39 +00:00
Andy Polyakov
22c268e6c9
Next generation aes-586.pl featuring AES_[en|de]crypt, accessing exclusively
...
256 byte S-box. AES_cbc_encrypt needs further work as it should also use
slow routines when processing smaller amount of data.
2006-07-31 20:03:56 +00:00
Andy Polyakov
af8c1d81a3
Reimplement outer rounds as "compact" in x86 assembler. This has rather
...
strong impact on decrypt performance, 20-25%. One probably should consider
switching between slower and faster routines depending on how much data
we were asked to process.
2006-07-18 10:05:38 +00:00
Andy Polyakov
dff2922aa7
Add option for "compact" rounds to aes_x86core.c. "Compact" rounds are
...
those referencing compact, 256-byte, S-boxes.
2006-07-14 09:57:55 +00:00
Andy Polyakov
86bdc0a3ee
Fix compiler warnings.
2006-07-04 20:29:50 +00:00
Andy Polyakov
9c62bca11a
Prepare playground for AES experimental code.
2006-07-02 09:18:00 +00:00
Andy Polyakov
985e4c4154
Mitigate the hazard of cache-collision timing attack on last round. The
...
only chance for T[ed]4 to get evicted in this module is when its cache
"overlaps" with last 128 bits of key schedule.
2006-06-28 08:52:16 +00:00
Andy Polyakov
9598fa8759
Mitigate the hazard of cache-collision timing attack on last round. Well,
...
prefetch could have been moved closer to Td4 references. Something for
later consideration...
2006-06-28 08:48:54 +00:00
Andy Polyakov
ac8173515a
Mitigate cache-collision timing attack on last round.
2006-06-28 08:39:06 +00:00
Andy Polyakov
8fecd4b4f1
Sync aes.h with http://cvs.openssl.org/chngview?cn=15336 .
2006-06-05 10:43:41 +00:00
Andy Polyakov
41fc5f2dbe
Reimplement AES_ofb128_encrypt.
2006-06-05 10:40:54 +00:00
Andy Polyakov
bcfd3d68f5
Correct logical error in STRICT_ALIGNMENT check and remove copy of
...
eay licence, as module is practically rewritten from scratch [well,
even original submission was obviously "almost, but not quite,
entirely unlike" any other eay *_cfb.c module, not to mention new
functions].
2006-06-05 10:40:28 +00:00
Andy Polyakov
21f0db692d
Tune up AES CFB. Performance improvement varies from 10% to 50% from
...
platform to platform. Its absolute value is within few percents
marginal from that of ECB.
2006-05-30 07:20:13 +00:00
Nils Larsch
49c5f38d3d
undo accidental commit
2006-04-20 13:54:34 +00:00
Nils Larsch
f8296228f1
as we encrypt every bit separately we need to loop through the number
...
of bits; thanks to Michael McDougall <mmcdouga@saul.cis.upenn.edu>
PR: 1318
2006-04-20 13:11:52 +00:00
Andy Polyakov
35e00cc2d8
Minor aes-sparcv9.pl optimization.
2005-12-10 12:32:22 +00:00
Andy Polyakov
064f6cb6f2
Engage AES for UltraSPARC in sparcv9 targets.
2005-12-10 11:24:07 +00:00
Andy Polyakov
20ab8b4b41
Revoke the option to share AES S-boxes between C and assembler. It wastes
...
space, but gives total flexibility [back].
2005-12-10 11:22:57 +00:00
Andy Polyakov
7395d852c3
Initial draft for AES for UltraSPARC assembler.
2005-12-10 11:19:56 +00:00