I am using GEC Module (https://github.com/HareInWeed/gec) to perform point operations on secp256k1. Here, the generator point is defined as below
// define the generator, in montgomery form
const Secp256k1 GEN(
Field(0x9981e643e9089f48979f48c033fd129c231e295329bc66dbd7362e5a487e2097_int),
Field(0xcf3f851fd4a582d670b6b59aac19c1368dfc5d5d1f1dc64db15ea6d2d3dbabe2_int),
Field(0x1000003d1_int)
);
I was previously using Weierstrass form(x,y). The Generator point here is
gen_x = 55066263022277343669578718895168534326250603453777594175500187360389116729240;
gen_y = 32670510020758816978083085130507043184471273380659243275938904335757337482424;
I need the point to be in Weierstrass form. How do I convert from Montgomery form?
In Weierstrass form, p1.y + p2.y = Constant P (= 115792089237316195423570985008687907853269984665640564039457584007908834671663) and p1.x = p2.x When p2 = -p1. Is there any such feature in Montgomery Form?