EC_POINT_get_affine_coordinates replacement in 3.0

William Roberts bill.c.roberts at gmail.com
Tue May 3 19:10:43 UTC 2022


On Tue, May 3, 2022 at 1:14 PM Chris Bare <chris.bare at gmail.com> wrote:
>
> I'm converting some openssl 1.0 code to 3.0 and I don't know how to get the coordinates
> in a 3.0 way.
> The old code is:
> BN_CTX *ctx = BN_CTX_new ();
> BIGNUM *X = NULL, *Y = NULL;
> const EC_POINT *pubkey;
> const EC_GROUP *group;
> BN_CTX_start (ctx);
> X = BN_CTX_get (ctx);
> Y = BN_CTX_get (ctx);
> pubkey = EC_KEY_get0_public_key ((EC_KEY *) EVP_PKEY_get0 (pkey));
> group = EC_KEY_get0_group ((EC_KEY *) EVP_PKEY_get0 (cvr->sm_pkey));
> EC_POINT_get_affine_coordinates_GFp (group, pubkey, X, Y, ctx)
>
> What would be the 3.0 way to get X and Y without using deprecated functions?

For EC_POINT_get_affine_coordinates_GFp it goes to
EC_POINT_get_affine_coordinates, see:
  - https://www.openssl.org/docs/man3.0/man3/EC_POINT_get_affine_coordinates.html

Offhand I don't see any other deprecated functions, was that the only one?

Thanks,
Bill


More information about the openssl-users mailing list