diff options
author | Billy Brumley <bbrumley@gmail.com> | 2020-05-17 16:09:00 +0300 |
---|---|---|
committer | Dmitry Belyavskiy <beldmit@gmail.com> | 2020-05-19 16:29:37 +0300 |
commit | 6b4eb933623ed1d1997732b7e6e081b788cfdd22 (patch) | |
tree | c1cc582ed4a9a69ff050673c4ef5b5c302fe31d9 /doc | |
parent | 5a5530a29abcf5d7ab7194d73b3807d568b06cbd (diff) |
deprecate EC precomputation functionality
Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
(Merged from https://github.com/openssl/openssl/pull/11851)
Diffstat (limited to 'doc')
-rw-r--r-- | doc/man3/EC_KEY_new.pod | 12 | ||||
-rw-r--r-- | doc/man3/EC_POINT_add.pod | 14 |
2 files changed, 19 insertions, 7 deletions
diff --git a/doc/man3/EC_KEY_new.pod b/doc/man3/EC_KEY_new.pod index ff4373ea35..e18a3023de 100644 --- a/doc/man3/EC_KEY_new.pod +++ b/doc/man3/EC_KEY_new.pod @@ -40,7 +40,6 @@ EC_KEY objects point_conversion_form_t EC_KEY_get_conv_form(const EC_KEY *key); void EC_KEY_set_conv_form(EC_KEY *eckey, point_conversion_form_t cform); void EC_KEY_set_asn1_flag(EC_KEY *eckey, int asn1_flag); - int EC_KEY_precompute_mult(EC_KEY *key, BN_CTX *ctx); int EC_KEY_generate_key(EC_KEY *key); int EC_KEY_check_key(const EC_KEY *key); int EC_KEY_set_public_key_affine_coordinates(EC_KEY *key, BIGNUM *x, BIGNUM *y); @@ -56,6 +55,10 @@ EC_KEY objects size_t EC_KEY_priv2buf(const EC_KEY *eckey, unsigned char **pbuf); +Deprecated since OpenSSL 3.0: + + int EC_KEY_precompute_mult(EC_KEY *key, BN_CTX *ctx); + =head1 DESCRIPTION An EC_KEY represents a public key and, optionally, the associated private @@ -136,8 +139,11 @@ EC_KEY_set_asn1_flag() sets the asn1_flag on the underlying EC_GROUP object (if set). Refer to L<EC_GROUP_copy(3)> for further information on the asn1_flag. +Although deprecated in OpenSSL 3.0 and should no longer be used, EC_KEY_precompute_mult() stores multiples of the underlying EC_GROUP generator for faster point multiplication. See also L<EC_POINT_add(3)>. +Modern versions should instead switch to named curves which OpenSSL has +hardcoded lookup tables for. EC_KEY_oct2key() and EC_KEY_key2buf() are identical to the functions EC_POINT_oct2point() and EC_KEY_point2buf() except they use the public key @@ -195,6 +201,10 @@ L<EC_GFp_simple_method(3)>, L<d2i_ECPKParameters(3)>, L<OPENSSL_CTX(3)> +=head1 HISTORY + +EC_KEY_precompute_mult() was deprecated in OpenSSL 3.0. + =head1 COPYRIGHT Copyright 2013-2017 The OpenSSL Project Authors. All Rights Reserved. diff --git a/doc/man3/EC_POINT_add.pod b/doc/man3/EC_POINT_add.pod index 3ac567f815..2423671bab 100644 --- a/doc/man3/EC_POINT_add.pod +++ b/doc/man3/EC_POINT_add.pod @@ -20,13 +20,13 @@ EC_POINT_add, EC_POINT_dbl, EC_POINT_invert, EC_POINT_is_at_infinity, EC_POINT_i EC_POINT *points[], BN_CTX *ctx); int EC_POINT_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *n, const EC_POINT *q, const BIGNUM *m, BN_CTX *ctx); - int EC_GROUP_precompute_mult(EC_GROUP *group, BN_CTX *ctx); - int EC_GROUP_have_precompute_mult(const EC_GROUP *group); - Deprecated since OpenSSL 3.0: +Deprecated since OpenSSL 3.0: int EC_POINTs_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *n, size_t num, const EC_POINT *p[], const BIGNUM *m[], BN_CTX *ctx); + int EC_GROUP_precompute_mult(EC_GROUP *group, BN_CTX *ctx); + int EC_GROUP_have_precompute_mult(const EC_GROUP *group); =head1 DESCRIPTION @@ -56,8 +56,9 @@ Modern versions should instead use EC_POINT_mul(), combined (if needed) with EC_ The function EC_GROUP_precompute_mult stores multiples of the generator for faster point multiplication, whilst EC_GROUP_have_precompute_mult tests whether precomputation has already been done. See L<EC_GROUP_copy(3)> for information -about the generator. - +about the generator. Precomputation functionality was deprecated in OpenSSL 3.0. +Users of EC_GROUP_precompute_mult() and EC_GROUP_have_precompute_mult() should +switch to named curves which OpenSSL has hardcoded lookup tables for. =head1 RETURN VALUES @@ -80,7 +81,8 @@ L<EC_GFp_simple_method(3)>, L<d2i_ECPKParameters(3)> =head1 HISTORY -EC_POINTs_mul() was deprecated in OpenSSL 3.0. +EC_POINTs_mul(), EC_GROUP_precompute_mult(), and EC_GROUP_have_precompute_mult() +were deprecated in OpenSSL 3.0. =head1 COPYRIGHT |