0

I'm now trying to use scalar multiplication to recover v, but I have questions with ECC scalar multiplication.

I'm wondering if the following equations are correct.

If scalar * P = Q, then scalar * (-P) = (-Q) ?

For example, assume that 5 * P = 5 * (Px,Py) = (Qx, Qy)

Is 5 * (-P) = 5 * (x,-y) = (Qx, -Qy) correct?

If there is anyone familiar with elliptic curve cryptography, please help me. Thanks!

0

I believe this question it's more about cryptography than about Ethereum.

The scalar multiplication operation for negative factors works like that:

scalar = k = 5

(−k)*P = (−P) + (−P) + ⋯ + (−P)
-5*P = (−P) + (−P) + (−P) + (−P) + (−P)

Using the Ethereum curve secp256k1: y^2 = x^3 + 7, that uses the Weierstrass form (Koblitz curve).

Modulo p prime:

p = 115792089237316195423570985008687907853269984665640564039457584007908834671663

Using one point of the curve, you can verify the above:

Point P = (Px, Py):
Px: 88557899412428680052041839616894562461261334161833606533830754247259944108251 
Py: 34702325852084136078619568153466699496255363507872892365540796564166359798327

Point -P = (Px, -Py):
Px: 88557899412428680052041839616894562461261334161833606533830754247259944108251
-Py: 81089763385232059344951416855221208357014621157767671673916787443742474873336

Point Q = (Qx, Qy) = 5 * (Px, Py):
Qx: 52731728111805074880654456353252121798595467574662768547858124403109672375563
Qy: 39386080389503298834537707240645959527120091168125799865817705270770834912647

Point -Q = (Qx, -Qy):
Qx: 52731728111805074880654456353252121798595467574662768547858124403109672375563
-Qy: 76406008847812896589033277768041948326149893497514764173639878737137999759016

Point 5*(-P) = (Qx, -Qy):
Qx: 52731728111805074880654456353252121798595467574662768547858124403109672375563
-Qy: 76406008847812896589033277768041948326149893497514764173639878737137999759016

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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