Andy Polyakov
066caf0551
aes/asm/*-armv*.pl: compensate for inconsistencies in tool-chains.
...
Suggested by: Ard Biesheuvel
2013-10-01 20:33:06 +02:00
Andy Polyakov
e0202d946d
aes-armv4.pl, bsaes-armv7.pl: add Linux kernel and Thumb2 support.
...
Submitted by: Ard Biesheuvel
2013-09-20 13:22:57 +02:00
Andy Polyakov
612f4e2384
bsaes-armv7.pl: remove partial register operations in CTR subroutine.
2013-09-15 19:47:51 +02:00
Andy Polyakov
29f41e8a80
bsaes-armv7.pl: remove byte order dependency and minor optimization.
2013-09-15 19:44:43 +02:00
Ard Biesheuvel
a2ea9f3ecc
Added support for ARM/NEON based bit sliced AES in XTS mode
...
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
2013-09-15 19:37:16 +02:00
Dr. Stephen Henson
97cf1f6c28
EVP support for wrapping algorithms.
...
Add support for key wrap algorithms via EVP interface.
Generalise AES wrap algorithm and add to modes, making existing
AES wrap algorithm a special case.
Move test code to evptests.txt
2013-07-17 21:45:00 +01:00
Andy Polyakov
42386fdb62
aesni-sha256-x86_64.pl: fix typo in Windows SEH.
2013-06-30 23:06:28 +02:00
Andy Polyakov
02450ec69d
PA-RISC assembler pack: switch to bve in 64-bit builds.
...
PR: 3074
2013-06-18 10:37:00 +02:00
Andy Polyakov
3b848d3401
aesni-sha1-x86_64.pl: update performance data.
2013-06-10 22:35:22 +02:00
Andy Polyakov
42b9a4177b
aesni-sha256-x86_64.pl: harmonize with latest sha512-x86_64.pl.
2013-06-10 22:34:06 +02:00
Andy Polyakov
36df342f9b
aesni-x86_64.pl: optimize XTS.
...
PR: 3042
2013-05-25 19:23:09 +02:00
Andy Polyakov
4df2280b4f
aesni-sha1-x86_64.pl: Atom-specific optimization.
2013-05-25 19:08:39 +02:00
Andy Polyakov
988d11b641
vpaes-x86[_64].pl: minor Atom-specific optimization.
2013-05-25 18:57:03 +02:00
Andy Polyakov
8a97a33063
Add AES-SHA256 stitch.
2013-05-13 22:49:58 +02:00
Andy Polyakov
cd54249c21
aesni-x86_64.pl: minor CTR performance improvement.
2013-05-13 15:49:03 +02:00
Andy Polyakov
9575d1a91a
bsaes-armv7.pl: add bsaes_cbc_encrypt and bsaes_ctr32_encrypt_blocks.
...
Submitted by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Contributor claims ~50% improvement in CTR and ~9% in CBC decrypt
on Cortex-A15.
2013-04-23 17:52:14 +02:00
Andy Polyakov
75fe422323
bsaes-armv7.pl: take it into build loop.
2013-04-23 17:49:54 +02:00
Andy Polyakov
73325b221c
aesni-x86_64.pl: optimize CBC decrypt.
...
Give CBC decrypt approximately same treatment as to CTR and collect 25%.
2013-04-04 15:56:23 +02:00
Andy Polyakov
b4a9d5bfe8
aesni-x86_64.pl: fix typo and optimize small block performance.
2013-03-29 18:54:24 +01:00
Andy Polyakov
6c79faaa9d
aesni-x86_64.pl: optimize CTR even further.
...
Based on suggestions from Shay Gueron and Vlad Krasnov.
PR: 3021
2013-03-26 14:29:18 +01:00
Andy Polyakov
1bc4d009e1
aesni-x86_64.pl: optimize CTR even further.
2013-03-19 20:03:02 +01:00
Ben Laurie
4e2322892b
Override local vars for MINFO build.
2013-03-04 14:31:18 +00:00
Andy Polyakov
7c9e81be40
[aesni-]sha1-x86_64.pl: code refresh.
2013-02-14 16:14:02 +01:00
Andy Polyakov
46bf83f07a
x86_64 assembly pack: make Windows build more robust.
...
PR: 2963 and a number of others
2013-01-22 22:27:28 +01:00
Ben Laurie
b204ab6506
Update ignores.
2012-12-11 15:52:10 +00:00
Andy Polyakov
8df400cf8d
aes-s390x.pl: fix XTS bugs in z196-specific code path.
2012-12-05 17:44:45 +00:00
Andy Polyakov
9282c33596
aesni-x86_64.pl: CTR face lift, +25% on Bulldozer.
2012-12-01 18:20:39 +00:00
Andy Polyakov
c3cddeaec8
aes-s390x.pl: harmonize software-only code path [and minor optimization].
2012-12-01 11:06:19 +00:00
Andy Polyakov
904732f68b
C64x+ assembly pack: improve EABI support.
2012-11-28 13:19:10 +00:00
Andy Polyakov
cf5ecc3e1f
Update support for Intel compiler: add linux-x86_64-icc and fix problems.
2012-11-28 13:05:13 +00:00
Andy Polyakov
cd68694646
AES for SPARC T4: add XTS, reorder subroutines to improve TLB locality.
2012-11-24 21:55:23 +00:00
Dr. Stephen Henson
98a7edf9f0
make depend
2012-11-19 13:18:09 +00:00
Andy Polyakov
98dc178494
aes-x86_64.pl: Atom-specific optimizations, +10%.
...
vpaes-x86_64.pl: minor performance squeeze.
2012-11-12 17:52:41 +00:00
Andy Polyakov
89f1eb8213
aes-586.pl: Atom-specific optimization, +44/29%, minor improvement on others.
...
vpaes-x86.pl: minor performance squeeze.
2012-11-12 17:50:19 +00:00
Andy Polyakov
8ed11a815e
[aes|cmll]t4-sparcv9.pl: unify argument handling.
2012-10-25 12:03:41 +00:00
Andy Polyakov
eec82a0e1f
[aes|cmll]t4-sparcv9.pl: addendum to previous sparcv9_modes.pl commit.
2012-10-14 14:42:27 +00:00
Andy Polyakov
54a1f4480e
aest4-sparcv9.pl: split it to AES-specific and reusable part.
2012-10-11 18:30:35 +00:00
Andy Polyakov
c5f6da54fc
Add SPARC T4 AES support.
...
Submitted by: David Miller
2012-10-06 18:08:09 +00:00
Andy Polyakov
5cc2159526
MIPS assembly pack: add support for SmartMIPS ASE.
2012-09-18 12:52:23 +00:00
Andy Polyakov
8df5518bd9
MIPS assembly pack: add MIPS[32|64]R2 code.
2012-09-15 11:18:20 +00:00
Andy Polyakov
9b222748e7
aes-mips.pl: interleave load and integer instructions for better performance.
2012-09-15 11:15:02 +00:00
Andy Polyakov
e7db9896bb
bsaes-armv7.pl: closest shave. While 0.3 cpb improvement on S4 appears
...
insignificant, it's actually 4 cycles less for 14 instructions sequence!
2012-09-07 12:29:18 +00:00
Andy Polyakov
4f16215b9d
bsaes-armv7.pl: even closer shave.
2012-09-04 14:39:05 +00:00
Andy Polyakov
a903e6919c
bsaes-armv7.pl: minor performance squeeze on Snapdragon S4.
2012-09-04 08:26:50 +00:00
Andy Polyakov
1a002d88ad
MIPS assembly pack: assign default value to $flavour.
2012-08-17 09:10:31 +00:00
Andy Polyakov
6251989eb6
x86_64 assembly pack: make it possible to compile with Perl located on
...
path with spaces.
PR: 2835
2012-06-27 10:08:23 +00:00
Andy Polyakov
d2e1803197
x86[_64] assembly pack: update benchmark results.
2012-06-12 14:18:21 +00:00
Ben Laurie
71fa451343
Version skew reduction: trivia (I hope).
2012-06-03 22:00:21 +00:00
Andy Polyakov
6a40ebe86b
aesni-x86_64.pl: make it possibel to use in Linux kernel.
2012-05-24 07:39:44 +00:00
Andy Polyakov
f9c5e5d92e
perlasm: fix symptom-less bugs, missing semicolons and 'my' declarations.
2012-04-28 10:36:58 +00:00
Andy Polyakov
3e181369dd
C64x+ assembler pack. linux-c64xplus build is *not* tested nor can it be
...
tested, because kernel is not in shape to handle it *yet*. The code is
committed mostly to stimulate the kernel development.
2012-04-18 13:01:36 +00:00
Andy Polyakov
b1fd0ccb38
aes-s390x.pl: fix crash in AES_set_decrypt_key in linux32-s390x build.
2012-04-09 15:12:13 +00:00
Andy Polyakov
45cd45bbbc
aes-armv4.pl: make it more foolproof [inspired by aes-s390x.pl in 1.0.1].
2012-04-05 08:30:22 +00:00
Andy Polyakov
bc9583efa2
aes-s390x.pl: make it more foolproof [inspired by 1.0.1].
2012-04-05 08:22:09 +00:00
Andy Polyakov
5db9645f1b
vpaes-x86[_64].pl: handle zero length in vpaes_cbc_encrypt.
...
PR: 2775
2012-03-31 16:53:34 +00:00
Andy Polyakov
df27a35137
vpaes-x86_64.pl: out-of-date Apple assembler fails to calculate
...
distance between local labels.
PR: 2762
2012-03-17 16:06:31 +00:00
Andy Polyakov
f9ef874a21
bsaes-x86_64.pl: optimize key conversion.
2012-03-16 21:44:19 +00:00
Andy Polyakov
442c9f13d4
bsaes-armv7.pl: optmize Sbox and key conversion.
2012-03-16 21:41:48 +00:00
Andy Polyakov
358c372d16
bsaes-armv7.pl: change preferred contact.
2012-03-03 13:04:53 +00:00
Andy Polyakov
c4a52a6dca
Add bit-sliced AES for ARM NEON. This initial version is effectively
...
reference implementation, it does not interface to OpenSSL yet.
2012-03-03 12:33:28 +00:00
Andy Polyakov
23b93b587b
aes-ppc.pl, sha512-ppc.pl: comply even with Embedded ABI specification
...
(most restrictive about r2 and r13 usage).
2012-01-13 09:16:52 +00:00
Andy Polyakov
e255024bf7
aes-sparcv9.pl: clean up regexp
...
PR: 2685
2012-01-11 15:30:53 +00:00
Andy Polyakov
0e1467a64c
vpaes-x86.pl: revert previous commit and solve the problem through x86masm.pl.
...
PR: 2657
2011-12-15 22:20:05 +00:00
Andy Polyakov
405edfdcab
vpaes-x86.pl: portability fix.
...
PR: 2657
2011-12-14 21:29:32 +00:00
Andy Polyakov
d127ef78ad
bsaes-x86_64.pl: fix buffer overrun in tail processing.
2011-11-16 23:34:01 +00:00
Andy Polyakov
fe06864836
bsaes-x86_64.pl: add Win64 SEH and "hadrware" calls to aes-x86_64.pl.
2011-11-13 20:33:41 +00:00
Andy Polyakov
60d4e99cf3
bsaes-x86_64.pl: add bsaes_xts_[en|de]crypt.
2011-11-10 22:41:31 +00:00
Andy Polyakov
a75a52a43e
bsaes-x86_64.pl: add CBC decrypt and engage it in e_aes.c.
2011-10-30 12:15:56 +00:00
Andy Polyakov
b08259cdfe
bsaes-x86_64.pl: optimize InvMixColumns.
2011-10-29 11:56:21 +00:00
Andy Polyakov
28507577b1
bsaes-x86_64.pl: add decryption procedure (with unoptimized reference
...
InvMixColumns).
2011-10-29 11:47:20 +00:00
Andy Polyakov
227a822ab6
vxworks-mips: unify and add assembler.
2011-10-19 21:49:20 +00:00
Andy Polyakov
5a326467dc
bsaes-x86_64.pl: make it work with ml64.
2011-10-18 09:22:04 +00:00
Andy Polyakov
3b7c14bb90
[bs|vp]aes-x86[_64].pl: typos and clarifications.
2011-10-18 08:03:02 +00:00
Andy Polyakov
993adc0531
Engage bsaes-x86_64.pl, bit-sliced AES.
2011-10-17 17:10:54 +00:00
Andy Polyakov
9ee5916d97
aesni-x86[_64].pl: fix bug in CCM code.
2011-10-14 09:15:19 +00:00
Andy Polyakov
112726486d
bsaes-x86_64.pl: add due credit.
2011-09-27 19:34:40 +00:00
Andy Polyakov
4ec93a10bd
Add bit-sliced AES x86_64 assembler, see http://homes.esat.kuleuven.be/~ekasper/#software for background information. It's not integrated into build system yet.
2011-09-25 15:31:51 +00:00
Andy Polyakov
2b1f17f83f
Make latest assembler additions (vpaes and e_padlock) work in Windows build.
2011-09-18 15:40:11 +00:00
Andy Polyakov
8ca28da0a7
Integrate Vector Permutation AES into build system.
2011-09-15 20:22:59 +00:00
Andy Polyakov
03e389cf04
Allow for dynamic base in Win64 FIPS module.
2011-09-14 20:48:49 +00:00
Andy Polyakov
543dfa9f0e
vpaes-x86[_64]*.pl: fix typo.
2011-09-12 12:50:00 +00:00
Andy Polyakov
a87ff751b7
Add so called Vector Permutation AES x86[_64] assembler, see
...
http://crypto.stanford.edu/vpaes/ for background information.
It's not integrated into build system yet.
2011-09-12 08:25:14 +00:00
Andy Polyakov
c608171d9c
Add RC4-MD5 and AESNI-SHA1 "stitched" implementations.
2011-08-23 20:51:38 +00:00
Andy Polyakov
267b481c47
aes/asm/aesni-*.pl: fix CCM and further optimize it.
...
modes/ccm128.c: minor branch optimization.
2011-08-07 17:47:56 +00:00
Andy Polyakov
7b41f350d4
aes-ppc.pl: minor optimization favoring embedded processors (performance
...
of "big" processors is unaffected).
2011-07-20 22:16:27 +00:00
Andy Polyakov
be6ddecb8b
crypto/aes/Makefile: make it work on IRIX.
2011-06-28 12:55:39 +00:00
Andy Polyakov
0c237e42a4
s390x assembler pack: add s390x-gf2m.pl and harmonize AES_xts_[en|de]crypt.
2011-06-27 10:00:31 +00:00
Andy Polyakov
0a9a692e4e
Minor x86_64 perlasm update.
2011-06-27 09:45:10 +00:00
Andy Polyakov
8da721ee2b
aesni-x86[_64].pl: relax alignment requirement.
2011-05-30 09:15:16 +00:00
Andy Polyakov
cf3aeae419
aes-ppc.pl: handle unaligned data on page boundaries.
2011-05-28 09:41:36 +00:00
Andy Polyakov
6715034002
PPC assembler pack: adhere closer to ABI specs, add PowerOpen traceback data.
2011-05-27 13:32:34 +00:00
Andy Polyakov
f8501464cc
aesni-x86[_64].pl: optimize for Sandy Bridge and add XTS mode.
2011-05-22 18:38:00 +00:00
Andy Polyakov
fb2f3411ea
aesni-x86_64.pl: make it compile on MacOS X.
2011-05-18 17:05:24 +00:00
Andy Polyakov
1e86318091
ARM assembler pack: profiler-assisted optimizations and NEON support.
2011-04-01 20:58:34 +00:00
Andy Polyakov
0ab8fd58e1
s390x assembler pack: tune-up and support for new z196 hardware.
2011-03-04 13:09:16 +00:00
Dr. Stephen Henson
b7056b6414
Update dependencies.
2011-02-21 17:51:59 +00:00
Dr. Stephen Henson
d749e1080a
Experimental symbol renaming to avoid clashes with regular OpenSSL.
...
Make sure crypto.h is included first in any affected files.
2011-02-16 14:40:06 +00:00
Dr. Stephen Henson
df6de39fe7
Change AR to ARX to allow exclusion of fips object modules
2011-01-26 16:08:08 +00:00
Andy Polyakov
e822c756b6
s390x assembler pack: adapt for -m31 build, see commentary in Configure
...
for more details.
2010-11-29 20:52:43 +00:00
Andy Polyakov
bb55003882
Add aes-mips.pl assembler module.
2010-10-21 15:56:55 +00:00