Compute EC_KEY starting from X or Y coordinate only

Nicola Tuveri nic.tuv at gmail.com
Fri Oct 18 08:46:16 UTC 2019


Hi,

with traditional EC from the x coordinate alone you can't really do that,
because there are always 2 possible solutions for y (in R the curve is
symmetrical on the x axis).

The standards define a "compressed point" format in which you can send the
coordinate x and an additional bit to select which of the 2 y solutions to
pick.

You can read more about it in EC_GROUP_set_point_conversion_form at
https://www.openssl.org/docs/man1.1.1/man3/EC_GROUP_copy.html

and in EC_POINT_set_compressed_coordinates at
https://www.openssl.org/docs/man1.1.1/man3/EC_POINT_new.html

Hope this helps,

Nicola Tuveri


On Fri, Oct 18, 2019, 11:31 Luca Di Mauro <luca.dimauro at cnit.it> wrote:

>
> Hello all,
>
> I don't know if it is the correct mailing list to ask this, so I'm
> sorry if it is the wrong palce.
>
> I'm using openssl v1.1, and I'm trying to compute both the X and Y
> coordinates of an elliptic curve point starting from a single
> coordinate (X or Y).
>
> How can i perform that in C/C++ language using libssl? I searched on
> google for a couple of days but i haven't found a solution.
>
> Luca Di Mauro
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mta.openssl.org/pipermail/openssl-users/attachments/20191018/acf69a5e/attachment.html>


More information about the openssl-users mailing list