b8d677bfd0
I still need to revive the original CL, but right now I'm interested in giving every EC_GROUP an order_mont and having different ownership of that field between built-in and custom groups is kind of a nuisance. If I'm going to do that anyway, better to avoid computing the entire EC_GROUP in one go. I'm using some manual locking rather than CRYPTO_once here so that it behaves well in the face of malloc errors. Not that we especially care, but it was easy to do. This speeds up our ECDH benchmark a bit which otherwise must construct the EC_GROUP each time (matching real world usage). Before: Did 7619 ECDH P-224 operations in 1003190us (7594.8 ops/sec) Did 7518 ECDH P-256 operations in 1060844us (7086.8 ops/sec) Did 572 ECDH P-384 operations in 1055878us (541.7 ops/sec) Did 264 ECDH P-521 operations in 1062375us (248.5 ops/sec) After: Did 8415 ECDH P-224 operations in 1066695us (7888.9 ops/sec) Did 7952 ECDH P-256 operations in 1022819us (7774.6 ops/sec) Did 572 ECDH P-384 operations in 1055817us (541.8 ops/sec) Did 264 ECDH P-521 operations in 1060008us (249.1 ops/sec) Bug: 20 Change-Id: I7446cd0a69a840551dcc2dfabadde8ee1e3ff3e2 Reviewed-on: https://boringssl-review.googlesource.com/23073 Reviewed-by: Adam Langley <agl@google.com> |
||
---|---|---|
.. | ||
ecdsa_sign_tests.txt | ||
ecdsa_test.cc | ||
ecdsa_verify_tests.txt | ||
ecdsa.c |