Geoff Thorpe
d8afda60a9
bignum: allow concurrent BN_MONT_CTX_set_locked()
...
The lazy-initialisation of BN_MONT_CTX was serialising all threads, as
noted by Daniel Sands and co at Sandia. This was to handle the case that
2 or more threads race to lazy-init the same context, but stunted all
scalability in the case where 2 or more threads are doing unrelated
things! We favour the latter case by punishing the former. The init work
gets done by each thread that finds the context to be uninitialised, and
we then lock the "set" logic after that work is done - the winning
thread's work gets used, the losing threads throw away what they've done.
Signed-off-by: Geoff Thorpe <geoff@openssl.org>
2014-05-06 18:10:21 -04:00
Dr. Stephen Henson
4b7a4ba29c
Fix for CVE-2014-0076
...
Fix for the attack described in the paper "Recovering OpenSSL
ECDSA Nonces Using the FLUSH+RELOAD Cache Side-channel Attack"
by Yuval Yarom and Naomi Benger. Details can be obtained from:
http://eprint.iacr.org/2014/140
Thanks to Yuval Yarom and Naomi Benger for discovering this
flaw and to Yuval Yarom for supplying a fix.
(cherry picked from commit 2198be3483
)
Conflicts:
CHANGES
2014-03-12 14:19:54 +00:00
Dr. Stephen Henson
c776a3f398
make update
2014-01-06 13:33:27 +00:00
Dr. Stephen Henson
60df657b3a
make update
2013-12-08 13:23:14 +00:00
Andy Polyakov
accb3007ac
bn/asm/x86_64-mont5.pl: comply with Win64 ABI.
...
PR: 3189
Submitted by: Oscar Ciurana
(cherry picked from commit c5d5f5bd0f
)
2013-12-04 00:03:46 +01:00
Andy Polyakov
7ed244a0b3
Make Makefiles OSF-make-friendly.
...
PR: 3165
(cherry picked from commit d1cf23ac86
)
2013-11-12 22:01:20 +01:00
Andy Polyakov
68dd8512b7
MIPS assembly pack: get rid of deprecated instructions.
...
Latest MIPS ISA specification declared 'branch likely' instructions
obsolete. To makes code future-proof replace them with equivalent.
(cherry picked from commit 0c2adb0a9b
)
2013-10-13 13:19:12 +02:00
Andy Polyakov
cd2693862b
PA-RISC assembler pack: switch to bve in 64-bit builds.
...
PR: 3074
(cherry picked from commit 02450ec69d
)
2013-06-30 23:15:53 +02:00
Andy Polyakov
bca0d7fdb5
x86_64-gf2m.pl: fix typo.
...
(cherry picked from commit 342dbbbe4e
)
2013-03-01 22:38:11 +01:00
Andy Polyakov
bc4ae2cb0b
x86_64-gf2m.pl: add missing Windows build fix for #2963 .
...
PR: 3004
(cherry picked from commit 7c43601d44
)
2013-03-01 21:58:08 +01:00
Andy Polyakov
ef4b9f001a
bn_nist.c: cumulative update from master.
...
PR: 2981, 2837
2013-02-16 11:40:35 +01:00
Andy Polyakov
b2226c6c83
bn_word.c: fix overflow bug in BN_add_word.
...
(cherry picked from commit 134c00659a
)
2013-02-02 22:39:00 +01:00
Andy Polyakov
024de2174b
x86_64 assembly pack: keep making Windows build more robust.
...
PR: 2963 and a number of others
(cherry picked from commit 4568182a8b
)
2013-02-02 22:26:20 +01:00
Andy Polyakov
b286a96811
x86_64 assembly pack: make Windows build more robust [from master].
...
PR: 2963 and a number of others
2013-01-22 22:54:04 +01:00
Andy Polyakov
2a2df2e9f2
bn/asm/mips.pl: hardwire local call to bn_div_words.
2013-01-22 21:16:51 +01:00
Andy Polyakov
554cf97f03
bn_lcl.h: gcc removed support for "h" constraint, which broke inline
...
assembler [from HEAD].
2012-09-01 13:23:05 +00:00
Andy Polyakov
e1e882a368
x86_64 assembly pack: make it possible to compile with Perl located
...
on path with spaces [from HEAD].
PR: 2835
2012-06-27 12:58:03 +00:00
Ben Laurie
af454b5bb0
Reduce version skew.
2012-06-08 09:18:47 +00:00
Andy Polyakov
0a5575f3f6
bn/bn_gf2m.c: make new BN_GF2m_mod_inv work with BN_DEBUG_RAND [from HEAD].
2012-03-30 17:40:52 +00:00
Andy Polyakov
d06f047b04
bn_nist.c: make new optimized code dependent on BN_LLONG [from HEAD].
2012-02-02 07:46:19 +00:00
Dr. Stephen Henson
7b23c126e6
undef some symbols that cause problems with make depend for fips builds
2012-01-18 01:40:36 +00:00
Andy Polyakov
7b467c6b81
modexp512-x86_64.pl: Solaris portability fix [from HEAD].
...
PR: 2656
2011-12-12 15:12:09 +00:00
Andy Polyakov
8ee0591f28
x86-mont.pl: fix bug in integer-only squaring path.
...
PR: 2648
2011-12-09 14:26:28 +00:00
Ben Laurie
825e1a7c56
Fix warnings.
2011-12-02 14:39:41 +00:00
Andy Polyakov
62f685a9cd
bn/asm/mips.pl: fix typos [from HEAD].
2011-12-01 12:17:20 +00:00
Andy Polyakov
2357ae17e7
x86 assembler pack update from HEAD.
2011-11-14 21:06:50 +00:00
Andy Polyakov
9f1c5491d2
BN update from HEAD.
2011-11-14 21:05:42 +00:00
Andy Polyakov
70b52222f5
x86_64 assembler pack update from HEAD.
2011-11-14 21:01:21 +00:00
Andy Polyakov
88cb59727c
ARM assembler pack update from HEAD.
2011-11-14 20:58:01 +00:00
Andy Polyakov
b66723b23e
MIPS assembler pack update from HEAD.
2011-11-14 20:55:24 +00:00
Andy Polyakov
cf96d71c22
PPC assembler pack update from HEAD.
2011-11-14 20:54:17 +00:00
Andy Polyakov
1a111921da
PA-RISC assembler pack update from HEAD.
2011-11-14 20:50:15 +00:00
Andy Polyakov
9833757b5d
s390x assembler pack update from HEAD.
2011-11-14 20:47:22 +00:00
Andy Polyakov
4195343c0d
IA64 assembler pack update from HEAD.
2011-11-14 20:45:57 +00:00
Andy Polyakov
4afba1f3d9
Mafiles updates to accomodate assembler update from HEAD.
2011-11-14 20:42:22 +00:00
Andy Polyakov
02597f2885
ppc.pl: fix bug in bn_mul_comba4 [from HEAD].
...
PR: 2636
Submitted by: Charles Bryant
2011-11-05 10:16:30 +00:00
Bodo Möller
2d95ceedc5
BN_BLINDING multi-threading fix.
...
Submitted by: Emilia Kasper (Google)
2011-10-19 14:58:59 +00:00
Andy Polyakov
2bfb23f102
modexp512-x86_64.pl: make it work with ml64 [from HEAD].
2011-08-19 06:31:27 +00:00
Andy Polyakov
8ff5c8874f
Alpha assembler fixed from HEAD.
...
PR: 2577
2011-08-12 12:31:08 +00:00
Andy Polyakov
1190d3f442
Add RSAX builtin engine [from HEAD].
2011-07-20 21:51:33 +00:00
Dr. Stephen Henson
dcbe723bc5
PR: 2540
...
Submitted by: emmanuel.azencot@bull.net
Reviewed by: steve
Prevent infinite loop in BN_GF2m_mod_inv().
2011-06-22 15:23:40 +00:00
Dr. Stephen Henson
f610a516a0
Backport from HEAD:
...
New option to disable characteristic two fields in EC code.
Make no-ec2m work on Win32 build.
2011-06-06 11:49:36 +00:00
Richard Levitte
9f427a52cb
make update (1.0.1-stable)
...
This meant a slight renumbering in util/libeay.num due to symbols
appearing in 1.0.0-stable. However, since there's been no release on
this branch yet, it should be harmless.
2011-03-23 00:06:04 +00:00
Richard Levitte
01d2e27a2b
Apply all the changes submitted by Steven M. Schweda <sms@antinode.info>
2011-03-19 09:47:47 +00:00
Andy Polyakov
2bbd82cf24
s390x-mont.pl: optimize for z196.
2011-03-04 13:13:04 +00:00
Dr. Stephen Henson
d5654d2b20
Move BN_options function to bn_print.c to remove dependency for BIO printf
...
routines from bn_lib.c
2011-01-25 17:10:42 +00:00
Dr. Stephen Henson
8ed8454115
add X9.31 prime generation routines from 0.9.8 branch
2011-01-09 13:22:47 +00:00
Andy Polyakov
7665b436f0
s390x.S: fix typo in bn_mul_words [from HEAD].
...
PR: 2380
2010-11-22 21:57:29 +00:00
Dr. Stephen Henson
7770da4b41
PR: 2295
...
Submitted by: Alexei Khlebnikov <alexei.khlebnikov@opera.com>
Reviewed by: steve
OOM checking. Leak in OOM fix. Fall-through comment. Duplicate code
elimination.
2010-10-11 23:25:23 +00:00
Andy Polyakov
9e15cc606e
Alpha assembler pack: adapt for Linux [from HEAD].
...
PR: 2335
2010-09-13 20:32:53 +00:00