9

From what I understood are these the coordinates of basepoint G of Secp256K1 on the Elliptic Curve, in hexadecimal and decimal format.

Hexadecimal

Gx = (79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DCE28D9 59F2815B 16F81798)

Gy = (483ADA77 26A3C465 5DA4FBFC 0E1108A8 FD17B448 A6855419 9C47D08F FB10D4B8)

Decimal

Gx = (55066263022277343669578718895168534326250603453777594175500187360389116729240)

Gy = (32670510020758816978083085130507043184471273380659243275938904335757337482424)

What I don't understand is that if I enter these values in the corresponding equation (y² = x³ + 7) as below, it seems that point G isn't on the curve at all. But it should, right? So what do I wrong?


(32670510020758816978083085130507043184471273380659243275938904335757337482424)²

is not equal to

(55066263022277343669578718895168534326250603453777594175500187360389116729240)³ + 7

2 Answers 2

11

The secp256k1 curve is defined over x and y coordinates that are members of the finite field GF(2^256 - 2^32 - 977), or in other words, their operations hold only when considered modulo 115792089237316195423570985008687907853269984665640564039457584007908834671663.

55066263022277343669578718895168534326250603453777594175500187360389116729240^3 - (32670510020758816978083085130507043184471273380659243275938904335757337482424^2 + 7) is exactly 1442042049659660869506300006036683750029629333882594701370927246876626245108435922902327776681700708714008192087431130951749952236093997894375239788520937 times 115792089237316195423570985008687907853269984665640564039457584007908834671663.

4
-1

Finite field mathematics and elliptic curves don't use the "normal operations". For example adding two finite field elements a and b isn't as simple as a + b. its actually (a+b)%Prime where prime is the size of the finite field, this ensures the CLOSED property is meant. which says that if a is in the set and b is in the set than a + b is also in the set. Same goes with multiplication which is what we have here. ab=(ab)%Prime

so for gx and gy you can use this (gy^2) % (2^256 - 2^32 - 977) = ((gx^3) + 7) % (2^256 - 2^32 - 977). These are in fact are equal.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.