6ef1b64558
ecp_nistz256_point_add_affine does not support the doubling case and, unlike ecp_nistz256_point_add which does a tail call, computes the wrong answer. Note TestPointAdd in the unit tests skips this case. This works fine because we only use ecp_nistz256_point_add_affine for the g_scalar term, which is fully computed before the p_scalar term. (Additionally it requires that the windowing pattern never hit the doubling case for single multiplication.) But this is not obvious from reading the multiplication functions, so leave a comment at the call site to point this out. Change-Id: I08882466d98030cdc882a5be9e702ee404e80cce Reviewed-on: https://boringssl-review.googlesource.com/c/33945 Reviewed-by: Adam Langley <agl@google.com> Commit-Queue: Adam Langley <agl@google.com> |
||
---|---|---|
.. | ||
asm | ||
ec_key.c | ||
ec_montgomery.c | ||
ec_scalar_base_mult_tests.txt | ||
ec_test.cc | ||
ec.c | ||
felem.c | ||
internal.h | ||
make_ec_scalar_base_mult_tests.go | ||
make_p256-x86_64-table.go | ||
make_p256-x86_64-tests.go | ||
oct.c | ||
p224-64.c | ||
p256-x86_64_test.cc | ||
p256-x86_64_tests.txt | ||
p256-x86_64-table.h | ||
p256-x86_64.c | ||
p256-x86_64.h | ||
scalar.c | ||
simple_mul.c | ||
simple.c | ||
util.c | ||
wnaf.c |