boringssl/tool
David Benjamin f11ea19043 Actually benchmark RSA verification with a fresh key.
https://boringssl-review.googlesource.com/10522 didn't actually do what
it was supposed to do. In fact, it appears, not paying attention to it,
we've managed to make RSA verify slower than ECDSA verify. Oops.

Did 32000 RSA 2048 verify (same key) operations in 1016746us (31473.0 ops/sec)
Did 5525 RSA 2048 verify (fresh key) operations in 1067209us (5177.1 ops/sec)
Did 8957 ECDSA P-256 verify operations in 1078570us (8304.5 ops/sec)

The difference is in setting up the BN_MONT_CTX, either computing R^2 or n0.
I'm guessing R^2. The current algorithm needs to be constant-time, but we can
split out a variable-time one if necessary.

Change-Id: Ie064a0e464aaa803815b56a6734bc9e2becef1a7
Reviewed-on: https://boringssl-review.googlesource.com/27244
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
2018-04-10 00:58:31 +00:00
..
args.cc Revert "Move C++ helpers into |bssl| namespace." 2016-07-12 08:09:33 -07:00
ciphers.cc Use getters in tools/ciphers.cc and add -openssl-name flag. 2017-08-18 00:10:31 +00:00
client.cc Implement TLS 1.3 draft28. 2018-04-05 03:36:11 +00:00
CMakeLists.txt Add a basic signing tool. 2017-04-05 23:32:13 +00:00
const.cc Unwind multiprime RSA support. 2017-04-12 23:14:57 +00:00
digest.cc Correctness fixes for NaCl and other platforms. 2016-11-09 19:06:10 +00:00
file.cc Add a basic signing tool. 2017-04-05 23:32:13 +00:00
generate_ed25519.cc Add early data input from file. 2017-11-30 17:29:45 +00:00
genrsa.cc Unwind RSA_generate_multi_prime_key. 2017-04-11 18:15:20 +00:00
internal.h Add early data input from file. 2017-11-30 17:29:45 +00:00
pkcs12.cc Work around language and compiler bug in memcpy, etc. 2016-12-21 20:34:47 +00:00
rand.cc Fix miscellaneous clang-tidy warnings. 2017-08-01 20:39:46 +00:00
server.cc Implement TLS 1.3 draft28. 2018-04-05 03:36:11 +00:00
sign.cc Align EVP_PKEY Ed25519 API with upstream. 2017-06-12 12:04:11 +00:00
speed.cc Actually benchmark RSA verification with a fresh key. 2018-04-10 00:58:31 +00:00
tool.cc First part of the FIPS module. 2017-04-07 00:05:34 +00:00
transport_common.cc Fix early data printout in bssl client. 2017-11-11 06:35:25 +00:00
transport_common.h Write connection info to a BIO instead of stderr. 2017-09-19 19:50:44 +00:00