Indeed, true what you said, if we use modular inverse multiplication instead of normal division it doesn't work (I mean, it works for all points, hence it doesn't detect it = isn't useful):
code example:
N = 0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141
N2 = 78074008874160198520644763525212887401909906723592317393988542598630163514318
Z = 55539364884045311247562660492089512137756313339020479813129993372185873536791
def modInv(a, m):
return pow(a, -1, m)
P1 = 123456*123
R1 = (P1*N2 % N)
D = P1 * modInv(123456, N)
R2 = (R1-(Z*D) % N)
if R2 == 0:
print("Divisible by 123456!")
else:
print("Not divisible by 123456!")
I dont understand what is Z and N2
but, if you looking for how to use this on point, see, you czn calc what is a point = 0, or 2 for ex, and then replace numbers in you code to points coordinates, to points coordinates, identify good result easy.So, if you know how to take this point (R2/ you can crack 2**130 in 65 times divides by 2.
if R2 == 0
edit, your code not work:
Divisible by 123456!: 1 2 9999999 etc