Make extended ECDSA signing routines internal
authortb <tb@openbsd.org>
Fri, 28 Jul 2023 08:49:43 +0000 (08:49 +0000)
committertb <tb@openbsd.org>
Fri, 28 Jul 2023 08:49:43 +0000 (08:49 +0000)
commit5fa15055726419130e2329fbb7f105cf83e6b274
treec299ac87166562c12595094d380f48264850f9ee
parenta699afcae2000f690cec89a958b9e8fc6350ddce
Make extended ECDSA signing routines internal

ECDSA_sign_setup() permits precomputing the values of the inverse of the
random k and the corresponding r. These can then be fed into the signing
routines ECDSA_{do_,}sign_ex() multiple times if needed. This is not a
great idea and the interface adds a lot of unwanted complexity.

Not to mention that nothing ever used this correctly - if s works out to
0, a special error code is thrown requesting that the caller provide new
kinv and r values. Unsurprisingly, nobody ever checked for that special
error code.

ok jsing

This commit marks the start of a libcrypto major bump. Do not build the
tree until I bumped the shlib_version and synced file sets (in about 35
commits).
lib/libcrypto/Symbols.list
lib/libcrypto/Symbols.namespace
lib/libcrypto/ecdsa/ecdsa.c
lib/libcrypto/ecdsa/ecdsa.h
lib/libcrypto/hidden/openssl/ecdsa.h