boringssl/crypto
Brian Smith 448fa42779 Deprecate |BN_mod_exp2_mont| and simplify its implementation.
This function is only really useful for DSA signature verification,
which is something that isn't performance-sensitive. Replace its
optimized implementation with a naïve implementation that's much
simpler.

Note that it would be simpler to use |BN_mod_mul| in the new
implementation; |BN_mod_mul_montgomery| is used instead only to be
consistent with other work being done to replace uses of non-Montgomery
modular reduction with Montgomery modular reduction.

Change-Id: If587d463b73dd997acfc5b7ada955398c99cc342
Reviewed-on: https://boringssl-review.googlesource.com/7732
Reviewed-by: David Benjamin <davidben@google.com>
2016-05-13 19:10:18 +00:00
..
aes Switch all 'num' parameters in crypto/modes to unsigned. 2016-04-19 17:56:25 +00:00
asn1 Fix ASN1_INTEGER handling. 2016-05-03 16:58:51 +00:00
base64 Avoid theoretical overflows in EVP_EncodeUpdate. 2016-05-03 16:45:42 +00:00
bio Only use recv/send for socket BIOs on Windows. 2016-04-15 20:31:05 +00:00
bn Deprecate |BN_mod_exp2_mont| and simplify its implementation. 2016-05-13 19:10:18 +00:00
buf Make |BUF_memdup| look for zero length, not NULL. 2015-10-06 18:11:33 -07:00
bytestring Merge documentation from chromium's net/der into cbs.c 2016-04-28 19:39:40 +00:00
chacha chacha/asm/chacha-armv8.pl: fix intermittent build failures. 2016-04-14 20:50:36 +00:00
cipher Add a comment with an SMT verification of the Barrett reductions. 2016-05-04 17:51:10 +00:00
cmac Fix some malloc test failures. 2016-03-28 17:17:32 +00:00
conf Add missing internal includes. 2016-03-20 16:38:54 +00:00
curve25519 Appease sanitizers in x25519_ge_scalarmult. 2016-03-10 19:08:42 +00:00
des Use the straight-forward ROTATE macro. 2015-12-16 19:57:31 +00:00
dh Call |BN_mod_exp_mont_consttime| in crypto/dh. 2016-05-11 22:34:19 +00:00
digest Revert md_len removal from SHA256_CTX and SHA512_CTX. 2016-04-27 19:01:23 +00:00
dsa Make return value of |BN_MONT_CTX_set_locked| int. 2016-04-18 23:19:08 +00:00
ec Use different bit tricks to extend the LSB. 2016-04-25 23:05:20 +00:00
ecdh Clean up |ECDH_compute_key|. 2015-10-27 17:00:25 +00:00
ecdsa Drop support for engines-provided signature verification. 2016-04-18 20:40:17 +00:00
engine Unwind DH_METHOD and DSA_METHOD. 2015-11-03 22:54:36 +00:00
err Reimplement PKCS #3 DH parameter parsing with crypto/bytestring. 2016-05-09 19:36:41 +00:00
evp Fix memory leak on invalid ecPublicKey parameters. 2016-04-15 19:43:26 +00:00
hkdf Start assuming MSVC 2015. 2016-05-02 19:46:25 +00:00
hmac Reimplement PKCS#12 key derivation. 2016-04-19 18:16:38 +00:00
lhash Add a run_tests target to run all tests. 2015-10-26 20:33:44 +00:00
md4 Revert md_len removal from SHA256_CTX and SHA512_CTX. 2016-04-27 19:01:23 +00:00
md5 Revert md_len removal from SHA256_CTX and SHA512_CTX. 2016-04-27 19:01:23 +00:00
modes Start assuming MSVC 2015. 2016-05-02 19:46:25 +00:00
newhope newhope: use less stack to compute client key 2016-04-27 19:25:25 +00:00
obj Fix build. 2016-04-26 15:53:09 +00:00
pem Reject inappropriate private key encryption ciphers. 2016-05-03 16:30:08 +00:00
perlasm perlasm/x86_64-xlate.pl: handle binary constants early. 2016-03-17 18:23:40 +00:00
pkcs8 Add standalone PKCS#8 and SPKI fuzzers. 2016-04-25 21:57:28 +00:00
poly1305 Use UINT64_C instead of unsigned long long integer constant. 2016-04-11 16:08:14 +00:00
rand Add a deterministic PRNG for fuzzing. 2016-03-03 01:36:19 +00:00
rc4 Remove RC4_options from rc4-586.pl. 2016-04-22 21:14:11 +00:00
rsa Do RSA blinding unless |e| is NULL and specifically requested not to. 2016-05-04 23:14:08 +00:00
sha Revert md_len removal from SHA256_CTX and SHA512_CTX. 2016-04-27 19:01:23 +00:00
stack Fix stack macro const-ness. 2016-05-13 18:24:57 +00:00
test Start assuming MSVC 2015. 2016-05-02 19:46:25 +00:00
x509 Make i2d_X509_AUX work if *pp = NULL. 2016-05-13 13:53:48 +00:00
x509v3 Check for malloc failure in r2i_certpol. 2016-04-29 16:22:05 +00:00
CMakeLists.txt Banish SSL_add_dir_cert_subjects_to_stack and OPENSSL_DIR_CTX to decrepit. 2016-04-27 18:40:25 +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 Add missing internal includes. 2016-03-20 16:38:54 +00:00
crypto.c Add |CRYPTO_is_confidential_build|. 2016-05-03 16:24:50 +00:00
ex_data.c Skip free callbacks on empty CRYPTO_EX_DATAs. 2015-12-15 21:32:14 +00:00
internal.h Another OPENSSL_NO_THREADS build fix. 2016-04-28 17:32:42 +00:00
mem.c Fix some indentation. 2016-01-28 00:51:45 +00:00
refcount_c11.c
refcount_lock.c
refcount_test.c
thread_none.c
thread_pthread.c Remove call to |fprintf| in |CRYPTO_once|. 2016-03-03 18:01:43 +00:00
thread_test.c Use nanosleep instead of usleep. 2016-04-19 21:54:26 +00:00
thread_win.c Replace CRYPTO_once_t on Windows with INIT_ONCE. 2016-04-19 21:34:20 +00:00
thread.c
time_support.c Remove some mingw support cruft. 2016-01-25 23:05:45 +00:00