boringssl/crypto
Brian Smith a432757acb Use BN_mod_inverse_odd instead of |BN_mod_inverse| for ECC.
BN_mod_inverse_odd was always being used on 64-bit platforms and was being used
for all curves with an order of 450 bits or smaller (basically, everything but
P-521). We generally don't care much about minor differences in the speed of
verifying signatures using curves other than P-256 and P-384. It is better to
always use the same algorithm.

This also allows |bn_mod_inverse_general|, |bn_mod_inverse_no_branch|, and
|BN_mod_inverse| to be dropped from programs that can somehow avoid linking in
the RSA key generation and RSA CRT recovery code.

Change-Id: I79b94bff23d2b07d5e0c704f7d44538797f8c7a0
Reviewed-on: https://boringssl-review.googlesource.com/9103
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
2016-08-05 22:09:35 +00:00
..
aes Import (unreachable) bsaes-armv7.pl XTS fixes. 2016-07-26 19:47:12 +00:00
asn1 Remove spurious ';' and fix indentation for macro arguments in one file 2016-08-03 21:41:01 +00:00
base64 Resolve a small handful of size_t truncation warnings. 2016-08-05 19:12:31 +00:00
bio Inline bio_set. 2016-07-25 18:44:46 +00:00
bn Use BN_mod_inverse_odd instead of |BN_mod_inverse| for ECC. 2016-08-05 22:09:35 +00:00
buf Add BUF_MEM_reserve. 2016-05-18 19:09:06 +00:00
bytestring Resolve a small handful of size_t truncation warnings. 2016-08-05 19:12:31 +00:00
chacha Switch perlasm calling convention. 2016-06-27 21:59:26 +00:00
cipher Resolve a small handful of size_t truncation warnings. 2016-08-05 19:12:31 +00:00
cmac Revert "Move C++ helpers into |bssl| namespace." 2016-07-12 08:09:33 -07:00
conf
curve25519 Revert "Move C++ helpers into |bssl| namespace." 2016-07-12 08:09:33 -07:00
des
dh Add BN_rand_range_ex and use internally. 2016-07-29 16:09:26 +00:00
digest Promise more accurate bounds than EVP_MD_MAX_SIZE. 2016-08-01 23:24:04 +00:00
dsa Add BN_rand_range_ex and use internally. 2016-07-29 16:09:26 +00:00
ec Use BN_mod_inverse_odd instead of |BN_mod_inverse| for ECC. 2016-08-05 22:09:35 +00:00
ecdh Resolve a small handful of size_t truncation warnings. 2016-08-05 19:12:31 +00:00
ecdsa Use BN_mod_inverse_odd instead of |BN_mod_inverse| for ECC. 2016-08-05 22:09:35 +00:00
engine
err Add TLS 1.3 1-RTT. 2016-07-18 09:54:46 +00:00
evp Change |EVP_PKEY_up_ref| to return int. 2016-07-12 17:55:41 +00:00
hkdf Const-correct HKDF_expand. 2016-07-16 07:55:19 +00:00
hmac Update comments for HMAC to give a more accurate bound than EVP_MD_MAX_SIZE 2016-08-02 18:20:42 +00:00
lhash Use non-deprecated methods on windows. 2016-05-19 20:30:50 +00:00
md4 Revert md_len removal from SHA256_CTX and SHA512_CTX. 2016-04-27 19:01:23 +00:00
md5 Switch perlasm calling convention. 2016-06-27 21:59:26 +00:00
modes Switch perlasm calling convention. 2016-06-27 21:59:26 +00:00
newhope Revert "Move C++ helpers into |bssl| namespace." 2016-07-12 08:09:33 -07:00
obj Resolve a small handful of size_t truncation warnings. 2016-08-05 19:12:31 +00:00
pem Reject inappropriate private key encryption ciphers. 2016-05-03 16:30:08 +00:00
perlasm Sync x86 perlasm drivers with upstream master. 2016-06-27 22:00:51 +00:00
pkcs8 Revert "Move C++ helpers into |bssl| namespace." 2016-07-12 08:09:33 -07:00
poly1305 Resolve a small handful of size_t truncation warnings. 2016-08-05 19:12:31 +00:00
rand Resolve a small handful of size_t truncation warnings. 2016-08-05 19:12:31 +00:00
rc4 Switch perlasm calling convention. 2016-06-27 21:59:26 +00:00
rsa Tidy up PKCS1_MGF1. 2016-08-05 18:59:22 +00:00
sha Fix the comments for |SHA[256|384|512]_Transform|. 2016-07-28 21:49:48 +00:00
stack Fix stack macro const-ness. 2016-05-13 18:24:57 +00:00
test Revert "Move C++ helpers into |bssl| namespace." 2016-07-12 08:09:33 -07:00
x509 Use newest CRL. 2016-08-02 17:45:15 +00:00
x509v3 Fix an error path leak in do_ext_nconf() 2016-07-26 19:11:01 +00:00
CMakeLists.txt Switch perlasm calling convention. 2016-06-27 21:59:26 +00:00
constant_time_test.c
cpu-aarch64-linux.c Rewrite ARM feature detection. 2016-03-26 04:54:44 +00:00
cpu-arm-linux.c Make CRYPTO_is_NEON_capable aware of the buggy CPU. 2016-04-28 16:42:21 +00:00
cpu-arm.c Rewrite ARM feature detection. 2016-03-26 04:54:44 +00:00
cpu-intel.c Wrap MSVC-only warning pragmas in a macro. 2016-06-09 21:29:36 +00:00
crypto.c Add no-op function ENGINE_register_all_complete. 2016-07-12 17:54:41 +00:00
ex_data.c Split unlock functions into read/write variants. 2016-05-31 21:09:29 +00:00
internal.h Remove compatibility 'inline' define. 2016-06-27 22:16:03 +00:00
mem.c Breaking news: 1998 has come and gone. 2016-07-11 23:51:47 +00:00
refcount_c11.c
refcount_lock.c Split unlock functions into read/write variants. 2016-05-31 21:09:29 +00:00
refcount_test.c
thread_none.c Split unlock functions into read/write variants. 2016-05-31 21:09:29 +00:00
thread_pthread.c Split unlock functions into read/write variants. 2016-05-31 21:09:29 +00:00
thread_test.c Wrap MSVC-only warning pragmas in a macro. 2016-06-09 21:29:36 +00:00
thread_win.c Wrap MSVC-only warning pragmas in a macro. 2016-06-09 21:29:36 +00:00
thread.c Remove a bunch of unnecessary includes. 2016-06-28 20:31:14 +00:00
time_support.c