Matt Caswell
3feb63054a
Added OPENSSL_NO_OCB guards
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 10:29:03 +00:00
Matt Caswell
c857a80c9d
Add support for OCB mode as per RFC7253
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-12-08 10:27:56 +00:00
Rich Salz
8cfe08b4ec
Remove all .cvsignore files
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-11-28 18:32:43 -05:00
Andy Polyakov
d475b2a3bf
Harmonize Tru64 and Linux make rules.
...
RT: 3333,3165
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-09-20 10:20:38 +02:00
Andy Polyakov
b59f92e75d
x86[_64] assembly pack: add Silvermont performance data.
...
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-08-30 19:13:49 +02:00
Rich Salz
17e80c6bd0
RT2308: Add extern "C" { ... } wrapper
...
Add the wrapper to all public header files (Configure
generates one). Don't bother for those that are just
lists of #define's that do renaming.
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-08-27 21:35:32 -04:00
Andy Polyakov
0e716d9207
Engage GHASH for PowerISA 2.0.7.
...
[and split ppccap.c to ppccap.c and ppc_arch.h]
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-20 14:16:31 +02:00
Andy Polyakov
f5b798f50c
Add GHASH for PowerISA 2.0.7.
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-20 14:14:26 +02:00
Dr. Stephen Henson
d31fed73e2
RFC 5649 support.
...
Add support for RFC5649 key wrapping with padding.
Add RFC5649 tests to evptests.txt
Based on PR#3434 contribution by Petr Spacek <pspacek@redhat.com>.
EVP support and minor changes added by Stephen Henson.
Doxygen comment block updates by Tim Hudson.
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-18 21:37:13 +01:00
Dr. Stephen Henson
d12eef1501
Sanity check lengths for AES wrap algorithm.
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-17 12:57:40 +01:00
Andy Polyakov
e91718e80d
Revert "Add GHASH for PowerISA 2.07."
...
This reverts commit 927f2e5dea
.
2014-07-16 13:38:15 +02:00
Andy Polyakov
6cd13f70bb
Revert "Engage GHASH for PowerISA 2.07."
...
This reverts commit 14aaf883d9
.
2014-07-16 13:37:37 +02:00
Andy Polyakov
14aaf883d9
Engage GHASH for PowerISA 2.07.
2014-07-16 08:03:34 +02:00
Andy Polyakov
927f2e5dea
Add GHASH for PowerISA 2.07.
2014-07-16 08:01:41 +02:00
Andy Polyakov
1b0fe79f3e
x86_64 assembly pack: improve masm support.
2014-07-09 20:08:01 +02:00
Andy Polyakov
021e5043e5
Please Clang's sanitizer.
...
PR: #3424,#3423,#3422
2014-07-08 22:24:44 +02:00
Andy Polyakov
a356e488ad
x86_64 assembly pack: refine clang detection.
2014-06-28 17:23:21 +02:00
Andy Polyakov
7eb0488280
x86_64 assembly pack: addendum to last clang commit.
2014-06-24 08:37:05 +02:00
Andy Polyakov
ac171925ab
x86_64 assembly pack: allow clang to compile AVX code.
2014-06-24 08:24:25 +02:00
Andy Polyakov
0f777aeb50
ARMv8 assembly pack: add Cortex performance numbers.
2014-06-24 08:06:05 +02:00
Andy Polyakov
1cf8f57b43
ghash-x86_64.pl: optimize for upcoming Atom.
2014-06-11 11:34:18 +02:00
Andy Polyakov
5dcf70a1c5
ARM assembly pack: get ARMv7 instruction endianness right.
...
Pointer out and suggested by: Ard Biesheuvel.
2014-06-06 21:27:18 +02:00
Andy Polyakov
82741e9c89
Engage GHASH for ARMv8.
2014-06-06 20:48:35 +02:00
Andy Polyakov
2d5a799d27
Add GHASH for ARMv8 Crypto Extension.
...
Result of joint effort with Ard Biesheuvel.
2014-06-06 20:43:02 +02:00
Andy Polyakov
bd227733b9
C64x+ assembly pack: make it work with older toolchain.
2014-05-04 16:38:32 +02:00
Andy Polyakov
f8cee9d081
bn/asm/armv4-gf2m.pl, modes/asm/ghash-armv4.pl: faster multiplication
...
algorithm suggested in following paper:
Câmara, D.; Gouvêa, C. P. L.; López, J. & Dahab, R.: Fast Software
Polynomial Multiplication on ARM Processors using the NEON Engine.
http://conradoplg.cryptoland.net/files/2010/12/mocrysen13.pdf
2014-04-24 10:24:53 +02:00
Andy Polyakov
997d1aac7c
crypto/modes/gcm128.c: more strict aliasing fixes.
2014-04-06 17:19:54 +02:00
Dr. Stephen Henson
4cfeb00be9
make depend
2014-02-19 20:09:08 +00:00
Andy Polyakov
98e143f118
ghash-x86[_64].pl: ~15% improvement on Atom Silvermont
...
(other processors unaffected).
2014-02-13 14:37:28 +01:00
Andy Polyakov
d162584b11
modes/asm/ghash-s390x.pl: +15% performance improvement on z10.
2014-02-02 00:09:17 +01:00
Andy Polyakov
5b63a39241
modes/asm/ghash-alpha.pl: fix typo.
2013-11-12 21:52:18 +01:00
Andy Polyakov
d1cf23ac86
Make Makefiles OSF-make-friendly.
...
PR: 3165
2013-11-12 21:51:37 +01:00
Andy Polyakov
33446493f4
modes/asm/ghash-alpha.pl: make it work with older assembler for real.
...
PR: 3165
2013-11-09 11:41:59 +01:00
Andy Polyakov
d24d1d7daf
modes/asm/ghash-alpha.pl: make it work with older assembler.
...
PR: 3165
2013-11-08 22:56:44 +01:00
Andy Polyakov
039081b809
Initial aarch64 bits.
2013-10-13 19:15:15 +02:00
Andy Polyakov
7a1a12232a
crypto/modes/asm/aesni-gcm-x86_64.pl: minor optimization.
...
Avoid occasional up to 8% performance drops.
2013-09-09 21:43:21 +02:00
Veres Lajos
478b50cf67
misspellings fixes by https://github.com/vlajos/misspell_fixer
2013-09-05 21:39:42 +01: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
02450ec69d
PA-RISC assembler pack: switch to bve in 64-bit builds.
...
PR: 3074
2013-06-18 10:37:00 +02:00
Andy Polyakov
b42759158d
ghash-x86_64.pl: add Haswell performance data.
2013-06-10 22:25:12 +02:00
Andy Polyakov
3bdd80521a
crypto/modes/modes_lcl.h: let STRICT_ALIGNMENT be on ARMv7.
...
While ARMv7 in general is capable of unaligned access, not all instructions
actually are. And trouble is that compiler doesn't seem to differentiate
those capable and incapable of unaligned access. Side effect is that kernel
goes into endless loop retrying same instruction triggering unaligned trap.
Problem was observed in xts128.c and ccm128.c modules. It's possible to
resolve it by using (volatile u32*) casts, but letting STRICT_ALIGNMENT
be feels more appropriate.
2013-04-13 20:57:37 +02:00
Andy Polyakov
64f7e2c4c0
gcm128.c: fix linking problems in 32-bit Windows build.
2013-04-04 15:54:58 +02:00
Andy Polyakov
4e049c5259
Add AES-NI GCM stitch.
2013-03-29 20:45:33 +01:00
Andy Polyakov
1da5d3029e
ghash-x86_64.pl: add AVX code path.
2013-03-24 23:44:35 +01:00
Andy Polyakov
fbf7c44bbf
ghash-x86_64.pl: minor optimization.
2013-03-19 20:02:11 +01:00
Andy Polyakov
28997596f2
ghash-x86_64.pl: fix length handling bug.
...
Thanks to Shay Gueron & Vlad Krasnov for report.
2013-03-06 10:42:21 +01:00
Ben Laurie
975dfb1c6c
make depend.
2013-02-21 18:17:38 +00:00
Andy Polyakov
273a808180
ghash-x86[_64].pl: code refresh.
2013-02-14 16:28:09 +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
a6bbbf2ff5
Make "make depend" work on MacOS out of the box.
2013-01-19 14:14:30 +00:00
Ben Laurie
b204ab6506
Update ignores.
2012-12-11 15:52:10 +00:00
Andy Polyakov
3766e7ccab
ghash-sparcv9.pl: shave off one more xmulx, improve T3 performance by 7%.
2012-12-04 20:21:24 +00:00
Andy Polyakov
904732f68b
C64x+ assembly pack: improve EABI support.
2012-11-28 13:19:10 +00:00
Andy Polyakov
96a4cf8c29
crypto/modes: even more strict aliasing fixes [and fix bug in cbc128.c from
...
previous cbc128.c commit].
2012-11-05 17:03:39 +00:00
Ben Laurie
da01515c40
More strict aliasing fix.
2012-11-05 14:23:55 +00:00
Andy Polyakov
c0832990f5
cbc128.c: fix strict aliasing warning.
2012-11-05 10:04:02 +00:00
Andy Polyakov
24798c5e59
ghash-sparcv9.pl: 22% improvement on T4.
2012-11-05 08:47:26 +00:00
Ben Laurie
53d6bf40c1
Fix gcc 4.8 warning (strict aliasing violation).
2012-11-05 01:59:33 +00:00
Andy Polyakov
23328d4b27
ghash-sparcv9.pl: add VIS3 code path.
2012-10-24 08:21:10 +00:00
Andy Polyakov
9ddd859d2a
gcm128.c: fix AAD-only case with AAD length not divisible by 16.
...
PR: 2859
Submitted by: John Foley
2012-08-13 15:07:37 +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
Andy Polyakov
8d1b199d26
Revert random changes from commit#22606.
2012-06-04 22:12:10 +00:00
Ben Laurie
71fa451343
Version skew reduction: trivia (I hope).
2012-06-03 22:00:21 +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
26e6bac143
ghash-s390x.pl: fix typo [that can induce SEGV in 31-bit build].
2012-04-12 06:44:34 +00:00
Andy Polyakov
f62f792057
modes_lcl.h: make it work on i386.
...
PR: 2780
2012-03-31 17:02:46 +00:00
Andy Polyakov
23a05fa0c1
modes/gcm128.c: fix self-test.
2012-03-29 18:25:38 +00:00
Andy Polyakov
5c88dcca5b
ghash-x86.pl: omit unreferenced rem_8bit from no-sse2 build.
2012-03-13 19:43:42 +00:00
Andy Polyakov
98909c1d5b
ghash-x86.pl: engage original MMX version in no-sse2 builds.
2012-01-25 17:56:08 +00:00
Andy Polyakov
0ecedec82d
Fix OPNESSL vs. OPENSSL typos.
...
PR: 2613
Submitted by: Leena Heino
2012-01-15 13:39:10 +00:00
Andy Polyakov
03e389cf04
Allow for dynamic base in Win64 FIPS module.
2011-09-14 20:48:49 +00:00
Bodo Möller
ae53b299fa
make update
2011-09-05 09:46:15 +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
87873f4328
ARM assembler pack: add platform run-time detection.
2011-07-17 17:40:29 +00:00
Andy Polyakov
2b9a8ca15b
x86gas.pl: add palignr and move pclmulqdq.
2011-05-16 18:07:00 +00:00
Andy Polyakov
b5c6aab57e
x86_64-xlate.pl: allow "base-less" effective address, add palignr, move
...
pclmulqdq.
2011-05-16 17:44:38 +00:00
Andy Polyakov
56c5f703c1
IA-64 assembler pack: fix typos and make it work on HP-UX.
2011-05-07 20:36:05 +00:00
Andy Polyakov
c7d0d0ae09
xts128.c: minor optimizaton.
2011-05-04 20:57:43 +00:00
Andy Polyakov
3f0d14055b
gcm128.c: minor optimization.
2011-04-24 11:10:54 +00:00
Andy Polyakov
f855b9d719
ccm128.c: add CRYPTO_ccm128_[en|de]crypt_ccm64 and minor optimization.
2011-04-24 11:10:14 +00:00
Andy Polyakov
9e5fe439b4
xts128.c: fix bug introduced in commit#20704. Bug affected encryption of
...
vectors whose lenght was not multiples of 16 bytes.
2011-04-23 09:15:03 +00:00
Dr. Stephen Henson
84ed90f88b
Fix WIN32 warning.
2011-04-21 14:54:33 +00:00
Andy Polyakov
daaf5088fd
xts128.c: minor optimization and clarified prototype.
2011-04-20 08:13:58 +00:00
Dr. Stephen Henson
98279c1629
Typo.
2011-04-18 21:01:24 +00:00
Andy Polyakov
a0cc46f8e4
ccm128.c: fix Win32 compiler warning.
2011-04-18 20:19:23 +00:00
Andy Polyakov
5f1b10ed2e
ccm128.c: fix STRICT_ALIGNMENT another bug in CRYPTO_ccm128_decrypt.
2011-04-18 19:17:28 +00:00
Dr. Stephen Henson
2391681082
Initial untested CCM support via EVP.
2011-04-18 14:25:11 +00:00
Dr. Stephen Henson
6386b1b34d
Compile ccm128.c, move some structures to modes_lcl.h add prototypes.
2011-04-18 13:15:37 +00:00
Andy Polyakov
7e5b4d6779
ccm128.c: minor optimization and bugfix in CRYPTO_ccm128_[en|de]crypt.
2011-04-16 22:57:58 +00:00
Dr. Stephen Henson
32a2d8ddfe
Provisional AES XTS support.
2011-04-12 23:21:33 +00:00
Andy Polyakov
7af0400297
gcm128.c: fix shadow warnings.
2011-04-04 15:24:09 +00:00
Andy Polyakov
1e86318091
ARM assembler pack: profiler-assisted optimizations and NEON support.
2011-04-01 20:58:34 +00:00
Andy Polyakov
d8d958323b
gcm128.c: tidy up, minor optimization, rearrange gcm128_context.
2011-04-01 20:52:35 +00:00
Richard Levitte
c6dbe90895
make update
2011-03-24 22:59:02 +00:00
Ben Laurie
edc032b5e3
Add SRP support.
2011-03-12 17:01:19 +00:00
Andy Polyakov
bc5b136c5c
ghash-x86.pl: optimize for Sandy Bridge.
2011-03-04 13:21:41 +00:00
Andy Polyakov
16cb0d9591
xts128.c: minor optimization.
2011-03-04 13:17:19 +00:00
Andy Polyakov
0ab8fd58e1
s390x assembler pack: tune-up and support for new z196 hardware.
2011-03-04 13:09:16 +00:00