Andy Polyakov
1cbdca7bf2
Harmonize s390x assembler modules with "catch-all" rules from commit#19749.
2010-07-09 12:11:12 +00:00
Andy Polyakov
396df7311e
crypto/*/Makefile: unify "catch-all" assembler make rules and harmonize
...
ARM assembler modules.
2010-07-08 15:03:42 +00:00
Andy Polyakov
3efe51a407
Revert previous Linux-specific/centric commit#19629. If it really has to
...
be done, it's definitely not the way to do it. So far answer to the
question was to ./config -Wa,--noexecstack (adopted by RedHat).
2010-05-05 22:05:39 +00:00
Ben Laurie
0e3ef596e5
Non-executable stack in asm.
2010-05-05 15:50:13 +00:00
Andy Polyakov
109757d254
aes-ppc.pl: 10% performance improvement on Power6.
2010-04-10 14:53:17 +00:00
Andy Polyakov
6c83629bd9
AESNI engine: add counter mode.
2010-04-10 13:56:59 +00:00
Andy Polyakov
97a6a01f0f
ARMv4 assembler: fix compilation failure. Fix is actually unconfirmed, but
...
I can't think of any other cause for failure
2010-03-29 09:55:19 +00:00
Andy Polyakov
ea746dad5e
Reserve for option to implement AES counter in assembler.
2010-02-23 16:51:24 +00:00
Andy Polyakov
91fdacb2c3
s390x assembler update: add support for run-time facility detection.
2010-01-19 12:24:59 +00:00
Andy Polyakov
cb3b9b1323
Throw in more PA-RISC assembler.
2009-12-27 20:49:40 +00:00
Andy Polyakov
6f766a4181
aesni-x86.pl: eliminate development comments.
2009-11-15 16:40:22 +00:00
Andy Polyakov
c5036d785a
aesni-x86_64.pl: resolve LNK1223 error.
2009-05-02 10:21:29 +00:00
Andy Polyakov
d608b4d662
AES-NI engine jumbo update.
2009-05-02 09:04:17 +00:00
Andy Polyakov
eda2da3235
aesni-x86.pl: fix another typo and add test script.
2009-04-27 15:46:32 +00:00
Andy Polyakov
c0b03d44fb
aesni-x86.pl: fix typos.
2009-04-27 12:50:44 +00:00
Andy Polyakov
d64a7232d4
Intel AES-NI engine.
...
Submitted by: Huang Ying
2009-04-27 05:55:13 +00:00
Andy Polyakov
4e52b9845e
aes-390x.pl: commentary update.
2009-03-17 20:04:11 +00:00
Andy Polyakov
e22b864846
Make SPARC assembler modules *really* Purify-friendly.
2009-03-17 18:31:08 +00:00
Andy Polyakov
4c78bc05c4
Make SPARC assembler Pirify-friendly (Purify can't cope with certain
...
PIC constructs).
2009-03-16 13:32:38 +00:00
Andy Polyakov
8626230a02
s390x assembler pack update.
2009-02-09 15:42:04 +00:00
Andy Polyakov
3b0ee0d2bf
Revisit RT#1801 and complete fix.
2008-12-27 13:32:21 +00:00
Andy Polyakov
0f76640fba
Windows-specific addenum to "engage crypto/modes" commit #17716 .
2008-12-23 15:15:44 +00:00
Andy Polyakov
a11974180f
Patch the omission from prvious commit #17716 .
2008-12-23 11:38:33 +00:00
Andy Polyakov
5d48a66a6a
Engage crypto/modes.
2008-12-23 11:33:01 +00:00
Andy Polyakov
be01f79d3d
x86_64 assembler pack: add support for Win64 SEH.
2008-12-19 11:17:29 +00:00
Andy Polyakov
6786f52ada
SEGV in AES_cbc_encrypt in aes-x86_64 assembler module.
...
PR: 1801
Submitted by: Huang Ying
2008-12-17 14:11:30 +00:00
Bodo Möller
7a76219774
Implement Configure option pattern "experimental-foo"
...
(specifically, "experimental-jpake").
2008-12-02 01:21:39 +00:00
Andy Polyakov
1416aec60d
Update make rules for x86_64 assembler pack.
2008-11-12 08:19:04 +00:00
Andy Polyakov
aa8f38e49b
x86_64 assembler pack to comply with updated styling x86_64-xlate.pl rules.
2008-11-12 08:15:52 +00:00
Ben Laurie
5ee92a5ec1
Fix asserts. Fix incorrect dependency.
2008-11-02 13:15:06 +00:00
Andy Polyakov
f768be81d8
size_t-fy AES, Camellia and RC4.
2008-10-31 19:30:11 +00:00
Andy Polyakov
492279f6f3
AIX build updates.
2008-09-12 14:45:54 +00:00
Lutz Jänicke
4c1a6e004a
Apply mingw patches as supplied by Roumen Petrov an Alon Bar-Lev
...
PR: 1552
Submitted by: Roumen Petrov <openssl@roumenpetrov.info>, "Alon Bar-Lev" <alon.barlev@gmail.com>
2008-04-17 10:19:16 +00:00
Dr. Stephen Henson
fe591284be
Update dependencies.
2008-03-22 18:52:03 +00:00
Dr. Stephen Henson
6e3bc4f073
More support for KEK RecipientInfo.
...
Generalise RecipientInfo and enveloped data handling so applications can
add their own key lookup routines as well as using the standard ones.
2008-03-18 01:00:38 +00:00
Dr. Stephen Henson
8931b30d84
And so it begins...
...
Initial support for CMS.
Add zlib compression BIO.
Add AES key wrap implementation.
Generalize S/MIME MIME code to support CMS and/or PKCS7.
2008-03-12 21:14:28 +00:00
Andy Polyakov
96d13fe62b
Micro-profiling assisted "optimization" for Power6. Essentially it's so
...
to say educational commit. Reordering instructions doesn't improve
performance much, rather exhibits Power6 limitations.
2008-02-06 10:18:19 +00:00
Andy Polyakov
addd641f3a
Unify ppc assembler make rules.
2008-01-13 22:01:30 +00:00
Andy Polyakov
fa8e921f66
Unify x86 perlasm make rules.
2008-01-11 13:15:11 +00:00
Andy Polyakov
ab0ff06205
Make aes-x86_64 work with debug Win64 build.
2008-01-05 18:17:20 +00:00
Andy Polyakov
79eeb47031
Make AES_T[ed] private to aes-586 module.
2008-01-05 08:58:18 +00:00
Andy Polyakov
ca64056836
Engage x86 assembler in Mac OS X build.
2007-12-18 17:33:49 +00:00
Andy Polyakov
ad8bd4ece8
Combat [bogus] relocations in some assember modules.
2007-11-22 20:51:48 +00:00
Andy Polyakov
7722e53f12
Yet another ARM update. It appears to be more appropriate to make
...
developers responsible for -march choice.
2007-09-27 16:27:03 +00:00
Andy Polyakov
d7e915616d
10% performance tweak in 64-bit mode.
2007-09-27 06:19:25 +00:00
Andy Polyakov
d8803d5ae6
aes_ige suffered SIGBUS on RISC platforms.
2007-08-29 21:30:13 +00:00
Andy Polyakov
0ddd3ea217
Make naming more consistent.
2007-08-28 21:02:38 +00:00
Andy Polyakov
55eab3b74b
Make x86_64 modules work under Win64/x64.
2007-08-23 12:01:58 +00:00
Andy Polyakov
983180bb8b
Buglet fixes and minor optimization in aes-x86_86 assembler.
2007-07-30 16:42:57 +00:00
Andy Polyakov
afaad0ada6
AES for IA64 update.
2007-07-27 18:20:52 +00:00
Andy Polyakov
a61710b868
Allow for option to skip hardware support.
2007-07-23 20:38:57 +00:00
Andy Polyakov
a415ebd026
Complete synchronization of aes-x86_64 with aes-586.
2007-07-21 14:20:46 +00:00
Andy Polyakov
52ee3d01ae
Lppc_AES_[en|de]crypt_compact: size optimization.
2007-07-19 15:31:22 +00:00
Andy Polyakov
e59f992be6
Minor optimization in AES_set_encryption_key for x86_64.
2007-07-19 14:59:26 +00:00
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